Blinks:一款针对Burp Suite Pro的安全扫描增强工具

信息安全 来源:FreeBuf 2024-10-07 07:01:52 阅读:154

Blinks是一款针对Burp Suite Pro的安全扫描增强工具,广大研究人员可以利用该工具增强Burp Suite Pro的安全扫描能力。

Blinks 是一款功能强大的 Burp Suite 扩展,可自动使用 Burp Suite Pro 进行主动扫描并增强其功能。通过集成 webhook,此工具会在发现新问题时直接向你的首选端点发送实时更新,无需再等待最终报告。

功能介绍

1、Blinks以无 Blinks 模式运行 Burp Suite 扫描,无需图形用户界面 (GUI) 即可实现自动化。这使其成为集成到管道或远程服务器的理想选择。

2、单个 URL 处理:轻松扫描单个目标 URL。

3、批量 URL 处理:提供包含多个 URL 的文件,Blinks 将按顺序处理每个 URL,从而高效进行大规模评估。

4、HTML 报告:易于阅读的格式,方便人工审阅。

5、XML 报告:用于机器处理或进一步分析的结构化格式。

6、Webhook 集成以实现实时通知: Blinks支持 Webhook 集成,允许你将扫描结果直接发送到指定的 URL。此功能对于实时监控和与警报系统的集成特别有用。

7、仅抓取模式:如果你只需要绘制 Web 应用程序的结构,而无需执行完整的安全扫描,则可以使用仅抓取模式。这将扫描限制为发现 URL 和资源。

8、SOCKS5 代理支持为了增强扫描期间的安全性,特别是在需要 VPN 连接的环境中,Blinks支持以 SOCKS5 代理运行localhost:9090。

9、灵活的配置 Blinks提供了一个基于 JSON 的配置文件(config.json),允许你自定义扫描的各个方面。

工具要求

burp==1.27

httpx==0.27.0

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/0xAnuj/Blinks.git

然后切换到项目目录中,使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:

cd Blinks pip install -r requirements.txt

工具使用

工具配置

在config.json中添加 Burp Suite Pro JAR 文件和 Jython.jar 文件的路径:

{     "initialURL": {         "url": "https://example.com",         "host": "example.com",         "port": 443,         "protocol": "https"     },     "webhookurl": null,     "crawlonly": null,     "proxyonly": null,     "reporttype": "HTML",     "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3",     "headers": [],     "staticFileExt": [         "css",         "js",         "png",         "jpg",         "jpeg",         "gif",         "svg"     ],     "exclusions": [         "/exclude-this-path",         "/another-exclude-path"     ],     "BurpPath": "BURP PATH HERE",   <--- Add Burp.jar file path     "jythonPath": "JYTHON PATH HERE"   <--- Add Jython.jar file path }

运行 Blinks

Usage: python3 run.py -u https://example.com -r HTML -w https://webhook.url/endpoint Arguments:   -h, --help:显示此帮助消息并退出; -u, --url:要处理的单个 URL; -f, --file:包含要处理的 URL 的文件; -w, --webhook:Webhook URL(默认值:NULL); -r, --reporttype:报告类型(HTML 或 XML); --header:要添加到请求中的自定义标头/cookie(格式:HeaderName:HeaderValue),重复使用多个Header的参数; --crawlonly:仅执行抓取扫描,它将保存所有抓取的请求在 ./data/ 下; --socks5:在 localhost:9090 上使用 socks5 进行 VPN;

使用单个 URL 和 XML 报告运行

$ python3 run.py -u https://example.com -r XML

使用带有 webhook 的 URL 列表运行

$ python3 run.py -f ./targets.txt -r XML -w https://webhook.url/endpoint

使用带有 webhook 和多个标头的 URL 列表运行

$ python3 run.py -f ./targets.txt -r XML -w https://webhook.url/endpoint --header "Cookie:session=value" --header "Authorization: Basic test"

以仅爬取模式运行

$ python3 run.py -f ./targets.txt -r XML -w https://webhook.url/endpoint --crawlonly

增加功能扩展

可以通过修改./burpconfig/userconfig.json来附加更多 Burp 扩展。例如:

<SNIP> "extender": {     "extensions": [         {             "errors": "console",             "extension_file": "EXTENSION_PATH",             "extension_type": "python/java/ruby",             "loaded": true,             "name": "Extension Name",             "output": "ui"         }     ] } <SNIP>

此配置允许你加载和管理多个 Burp 扩展,每个扩展都由其文件路径、类型和其他属性定义。只需根据需要编辑 extension_file 路径和其他字段即可加载其他扩展。

许可证协议

本项目的开发与发布遵循AGPL-3.0开源许可协议。

项目地址

Blinks:https://github.com/0xAnuj/Blinks

赞助链接