文章总结: 本文介绍了手工SQL注入的系统性方法,包括’破拆修复’五步工作流程、处理语法陷阱、数据库指纹识别、UNION攻击和盲注技术。文章强调科学方法而非胡乱猜测,提供了具体有效载荷和二分查找技巧,帮助安全人员高效发现和利用SQL注入漏洞,同时指出SQLmap适用于漏洞发现后的数据导出。 综合评分: 88 文章分类: WEB安全,渗透测试,漏洞分析,漏洞POC,实战经验
手工SQL注入方法
原创
破天KK
KK安全说
2025年12月19日 12:26 北京
在 NahamCon 的一场精彩演讲中,安全专家Tib3rius详细讲解了如何手动查找 SQL 注入 (SQLi)。
以下是简化到最基本要素的完整方法论。
第一部分:“破拆修复”法
别再胡乱猜测有效载荷了。运用科学方法。目标并非立即入侵数据库,而是要看看数据库是否在监听你的操作。
逻辑:
如果你能故意破坏页面,然后再故意修复它,你就拥有了完全的控制权。
五步工作流程:
- 寻找入口点:查找带有 ID 的 URL(
id=1)、搜索栏或登录表单。 - 建立基线:
- 请输入有效的ID(
id=1)。页面是否加载?是。 - 输入一个虚假ID(
id=9999)。是否显示404错误?是的。
3. “分隔符”:'在有效 ID 后添加单引号 ( )。
-
输入:
id=1' -
结果:你收到的是 500 错误还是空白页?很好。你的语法有误。
4. “修复”:添加注释字符来“修复”您刚刚添加的引用。
-
输入:
id=1' -- - -
结果:页面是否恢复正常?
5. 确认:如果页面在步骤 3 中崩溃,但在步骤 4 中正常运行,则说明您发现了一个漏洞。
第二部分:语法陷阱(以及如何修复它们)
1. 尾随空间陷阱
您可以使用它--来注释掉查询的其余部分。
- 问题:许多数据库要求破折号后必须有一个空格。如果 Web 服务器会去除空格,你的攻击就会失败。
- 解决方法:使用
-- -. - 末尾多出的那个破折号会强制数据库识别中间的空格。
2. 评论失败时
有时,注释掉代码会导致网站崩溃(例如,如果查询需要一个结束页脚)。
-
解决方法:不要删除代码,只需使其在数学上成立即可。
-
有效载荷:
' AND '1'='1 -
这样既能保持结构完整,又能让你注入命令。
第三部分:指纹识别(这是什么数据库?)
不要猜测。直接问数据库它使用的是什么语言。
请逐一尝试这些有效载荷。第一个返回200 OK(正常页面)的有效载荷会告诉你它采用的技术。
第四部分:窃取数据(漏洞利用)
现在到了有趣的部分:导出数据。
1. UNION攻击
你想把你的数据和网站的数据合并起来。
- 问题:网站只显示第一个结果(真正的文章)。
- 解决方法:将第一个结果设为“False”。
- 方法:更改
id=1为id=-1。 - 结果:网站找不到 ID 为 -1 的数据,因此显示您的数据。
2. 查找列数
除非你知道表中有多少列,否则不能使用 UNION 函数。
-
不要这样做:
ORDER BY 1,,……(太慢了)ORDER BY 2。ORDER BY 3 -
执行以下操作(二分查找):
-
尝试
ORDER BY 10。出错? -
试试看
ORDER BY 5。有效吗? -
那么答案就在 5 到 10 之间。
-
极限是以秒为单位的,而不是以分钟为单位的。
3. 登录绕过
试图绕过登录页面?
-
经典有效载荷:
' OR 1=1 -- -
风险:这可能会返回数据库中的所有用户,导致应用程序混乱。
-
解决方案:
' OR 1=1 LIMIT 1 -- -
这样就强制数据库只以第一个用户(通常是管理员)的身份登录。
第五部分:盲注(数据库静默时)
有时数据库不会显示文本,只会显示“是”(页面加载成功)或“否”(出错)。
不要逐字逐句地猜测密码。
- 第一个字母是“a”吗?不是。
- 是“b”吗?不是。
- (26 次请求后……)
使用数学方法(二分查找)。
将密码字符转换为数字(ASCII)。
-
该值是否大于 100?
是的。(您刚刚排除了 100 个选项)。
-
它大于110吗?
不。
-
好的,介于 100 和 110 之间。
使用这种方法,大约需要7 次请求才能猜出任何字符。
要点总结
SQLmap非常适合在找到漏洞后导出数据。但是,如何才能首先找到这个漏洞呢?
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:KK安全说 破天KK《手工SQL注入方法》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论