BurpMCP-Ultra
The most powerful MCP server for Burp Suite Professional
137 Tools • 14 Resources • 12 Event Types • Real-time Dashboard • Full Montoya API Coverage
Quick Start • All Tools • Features • Dashboard • Setup Guides
______________________________________________________________________
BurpMCP Ultra 是一个带有嵌入式MCP(模型上下文协议)服务器的原生Kotlin Burp Suite扩展。将单个JAR放入Burp,连接Claude Code或任何MCP客户端,并通过AI代理以编程方式控制Burp Suite的各个方面。
为什么选择BurpMCP Ultra?
| BurpMCP Ultra | 打嗝剂 | PortSwigger官方 | |
|---|---|---|---|
| MCP工具 | 137 | 53 | 12 |
| 自定义扫描检查 | B检查+脚本 | - | - |
| WebSocket测试 | 完整生命周期 | - | - |
| 直列式引信 | 3种模式(FUZZ/标记/偏移) | - | - |
| 比赛条件测试 | 单包攻击 | - | - |
| 身份验证级别差异 | IDOR/privesc检测 | - | - |
| API架构导入 | OpenAPI/Swagger | - | - |
| 被动Intel提取 | 30+图案 | - | - |
| 实时仪表盘 | Web+Swing | - | - |
| 事件流 | 12种事件类型 | - | - |
| 响应变化分析 | 盲注射检测 | - | - |
| 请求链宏 | 多步令牌提取 | - | - |
| 协作者OOB | 完全创建/轮询/关联 | 部分 | 部分 |
______________________________________________________________________
快速开始
1.建造
git clone https://github.com/Cy-S3c/BurpMCP-Ultra.git
cd BurpMCP-Ultra
./gradlew shadowJar输出: build/libs/burpmcp-ultra-2.0.1.jar (13 MB)
2.装入Burp
- Burp Suite Pro> 扩展 > 添加
- 选择JAR
- BurpMCP Ultra 选项卡显示绿色“正在运行”状态
3.连接克劳德代码
{
"mcpServers": {
"burp": {
"type": "sse",
"url": "http://127.0.0.1:9876/sse"
}
}
}添加 ~/.claude.json 或者你的项目 .mcp.json.
4.打开仪表板
浏览至 http://127.0.0.1:9878 用于实时网络仪表板。
______________________________________________________________________
设置指南
Claude Code (Direct SSE)
最简单的设置。添加到MCP配置中:
{
"mcpServers": {
"burp": {
"type": "sse",
"url": "http://127.0.0.1:9876/sse"
}
}
}配置文件位置:
- 全球的:
~/.claude.json - 每个项目:
.mcp.json在项目根中
Claude Code via Caddy (Recommended for Stability)
Caddy可防止SSE超时断开连接,并提供可靠的缓冲。
安装球童:
sudo apt install caddy创建 /etc/caddy/Caddyfile:
:9900 {
reverse_proxy 127.0.0.1:9876 {
transport http {
read_timeout 0
write_timeout 0
response_header_timeout 0
}
flush_interval -1
header_up Connection {>Connection}
header_up Upgrade {>Upgrade}
}
}sudo systemctl restart caddy然后在MCP配置中使用端口9900:
{
"mcpServers": {
"burp": {
"type": "sse",
"url": "http://127.0.0.1:9900/sse"
}
}
}预构建的Caddyfile包括: configs/Caddyfile
Claude Desktop (stdio via proxy)
Claude Desktop仅支持stdio传输。使用超级通道作为桥梁:
{
"mcpServers": {
"burp": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://127.0.0.1:9876/sse"]
}
}
}Automated Setup Script
chmod +x configs/setup.sh
./configs/setup.sh该脚本构建JAR,可选地配置Caddy,并显示要添加的MCP配置。
______________________________________________________________________
全部137工具
代理(13个工具)
| 工具 | 说明 |
|---|---|
proxy_history | 通过筛选(主机、方法、状态、MIME、作用域)获取HTTP代理历史记录 |
proxy_history_search | 在代理历史记录(URL、标头、正文)中搜索正则表达式 |
proxy_websocket_history | 获取WebSocket代理历史记录 |
proxy_websocket_history_search | 正则表达式搜索WebSocket历史记录 |
proxy_intercept_enable | 启用代理拦截 |
proxy_intercept_disable | 禁用代理拦截 |
proxy_intercept_status | 获取当前拦截状态 |
proxy_annotate | 为历史记录项添加突出显示颜色和注释 |
proxy_set_request_rule | 自动修改/删除/标记匹配模式的代理请求 |
proxy_set_response_rule | 自动修改/删除/标记与模式匹配的代理响应 |
proxy_list_rules | 列出所有活动代理规则 |
proxy_remove_rule | 删除代理规则 |
proxy_auto_auth | 为所有匹配的请求注入一个命令auth头 |
HTTP(13个工具)
| 工具 | 说明 |
|---|---|
http_send_request | 发送HTTP请求(结构化或原始,HTTP/1.1或HTTP/2) |
http_send_requests_parallel | 并行发送多个请求(竞争条件、批处理操作) |
http_send_request_chain | 多步请求序列,步骤之间进行令牌提取 |
http_fuzz | 带FUZZ关键字、节标记和偏移模式的内联模糊器 |
http_send_raw_bytes | 用于走私和CRLF注入的字节级HTTP请求 |
http_race | 比赛状态测试——同时发送N个请求 |
http_cookie_jar_get | 从伯普的饼干罐里拿饼干 |
http_cookie_jar_set | 在饼干罐里放一块饼干 |
http_analyze_keywords | 分析关键字出现的响应 |
http_analyze_variations | 检测盲注射的反应变化 |
http_set_traffic_rule | 注册全局请求/响应修改规则 |
http_list_traffic_rules | 列出现行交通规则 |
http_remove_traffic_rule | 删除交通规则 |
扫描仪(12个工具)
| 工具 | 说明 |
|---|---|
scanner_start_crawl | 从种子URL开始网络抓取 |
scanner_start_audit | 使用可选的身份验证配置启动主动/被动扫描 |
scanner_task_status | 获取扫描任务进度(请求、错误、问题) |
scanner_task_list | 列出所有扫描/爬网任务 |
scanner_task_delete | 取消并删除扫描任务 |
scanner_task_add_request | 将请求添加到正在运行的审核中 |
scanner_task_issues | 从特定任务中获取问题 |
scanner_get_all_issues | 使用严重性/置信度过滤器获取所有扫描仪问题 |
scanner_generate_report | 生成HTML/XML扫描报告 |
scanner_create_issue | 创建自定义审核问题 |
scanner_import_bcheck | 导入BCheck脚本以进行自定义扫描 |
scanner_register_check | 注册自定义主动/被动扫描检查 |
实用程序(13个工具)
| 工具 | 说明 |
|---|---|
util_url_encode / util_url_decode | URL编码/解码 |
util_base64_encode / util_base64_decode | Base64编码/解码 |
util_html_encode | HTML实体编码 |
util_hash | 加密散列(MD5、SHA1、SHA256、SHA384、SHA512) |
util_compress / util_decompress | Gzip/deflate/brotli压缩 |
util_random_string | 生成随机字符串 |
util_random_bytes | 生成随机字节 |
util_jwt_decode | 解码JWT令牌(标头、有效载荷、过期检查) |
util_decode_smart | 自动检测和解码多层编码 |
util_shell_execute | 从Burp的上下文中执行shell命令 |
B检查模式(5个工具)
| 工具 | 说明 |
|---|---|
bcheck_create | 从结构化参数生成和部署BCheck |
bcheck_import | 导入原始BCheck DSL脚本 |
bcheck_templates | 获取所有带有DSL参考的BCheck模板 |
bcheck_list | 列出已部署的BChecks |
bcheck_remove | 删除已部署的BCheck |
脚本模式(5个工具)
| 工具 | 说明 |
|---|---|
scancheck_create_passive | 通过多条件匹配创建被动检查 |
scancheck_create_active | 使用有效载荷链创建多步骤主动检查 |
scancheck_templates | 获取脚本模式模板和条件参考 |
scancheck_list | 列出已部署的脚本检查 |
scancheck_remove | 取消注册脚本检查 |
协作者(6个工具)
| 工具 | 说明 |
|---|---|
collaborator_create_client | 为OOB测试创建Collaborator客户端 |
collaborator_restore_client | 从密钥还原客户端 |
collaborator_generate_payload | 生成协作者有效载荷 |
collaborator_poll | DNS/HTTP/SMTP交互轮询 |
collaborator_server_info | 获取协作者服务器地址 |
collaborator_get_secret | 获取会话持久性的客户端密钥 |
分析(7个工具)+高级(3个工具)
| 工具 | 说明 |
|---|---|
analyze_request | 将HTTP请求解析为结构化组件 |
analyze_response | 将HTTP响应解析为结构化组件 |
analyze_find_reflected | 查找响应中反映的参数值(XSS检测) |
analyze_extract_params | 提取所有参数(URL、正文、cookie、标头、JSON) |
analyze_insertion_points | 获取扫描仪样式的插入点 |
analyze_diff | 比较两个请求或响应 |
analyze_response_body_search | 在所有代理响应体中搜索模式 |
auth_diff | 比较不同身份验证级别的响应(IDOR/privesc检测) |
api_import_openapi | 导入OpenAPI/Swagger规范,生成请求,填充站点地图 |
passive_intel | 从代理历史中提取秘密、令牌、电子邮件、IP(30多种模式) |
WebSocket(7个工具)
| 工具 | 说明 |
|---|---|
websocket_create | 创建WebSocket连接 |
websocket_send_text | 发送短信 |
websocket_send_binary | 发送二进制消息 |
websocket_close | 关闭连接 |
websocket_list | 列出活动连接 |
websocket_get_messages | 使用方向过滤器获取消息 |
websocket_set_intercept_rule | 自动拦截WebSocket消息 |
配置和BurpSuite(16个工具)
| 工具 | 说明 |
|---|---|
burp_version | 获取Burp版本和版本 |
burp_export_project_config / burp_import_project_config | 项目配置为JSON格式 |
burp_export_user_config / burp_import_user_config | 用户配置为JSON |
burp_task_engine_state / burp_task_engine_set | 暂停/恢复所有后台任务 |
burp_command_line_args | 获取启动参数 |
burp_shutdown | 关闭Burp Suite |
config_proxy_listeners_list / add / remove | 管理代理侦听器 |
config_match_replace_add / list / remove | 管理匹配和替换规则 |
config_upstream_proxy_set | 配置上游代理(Tor、企业) |
其他(22工具)
| 工具 | 说明 |
|---|---|
scope_check / scope_include / scope_exclude / scope_get_config | 目标范围管理 |
sitemap_query / sitemap_get_issues / sitemap_add_request / sitemap_add_issue | 网站地图操作 |
repeater_send | 向中继器选项卡发送请求 |
intruder_send / intruder_send_with_positions / intruder_register_payload_processor | 入侵者行动 |
organizer_send / organizer_get_items | 组织者管理 |
session_create_token_rule / session_list_rules / session_remove_rule | 会话令牌处理 |
events_get / events_get_by_type / events_subscribe / events_unsubscribe / events_clear | 事件系统 |
persistence_store / persistence_get / persistence_delete / persistence_list | 项目数据存储 |
preference_store / preference_get | 全球偏好 |
log_message / log_event | 打嗝记录 |
decoder_send / comparer_send | 发送到解码器/比较器 |
ai_status / ai_prompt | Burp AI集成 |
bambda_import | 导入Bambda脚本 |
project_info / extension_info | 项目和扩展元数据 |
______________________________________________________________________
突出显示功能
比赛条件测试
http_race(
request: "POST /api/transfer HTTP/1.1\r\nHost: bank.com\r\n\r\n{\"amount\":100}",
host: "bank.com", port: 443, count: 20
)使用Burp的并行引擎同时发送20个相同的请求。分析响应状态代码和正文长度分布,以检测TOCTU、双重花费和限制绕过漏洞。
身份验证级别差异
auth_diff(
request: "GET /api/users/1 HTTP/1.1\r\nHost: api.com\r\n\r\n",
host: "api.com", port: 443,
auth_levels: [
{"name": "admin", "header_name": "Authorization", "header_value": "Bearer admin-token"},
{"name": "user", "header_name": "Authorization", "header_value": "Bearer user-token"},
{"name": "none"}
]
)发送具有不同身份验证级别的相同请求,比较响应,并标记IDOR、权限升级和缺少授权。
直列式引信(3种模式)
# Mode 1: FUZZ keyword — simplest
http_fuzz(request: "GET /api?id=FUZZ HTTP/1.1\r\nHost: api.com\r\n\r\n",
host: "api.com", port: 443,
payloads: ["1", "2", "admin", "../../etc/passwd"])
# Mode 2: Section markers — like Burp Intruder
http_fuzz(request: "GET /api?id=§1§&role=§user§ HTTP/1.1\r\nHost: api.com\r\n\r\n",
host: "api.com", port: 443,
payloads: ["admin"])
# Mode 3: Byte offsets — precise control
http_fuzz(request: "GET /status/200 HTTP/1.1\r\nHost: httpbin.org\r\n\r\n",
host: "httpbin.org", port: 443,
positions: [[12, 15]], payloads: ["201", "404"])自定义扫描检查
B检查模式 --使用Burp的BCheck DSL部署漏洞检查:
bcheck_create(
name: "AWS Key Leak", type: "passive_response",
match_pattern: "AKIA[0-9A-Z]{16}",
severity: "high", confidence: "firm",
issue_detail: "AWS Access Key ID found in response"
)脚本模式 --带有条件有效载荷的多步骤主动检查:
scancheck_create_active(
name: "SSTI Detection",
steps: [
{"payload": "{{7*7}}", "response_conditions": [
{"location": "response_body", "pattern": "49", "condition_type": "contains"}
]},
{"payload": "{{7*6}}", "response_conditions": [
{"location": "response_body", "pattern": "42", "condition_type": "contains"}
]}
],
severity: "high", confidence: "firm"
)API架构导入
api_import_openapi(
spec_json: "",
auth_header: "Authorization",
auth_value: "Bearer your-token",
send_requests: true,
add_to_sitemap: true
)解析OpenAPI 3.x和Swagger 2.0规范。为每个端点生成带有示例参数和主体的请求。可以选择通过Burp发送它们,填充代理历史记录和站点地图。
被动情报提取
passive_intel(max_items: 2000, in_scope_only: true)扫描所有捕获的代理流量,查找30多种敏感数据模式:
- 云凭据:AWS密钥、Google API密钥、GitHub令牌、Slack令牌、Stripe密钥
- 代币和秘密:JWT、承载令牌、基本身份验证、私钥
- 个人资料:电子邮件、内部IP地址、电话号码
- 云资源:S3存储桶、Azure存储、GCS存储桶
- 基础设施:内部URL、GraphQL端点、API路径
- 错误:堆栈跟踪、SQL错误、调试信息
- 指纹:服务器版本、框架版本、PHP版本
- 敏感路径:/admin、/.env、/.git、/debug、/axecutor
______________________________________________________________________
网络仪表盘
打开 http://127.0.0.1:9878 对于实时仪表板:
- 实时活动流 具有噪声过滤功能(自动隐藏Google/Apple/Microsoft连接检查)
- 攻击向量检测 -AUTH、API、PARMS、UPLOAD、ADMIN、DATA端点的徽章
- 请求详细信息面板 --单击任何项目以获取完整的请求信息+发送到工具操作
- 统计栏 -事件、范围内主机和攻击向量类别的实时计数器
- 过滤器控制 --类型过滤器、URL搜索、噪声切换
- 主动规则 --查看所有代理、流量和会话规则
- 连接信息 --传输URL和MCP客户端配置
______________________________________________________________________
建筑
+---------------------------------------------------+
| BURP SUITE PRO |
| +---------------------------------------------+ |
| | BurpMCP-Ultra Extension | |
| | | |
| | Montoya API --> Bridge Layer (22 bridges) | |
| | | | | |
| | Event Bus Tool Registry (137 tools) | |
| | | | | |
| | +------- MCP Server Core --------+ | |
| | (Kotlin SDK 0.8.3) | | |
| | | | | |
| | +----------+----------+ | | |
| | SSE :9876 SSE :9877 Dashboard | | |
| | :9878 | | |
| +---------------------------------------------+ |
+---------------------------------------------------+技术栈
| 组件 | 版本 |
|---|---|
| Kotlin | 2.1.20 |
| JVM目标 | 17 |
| API蒙托亚 | 2026.2 |
| MCP Kotlin软件开发工具包 | 0.8.3 |
| 什么CIO | 3.2.3 |
| kotlinx序列化 | 1.8.1 |
| 影子JAR | 8.1.1 |
需求
- Burp Suite Professional 2025.x或更高版本
- Java 17+(包含在Burp捆绑的JRE中)
- Gradle 8.x(包装内含)
从源头构建
git clone https://github.com/Cy-S3c/BurpMCP-Ultra.git
cd BurpMCP-Ultra
./gradlew shadowJar
# Output: build/libs/burpmcp-ultra-2.0.1.jar项目结构
BurpMCP-Ultra/
├── build.gradle.kts # Build configuration
├── configs/ # Ready-to-use config files
│ ├── Caddyfile # Caddy reverse proxy
│ ├── mcp-claude-code-direct.json
│ ├── mcp-claude-code-caddy.json
│ ├── mcp-claude-desktop.json
│ └── setup.sh # Automated setup
├── src/main/kotlin/com/burpmcp/ultra/
│ ├── core/ # Extension entry point + helpers
│ ├── bridge/ # 22 Montoya API bridges
│ ├── tools/ # 29 tool category modules
│ ├── transport/ # MCP server + dashboard
│ ├── events/ # Unified event bus
│ ├── state/ # State management
│ └── ui/ # Swing UI tab
└── docs/ # Tool catalog + plans许可证
麻省理工学院
______________________________________________________________________
Built for bug bounty hunters who want AI-powered Burp Suite automation.
