BurpSuite导出log配合SQLMAP批量扫描注入点

0 sqlmap批量扫描burpsuite请求日志记录

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 **

3探测等级

  • 参数:--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。

4注意事项

如果sqlmap版本过低的话会很影响扫描结果的,很可能
扫描不出sql注入漏洞,扫描前不妨查一下sqlmap的具体版本吧,尽量用较高版本的sqlmap,
以下是我自己的环境下查到的信息。

  • linux下查看sqlmap版本信息:
root@kali:~/sqlmap# sqlmap --version
1.0-dev-nongit-201602180a89
  • windows下查看到的版本信息
C:\offer\burp>sqlmap.py --version
1.1.12.12#dev
Press Enter to continue...
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容