SQL注入 - sqlmap联动burpsuite之burp4sqlmap++插件

sqlmap和burpsuite介绍

SqlMap

sqlmap 是一款自动化检测与利用SQL注入漏洞的免费开源工具。

可用于检测利用五种不同类型的SQL注入:

  • 布尔型盲注(Boolean-based blind)即可以根据返回页面判断条件真假的注入。

  • 时间型盲注(Time-based blind)即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。

  • 报错型注入(Error-based)即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。

  • 联合查询注入(UNION query-based)可以使用union的情况下的注入。

  • 堆叠查询注入(Stacked queries)可以同时执行多条语句的执行时的注入。

sqlmap的使用参考:

Burp Suite

是一个集成化的渗透测试工具,它集合了多种渗透测试组件,使我们自动化地或手工地能更好的完成对web应用的渗透测试和攻击。

burpsuite包括以下几个模块:

  • proxy:代理
  • target:站点目标
  • spider:爬虫
  • scanner:漏洞扫描
  • repeater:http请求消息与响应消息修改重放
  • intruder:暴力破解
  • sequencer:随机数分析
  • decoder:各种编码格式和散列转换
  • comparer:可视化差异对比功能

burpsuite的使用参考:


sqlmap4burp++介绍

sqlmap4burp++是一款兼容Windows,mac,linux多个系统平台的Burp与sqlmap联动插件。

在sqlmap4burp基础上进行了如下改动:

  • 在支持Windows基础上,拓展对Linux,macOS的支持
  • 移除对commons-io-.jar,commons-langs-.jar的依赖
  • 移除Burpsuite JTab控件,采用弹窗式配置,让界面更加简洁易用。
  • 移除了多余的代码

sqlmap4burp++参考:


sqlmap4burp++的使用

在Windows平台下分别 下载sqlmap下载sqlmap4burp++,并且可以正常使用sqlmap,burp导入sqlmap4burp++的jar包也可以成功。

尝试运行,sqlmap报错http的请求文件找不到,原因是文件路径中有乱码。

所以用户名最好不要用中文

小插曲:sqlmap报错文件不存在怎么办?

分析发现是-r参数这个后面这个文件名出现问题,明显是编码的问题,导致文件找不到。
尝试从源码中寻找解决方案,发现源码中的SqlmapStarter.java中run方法,会对命令进行进行拼接,发现这个用于获取请求文件的参数Config.getRequstFilePath()。

点进去,看到set方法,REQUST_FILE_PATH传入文件路径。

点进set方法,发现request数据包保存到java临时目录,这个临时目录是在我们的用户目录下面,所以用户名是中文编码错误,文件就会无法被找到。

修改request数据包保存的临时路径应该可以解决问题。

然后重新编译,打包。

在burosuite导入重新编译后的jar包可以使用了。

使用burp4sqlmap++的好处是可以将我们拦截的请求包直接发给sqlmap,方便快捷。

直到我发现burp的一个官方sqlmap注入插件 CO2 功能强大,有丰富的UI界面。但缺点是sqlmap扫描过程中,burp无法正常使用,关闭命令行,才能正常使用。


若有错误,欢迎指正!o( ̄▽ ̄)ブ

热门相关:交易校园情侣   虚张声势   拯救嫌疑人   网上的乐趣   海王2:失落的王国