使用sqlmap执行SQL注入并获取数据库用户名
Sqlmap介绍
sqlmap支持MySQL, Oracle,PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird,Sybase和SAP MaxDB等数据库的各种安全漏洞检测。
sqlmap支持五种不同的注入模式:
-
基于布尔的盲注,即可以根据返回页面判断条件真假的注入;
-
基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断;
-
基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中;
-
联合查询注入,可以使用union的情况下的注入;
-
堆查询注入,可以同时执行多条语句的执行时的注入。
sql注入探测
1.启动后端服务(含SQL注入漏洞)
2.拿到burpsuit请求文本
保存为:sqlinject.txt
,放到sqlmap根目录。
3.执行sqlmap注入命令
python sqlmap.py -r sqlinject.txt -f --level=3 --current-db --current-user
修复后再次探测
添加了SQL注入检查后,再次执行注入命令,发现监测到服务端报错了,无法拿到数据库信息了,完美!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了