1. 探测等级的设置
sqlmap提供五个探测等级,默认为1级。每个等级都会增加不同的测试内容,具体如下:
Level 1:这是默认的探测等级,主要测试GET和POST的数据传输方式,适用于基本的SQL注入场景。
Level 2:在Level 1的基础上,增加了对HTTP Cookie的测试。这意味着sqlmap会尝试通过Cookie注入来探测目标系统是否存在漏洞。
Level 3:进一步增加了对HTTP User-Agent和Referer头部的测试。此时,sqlmap会尝试伪造这些HTTP头部信息来进行注入测试。
Level 4:在此基础上,sqlmap会使用更复杂的payload,并尝试更多的注入点。这包括一些高级的注入技术,如联合查询注入和堆叠查询注入。
Level 5:这是最高探测等级,包含所有可能的payload,同时自动破解Cookie、XFF等头部注入。此等级的探测速度较慢,但能覆盖最全面的注入场景。
2. 如何层层递进进行探测
在实际使用中,为了确保全面性和准确性,建议按照以下步骤逐步提升探测等级:
基础探测(Level 1):
首先使用默认的Level 1进行基础探测,确认目标是否存在简单的SQL注入点。这一步通常用于快速判断目标是否易受攻击。
扩展探测(Level 2):
如果Level 1没有发现注入点,可以提升到Level 2,增加对Cookie的测试。这一步可以帮助发现一些通过Cookie传递参数的注入点。
深入探测(Level 3):
当Level 2仍然没有成功时,可以进一步提升到Level 3,加入对User-Agent和Referer头部的测试。这一步可以发现更多复杂的注入点。
高级探测(Level 4 和 Level 5):
如果前三个等级都没有找到有效的注入点,可以考虑使用Level 4和Level 5进行更全面的探测。这些等级会使用更多的payload和复杂的注入技术,如联合查询注入、堆叠查询注入等