BurpSuite导出log配合SQLMAP批量扫描注入点
sqlmap可以批量扫描包含有request的日志文件,而request日志文件可以通过burpsuite来获取,
因此通过sqlmap结合burpsuite工具,可以更加高效的对应用程序是否存在SQL注入漏洞进行地毯式的扫描。
1.首先是burp设置记录log,文件名就随便填一个了。
2.把记录的log文件放sqlmap目录下
3.sqlmap读log自动测试:
python sqlmap.py -l 文件名 --batch -smart
batch:自动选yes。
smart:启发式快速判断,节约时间。
4.最后能注入的url会保存到out文件夹下
注意:log文件中如果有sqlmap无法读取的字符(ascii码之外的字符)会读取失败。
1.配置burpsuite下记录所有的request记录,并保存在指定文件夹。
因为windows下sqlmap工具需要使用python,所以我的sqlmap路径放在了D:\mysoft\Python\sqlmap下面,
而收集request的记录文件则命名为D:\mysoft\Python\sqlmap\burp.log文件。
2. 执行命令:sqlmap.py -l burp.log --batch -smart 即可对burp.log中保存的所有request进行注入扫描。
Batch:会自动选择yes
Smart:启发式快速判断,节约时间。
window版的sqlmap最后能注入的URL都会保存到C:\Users\Administrator\.sqlmap文件夹下。
--level=(1-5) #要执行的测试水平等级,默认为1 --risk=(0-3) #测试执行的风险等级,默认为1
探测等级
参数:--level
共有五个等级,默认为1,sqlmap使用的payload可以在xml/payloads.xml中看到,你也可以根据相应的格式添加自己的payload。
这个参数不仅影响使用哪些payload同时也会影响测试的注入点,GET和POST的数据都会测试,HTTP Cookie在level为2的时候就会测试,HTTP User-Agent/Referer头在level为3的时候就会测试。
总之在你不确定哪个payload或者参数为注入点的时候,为了保证全面性,建议使用高的level值。
风险等级
参数:--risk
共有四个风险等级,默认是1会测试大部分的测试语句,2会增加基于事件的测试语句,3会增加OR语句的SQL注入测试。
在有些时候,例如在UPDATE的语句中,注入一个OR的测试语句,可能导致更新的整个表,可能造成很大的风险。
测试的语句同样可以在xml/payloads.xml中找到,你也可以自行添加payload。
作者:Agoly 出处:https://www.cnblogs.com/qmfsun/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |