SQLMAP
SQLMAP是什么
SQLMAP是一个开源的自动化SQL注入工具,主要功能是扫描、发现并且利用给定的URL的SQL注入漏洞。
SQLMAP可以对URL做什么?
- 判断可以注入的参数
- 判断可以使用哪一种SQL注入技术进行注入
- 判断识别数据库的类型
- 根据用户的选择,从数据库中读取数据
SQLMAP支持的注入技术
- 基于布尔的盲注:根据返回页面判断条件真假注入
- 基于时间的盲注:不能根据页面返回内容判断任何信息,使用条件查询语句查看时间延迟语句是否执行来判断
- 基于报错的注入:页面会返回错误信息,或者把注入的语句的结果直接返回在页面中
- 基于联合查询的注入:使用union进行注入
- 堆查询注入:同时执行多条语句的注入
SQLMAP检测注入漏洞流程:
- 网站连通性检测:检测目标的连接状态。
- WAF探测:检测网站是否受WAF保护。
- 网页稳定性检测:检测网页是否稳定。
- 参数动态性检测:检测参数是否有动态性。
- 启发式注入检测:探测该参数点是否是动态的、是否为可能的注入点。
SQLMAP的误报检测机制
误报检测: SQLMAP的布尔盲注、时间盲注方式判断注入点时,存在误报的可能。为防止误报,SQLMap引入了误报检测机制。
两个基础检测算法:
- 页面相似