Burp Suite的Extender拓展功能是指可以通过编写自定义插件来扩展Burp Suite的功能。Burp Suite支持Java、Python、Ruby三种语言的插件开发,开发者只需要按照接口规范去实现想要的功能即可。

下面是一个Java语言版的Burp插件编写示例:

  1. 首先,需要准备好Java开发环境,并下载Burp Suite的Java API。
  2. 创建一个Java项目,并将Burp Suite的Java API添加到项目的依赖中。
  3. 创建一个类,实现IBurpExtender接口,并重写registerExtenderCallbacks方法。该方法会在插件被加载时被调用,可以在该方法中注册自定义的插件。
  4. 在registerExtenderCallbacks方法中,可以通过调用IBurpExtenderCallbacks对象的各种方法来注册自定义的插件。例如,可以通过调用registerHttpListener方法来注册一个HTTP监听器,用于拦截和修改HTTP请求和响应。
  5. 编译并打包插件,将生成的jar文件放置在Burp Suite的extender目录下。
  6. 在Burp Suite中启动插件,即可使用自定义的插件功能。

界面介绍

 

Burpsuite Extender拓展功能实战_自定义

插件介绍

Burpsuite Extender拓展功能实战_自定义_02

c02是用的很多的插件。

Burpsuite Extender拓展功能实战_Java_03

Gason:
sqlmap插件,实现Burp与sqlmap的对接
https://code.google.com/p/gason/
https://github.com/difcareer/sqlmap4burp

Burpsuite Extender拓展功能实战_自定义_04

Burpsuite Extender拓展功能实战_Burp_05


Burpsuite Extender拓展功能实战_Java_06

插件集合

Burpsuite Extender拓展功能实战_Burp_07

按照字母排序 的

Burpsuite Extender拓展功能实战_自定义_08

外置导入


安装插件

点击安装

Burpsuite Extender拓展功能实战_Burp_09

一键卸载

Burpsuite Extender拓展功能实战_Burp_10

安装完最右边就会多出一个插件co2

Burpsuite Extender拓展功能实战_自定义_11


使用插件

Burpsuite Extender拓展功能实战_自定义_12

Burpsuite Extender拓展功能实战_自定义_13


管理插件

Burpsuite Extender拓展功能实战_Java_14

编写插件

Burpsuite Extender拓展功能实战_Java_15

可以把api下载下来,然后打开编程工具

拓展选项

Burpsuite Extender拓展功能实战_自定义_16

如果插件使用python写的,就需要配置相应的环境。


BurpSuite+CO2实现SQL注入

使用Burp扫描目标页面

Burpsuite Extender拓展功能实战_自定义_17

找到注入页面发送给CO2

Burpsuite Extender拓展功能实战_Java_18

使用CO2调用SQLmap

Burpsuite Extender拓展功能实战_自定义_19

调用SQLmap实现注入攻ji

Burpsuite Extender拓展功能实战_Java_20


也可以被动扫描后觉着某一个或两个链接存在某种漏洞,可以单独选中进行主动扫描。

Burpsuite Extender拓展功能实战_Java_21

然后会提示哪些要扫描哪些不要扫,不应该一路确认。

Burpsuite Extender拓展功能实战_Burp_22

点击确认主动扫描,然后传给CO2,接上一段。

Burpsuite Extender拓展功能实战_自定义_23

发送CO2

Burpsuite Extender拓展功能实战_Java_24

Burpsuite Extender拓展功能实战_Burp_25

使用CO2调用SQLmap

有可能cookie错误,需要回到抓包页面复制正确的过来

一开始run按钮是灰色的,需要先点击一下config

Burpsuite Extender拓展功能实战_Java_26

下面是随机用户代理按钮,用来绕开waf检测,原理是不断模拟改变请求信息里用户的浏览器。

Burpsuite Extender拓展功能实战_Burp_27

在optins模块里选择字段后,上面的sql语句就会不一样了

databases需要找到数据库信息

users、passwords账户密码信息

privileges权限信息

dump脱库

Burpsuite Extender拓展功能实战_自定义_28


调用SQLmap实现注入公鸡

Burpsuite Extender拓展功能实战_Java_29