BurpSuite插件分享

发布时间 2023-10-19 15:01:35作者: Mr-Ryan

BurpSuite插件分享

有一组好用的插件,能够使我们的BurpSuite更好用,也能提高挖洞效率。下面分享一些我使用比较多的插件。

RouteVulScan

项目地址

https://github.com/F6JO/RouteVulScan

介绍

RouteVulScan是使用java语言基于burpsuite api开发的可以递归检测脆弱路径的burp插件。

插件可以通过被动扫描的方式,递归对每一层路径进行路径探测,并通过设定好的正则表达式匹配响应包的关键字,展示在VulDisplay界面。可以自定义相关路径、匹配信息、与漏洞名称等。

插件重点是那些简单而有害的漏洞。这些漏洞通常不是固定路径,但可能位于路径的任何层。在这种情况下,非常容易忽视这些漏洞,而如果使用路径爆破,则非常耗时和麻烦。

所以插件主打是发送数量小、准确的payload,尽可能覆盖面广的探测一些容易忽略的漏洞。

使用

装载插件:Extender -> Extensions -> Add -> Select File -> Next

也可以直接在BApp Store里直接搜索安装

初次装载插件会在burpsuite当前目录下生成Config_yaml.yaml配置文件,用来储存匹配规则,该文件默认在当前burp目录下。

插件支持在线更新,点击Update按钮更新追加最新规则。部分网络需要挂代理,在线更新使用的是burp网络,所以可以直接配置burp的顶级代理。

功能介绍

  • 被动扫描,使用Burpsuite IScannerCheck接口,在流量初次流经burp时进行扫描,重复流量不会进行扫描。

    • 对流经流量的每一层路径进行规则探测,并进行正则匹配,符合规则则展示在VulDisplay界面;
    • 如https://www.baidu.com/aaa/bbb,则会对/、/aaa/、/aaa/bbb/ 分别进行探测,如果存在点后缀,则会跳过。
  • 使用线程池增加扫描速度,默认线程10,可自行调节(线程个数最多与规则个数相等,多了也没用)

  • Start按钮,插件主开关,默认关闭

  • DomainScan按钮,开启后如果host为域名,则将子域和主域当作第一层路径进行扫描,默认关闭。

  • Head按钮,携带原始的请求头,默认关闭

  • Bypass按钮,不符合预期时将配置文件中的bypass字符添加到路径中重新扫描,默认关闭

  • Filter_Host 输入框,可以只扫描指定host的url,*代表全部,如 *.baidu.com

  • VulDisplay界面右键可删除选中的行,或全部删除

  • 右键请求可选择将当前请求发送到插件进行主动扫描,插件会将站点地图中,与当前请求使用一样host的历史路径全部进行扫描

  • 规则中可使用特殊标记获取原始请求或响应中的信息,用作请求的路径或正则。

请求相关:
  {{request.head.*}}	-- 获取请求中head的各项,如获取cookie,{{request.head.cookie}}
  	 {{request.head.host.main}}	-- 获取host的根域名,如www.baidu.com:443,则获取baidu.com
  	 {{request.head.host.name}}	-- 获取域名,如www.baidu.com:443,则获取baidu
  {{request.method}}	-- 获取请求的方法,如GET/POST
  {{request.path}}	-- 获取请求的路径,如/aaa/bbb,则获取aaa/bbb
  {{request.url}}	-- 获取完整请求url
  {{request.protocol}}	-- 获取请求的协议,如http/https
  {{request.port}}	-- 获取请求的端口号
响应相关:
  {{response.head.*}}	-- 获取响应中head的各项,如获取server,{{response.head.server}}
  {{response.status}}	-- 获取响应的状态码
  • 状态码一栏可指定范围,如 200-299,500-599,302 可使用逗号来指定多个范围或多个状态码。

HaE

项目地址

https://github.com/gh0stkey/HaE

项目介绍

HaE是一个基于BurpSuite Java插件API开发的辅助型框架式插件,旨在实现对HTTP消息的高亮标记和信息提取。该插件通过自定义正则表达式匹配响应报文或请求报文,并对匹配成功的报文进行标记和提取。

随着现代化Web应用采用前后端分离的开发模式,日常漏洞挖掘的过程中,捕获的HTTP请求流量也相应增加。若想全面评估一个Web应用,会花费大量时间在无用的报文上。HaE的出现旨在解决这类情况,借助HaE,您能够有效减少测试时间,将更多精力集中在有价值且有意义的报文上,从而提高漏洞挖掘效率。

注: 要想灵活的使用HaE,你需要掌握正则表达式阅读、编写、修改能力;由于Java正则表达式的库并没有Python的优雅或方便,所以HaE要求使用者必须用()将所需提取的表达式内容包含;例如你要匹配一个Shiro应用的响应报文,正常匹配规则为rememberMe=delete,如果你要提取这段内容的话就需要变成(rememberMe=delete)。

