前言
认识好多大佬都在空闲挖src,因为项目比较多,我就是自动化渗透工具直接跑一下,没有就不搞了,但是基本是没漏洞产出的,奈何最近两手空空,只能手工挖掘补贴家用。
正文
在我测试一个目标浏览HTML代码时,发现有两个隐藏参数
所以我开始通过添加单引号来测试隐藏的参数
发现响应代码 200 OK,这意味着他们做了一些错误处理,但响应是 Query failed 它看起来像一个数据库在后端处理了我们的查询。
所以我们尝试查看他有多少列,
使用 ?letter=a' ORDER BY 2 — V 返回结果"Query failed:"
使用 ?letter=a' ORDER BY 1 — V 成功执行并且没有返回"Query failed:", 从Content-Length返回内容长度来看,应该是存在sql盲注的。
尝试查询一下版本 ?letter=a' UNION SELECT VERSION() - - 查询已执行,但未获得响应的版本
本着时间就是金钱的原则,我们直接上sqlmap。
可以看到存在时间和布尔注入,我们把另一个隐藏参数也跑一下
扩展
通常,开发人员在整个应用程序中都会犯同样的错误,我们可以在所有参数和端点上自动进行相同的攻击,这时候可以使用gau和uro对网站进行爬取和去重。
gau target.com |uro > success.txt
获取有参数的端点
cat success.txt|grep ‘?’ > success1.txt
将参数值替换为单引号 '
cat success1.txt|qsreplace ’ >sqli-test.txt
匹配返回"Query failed:"的响应
httpx -l sqli-test.txt -ms “Query failed:”
发现“lookup”参数响应存在漏洞,我们使用sqlmap跑一下
gau和uro都可以在github上下载。
原文始发于微信公众号(听风安全):你可能错过的高危漏洞【SQL注入篇】
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论