使用sqlmap执行SQL注入并获取数据库用户名

Sqlmap介绍

sqlmap支持MySQL, Oracle,PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird,Sybase和SAP MaxDB等数据库的各种安全漏洞检测。

sqlmap支持五种不同的注入模式:

  1. 基于布尔的盲注,即可以根据返回页面判断条件真假的注入;

  2. 基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断;

  3. 基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中;

  4. 联合查询注入,可以使用union的情况下的注入;

  5. 堆查询注入,可以同时执行多条语句的执行时的注入。

sql注入探测

1.启动后端服务(含SQL注入漏洞)

2.拿到burpsuit请求文本

保存为:sqlinject.txt,放到sqlmap根目录。
在这里插入图片描述
在这里插入图片描述

3.执行sqlmap注入命令

python sqlmap.py -r sqlinject.txt -f --level=3 --current-db --current-user

在这里插入图片描述
在这里插入图片描述

修复后再次探测

添加了SQL注入检查后,再次执行注入命令,发现监测到服务端报错了,无法拿到数据库信息了,完美!
在这里插入图片描述

posted @ 2023-03-18 15:56  一锤子技术员  阅读(70)  评论(0编辑  收藏  举报  来源