使用方法

插件装载: Extender - Extensions - Add - Select File - Next

初次装载HaE会自动获取官方规则库https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Rules.yml,配置文件(Config.yml)和规则文件(Rules.yml)会放在固定目录下:

  1. Linux/Mac用户的配置文件目录:~/.config/HaE/
  2. Windows用户的配置文件目录:%USERPROFILE%/.config/HaE/

优势特点

  1. 精细配置:高度自由的配置选项,以满足各类精细化场景需求。
  2. 分类标签:使用标签对规则进行分类,便于管理和组织规则。
  3. 高亮标记:在HTTP History页面,通过颜色高亮和注释判断请求的价值。
  4. 易读配置:使用易读的YAML格式存储配置文件,方便阅读和修改。
  5. 数据集合:将匹配到的数据、请求和响应集中在数据面板中,提高测试和梳理效率。
  6. 简洁可视:清晰可视的界面设计,更轻松地了解和配置HaE,操作简单、使用便捷。
  7. 颜色升级:内置颜色升级算法,避免“屠龙者终成恶龙”场景,突出最具价值的请求。
  8. 实战规则:官方规则库是基于实战化场景总结输出,提升数据发现的有效性、精准性。

Rules(规则信息管理)

Config(配置信息管理)

Databoard(数据集合面板)

实际使用

使用 RGPerson 生成测试数据,放入网站根目录文件中:

访问该地址,在 Proxy - HTTP History 中可以看见高亮请求,响应标签页中含有 MarkInfo 标签,其中将匹配到的信息提取了出来。

APIKit:Discovery, Scan and Audit APIs Toolkit All In One.

项目地址

https://github.com/API-Security/APIKit

介绍

APIKitAPISecurity社区发布的第一个开源项目。

APIKit是基于BurpSuite提供的JavaAPI开发的插件。

APIKit可以主动/被动扫描发现应用泄露的API文档,并将API文档解析成BurpSuite中的数据包用于API安全测试

实际使用效果如图:

API技术指纹支持

APIKit v1.0支持的API技术的指纹有:

安装

打开BurpSuite页面,点击Extender然后选择Extensions,添加APIKit.jar

然后APIKit会对进入到BurpSuite的流量进行被动扫描。解析完成后可以在APIKit面板查看结果,同样Burpsuite的DashBoard也会有issue提示。

配置

默认情况下Request和Cookie都不开启。

开启Cookie,可以把包的Cookie存下来,生成请求的时候保留Cookie。

Auto Request Sending

开启对API的请求,注意开启API请求后。你需要明确以下几点:

1. 本工具仅面向合法授权的企业安全建设行为,如您需要测试本工具的可用性,请自行搭建靶机环境。

2. 在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行请求。

3. 如您在使用本工具的过程中存在任何非法行为或造成其他损失,您需自行承担相应后果,我们将不承担任何法律及连带责任。

4. 在安装并使用本工具前,请您务必审慎阅读、充分理解各条款内容,限制、免责条款或者其他涉及您重大权益的条款可能会以加粗、加下划线等形式提示您重点注意。 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要安装并使用本工具。您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。

选择开启Auto Request Sending后,可以对子API进行自动化鉴权测试,快速发现API未授权访问漏洞。

Clear history

点击清除所有API文档记录。

被动扫描

默认情况下流经BurpSuite的流量都会进行API探测解析和扫描。

主动扫描

Do Auto API scan

Do Auto API scan可以指定任意一个请求进行API指纹探测。

在任何一个Burpsuite可以右键打开更多选项的页面中,都可以点击右键,选择Do Auto API scan来发起一次主动扫描,进行API指纹探测。

Do Target API Scan

Do Target API scan可以指定任意API技术、任意BasePath、任意API文档Path、和任意Header进行API请求的生成和探测。

在任何一个Burpsuite可以右键打开更多选项的页面中,都可以点击右键,选择Do Target API scan来打开选项框。

填写指定任意API技术、任意BasePath、任意API文档Path、和任意Header,再点击Scan进行API请求的生成和探测。

注意BasePath要以/结尾。

API漏洞自动扫描

所有与BurpSuite联动的工具均可联动APIKit。比如xray。

xray配置

./xray_darwin_amd64 webscan --listen 127.0.0.1:7777  --html-output APIKit.html

BurpSuite配置

更多实用功能

  • Fuzz鉴权绕过漏洞
  • 检测请求返回包中敏感信息
  • 发现js中泄露的API
  • 常见数据解析依赖库识别,比如Fastjson等
  • 更多实用功能...