Burp suite MCP sever扩展,让OpenCode实现操控Burp Suite
1. 环境要求
以下是本文实践所需的环境要求:
| 组件 | 版本要求 |
|---|---|
| Burp Suite | Professional / Community Edition(2024+) |
| Java | JRE 17+(运行 mcp-proxy.jar) |
| opencode | 已安装并可正常运行 |
| 网络 | 本机回环地址 127.0.0.1,无需外网 |
| mcp-proxy.jar | 位于桌面 C:\Users\22538\Desktop\mcp-proxy.jar |
注意:以上为基本环境要求,mcp-proxy.jar 为 MCP sever 的服务器代理包
2. 安装 Burp MCP Server 扩展
方式一:通过 BApp Store 安装(推荐)
-
打开 Burp Suite
-
进入 Extender → BApp Store

-
搜索 MCP Server

-
点击安装(作者: Daniel S & Daniel Allen)

因为我已经安装,这里我只做截图展示
方式二:手动下载安装
-
访问 https://portswigger.net/bappstore/9952290f04ed4f628e624d0aa9dccebc

-
下载最新版
.bapp文件
-
在 Burp 中进入 Extender → BApp Store → Manual install

-
选择下载的
.bapp文件加载
3. 启动 MCP 服务器
-
安装完成后,Burp 中会出现 MCP Server 标签页

-
点击 Start 按钮启动服务器

-
默认地址:
http://127.0.0.1:9876
注意: 每次重启 Burp Suite 后需要重新点击 Start
4. 配置 opencode
4.1 全局配置文件路径
C:\Users\22538\.config\opencode\opencode.json
4.2 配置内容
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"burp-suite": {
"type": "local",
"command": [
"java",
"-jar",
"C:\\Users\\22538\\Desktop\\mcp-proxy.jar",
"--sse-url",
"http://127.0.0.1:9876"
],
"enabled": true,
"timeout": 30000
}
}
}
4.3 配置说明
| 字段 | 值 | 说明 |
|---|---|---|
type |
"local" |
本地 MCP 服务器,通过 stdio 通信 |
command |
["java", "-jar", "...mcp-proxy.jar", "--sse-url", "http://127.0.0.1:9876"] |
用 mcp-proxy.jar 桥接 Burp 的 HTTP SSE 端点 |
enabled |
true |
启动时自动启用 |
timeout |
30000 |
请求超时时间(毫秒) |
关键点: 必须使用
--sse-url http://127.0.0.1:9876(HTTP 而非 HTTPS),因为 Burp 的 MCP Server 扩展用的是 HTTP。如果 Burp 的 MCP Server 开启了 External Access(需要 Token),需要在命令中添加
--oauth21参数或配置环境变量。
4.4 Burp Analyst Agent(可选)
Agent 文件路径:
C:\Users\22538\.opencode\agents\burp-analyst.md
在 opencode 中输入 @burp-analyst 可直接激活专用的 Burp 安全分析师 Agent,自动进行 API 分析、JS 审计、敏感信息扫描等。
5. 重启并验证
完成配置后,需要重启 opencode 使配置生效,并验证 Burp MCP Server 是否连接成功。
5.1 退出 opencode
配置需要重启才能生效,请先退出当前运行的 opencode 客户端。
5.2 重新启动 opencode
重新启动 opencode,观察启动过程中是否有报错信息。正常情况下,opencode 会加载 MCP 配置并尝试连接 Burp MCP Server。
5.3 验证连接
在 opencode 对话中输入以下命令验证连接:
查看 Burp 的 HTTP history
如果配置正确,opencode 应该能正常返回 Burp Suite 的 HTTP 历史记录数据。如果能正常返回数据,说明 opencode 与 Burp MCP Server 连接成功。
5.4 常见问题排查
如果连接失败,可以检查以下几点:
- Burp MCP Server 是否正在运行:确保
burp-mcp-server进程仍在后台运行 - 端口是否正确:确认配置中的端口号与 Burp MCP Server 启动时指定的端口一致
- 防火墙设置:检查是否有防火墙阻止了 localhost:9000 端口的连接
- 配置语法:检查
mcp_config.json文件是否有语法错误
6. 使用方式
方式一:直接对话
直接对 opencode 说:
- “查看 Burp Suite 的 HTTP history”
- “提取所有 API 端点”
- “分析 JS 文件”
- “查找敏感信息”
- “测试这个接口是否存在漏洞”
- “帮我发送一个 POST 请求到 /api/login”
方式二:使用 Agent(推荐)
输入 @burp-analyst 后加上需求,例如:
@burp-analyst 分析最近 100 条 HTTP history,提取 API 端点
Agent 会自动完成多步骤分析流程。
典型场景
场景 1:API 接口审计
@burp-analyst 提取所有含 /api/ 的请求,分析端点类型和返回状态码
场景 2:JS 敏感信息泄露检测
查看 HTTP history 中所有 JS 文件,检查是否有硬编码密钥或内网地址
场景 3:全量安全扫描
分析整个 proxy history,找出可能的 JWT token、SQL 错误信息、内网 IP 泄露
7. MCP 工具清单
Burp MCP Server 扩展暴露的完整工具列表:
| 工具名称 | 功能说明 |
|---|---|
burp_get_proxy_history |
获取 HTTP proxy 请求历史 |
burp_send_request |
发送 HTTP/1.1 请求到目标 |
burp_send_request_http2 |
发送 HTTP/2 请求 |
burp_get_proxy_websocket_history |
获取 WebSocket 历史 |
burp_collaborator |
生成 Burp Collaborator 负载(仅 Pro 版) |
burp_get_collaborator_interactions |
获取 Collaborator 交互记录 |
burp_create_repeater |
创建 Repeater 标签页 |
burp_create_intruder |
创建 Intruder 攻击 |
burp_proxy_intercept |
控制 Proxy 拦截开关 |
burp_encode |
编码工具 |
burp_decode |
解码工具 |
8. 使用注意事项
8.1 Burp MCP Server 必须先 Start
每次打开 Burp Suite 后,必须进入 MCP Server 标签页 → 点击 Start,opencode 才能连接。重启 Burp 后需要重新操作。
8.2 先捕获流量再查询
如果 Burp 尚未捕获到任何 HTTP 流量(Proxy history 为空),opencode 查不到数据。使用前确保:
- 浏览器已配置 Burp 代理(默认
127.0.0.1:8080) - 已浏览目标网站,Proxy history 中有记录
8.3 Proxy 拦截状态注意
如果 Burp Proxy 处于 Intercept is on 状态,某些操作(如发送请求)可能会被拦截挂起。建议在 opencode 调用期间将 Intercept 暂时关闭,或使用 burp_proxy_intercept 工具控制开关。
8.4 mcp-proxy.jar 不能删除或移动
当前 opencode 配置中 mcp-proxy.jar 的路径固定指向桌面:
C:\Users\22538\Desktop\mcp-proxy.jar
删除、移动或重命名该文件会导致 MCP 连接失败。
8.5 避免大量请求同时操作
一次性查询大量 history 或并发发送多个请求可能导致超时。建议:
- 先按条件过滤缩小范围(如按域名、方法、状态码)
- 大范围扫描时逐步进行,分批分析
8.6 注意敏感信息安全
通过 Burp MCP 获取的数据可能包含:
- JWT Token / Session ID
- API Key / 密码 / 密钥
- 内网 IP 地址和架构信息
- 个人身份信息(PII)
在分享 session、截图或记录输出时注意脱敏。
8.7 External Access / Token 认证
如果 Burp 的 MCP Server 扩展开启了 External Access,需要配置 Token 认证。当前配置使用的是 --sse-url http:// 无需认证模式。如果后续启用 External Access,需要更新配置添加 MCP_AUTH_TOKEN 环境变量。
8.8 保持 Java 环境可用
mcp-proxy.jar 依赖 Java 运行。如果 Java 卸载或版本过低(低于 Java 17),MCP 服务器将无法启动。
9. 故障排查
问题:opencode 启动时 MCP 连接失败
可能原因:
- Burp 的 MCP Server 未启动 → 在 Burp 中点击 MCP Server → Start
mcp-proxy.jar路径不对 → 检查桌面是否存在该文件- Java 未安装或版本低 → 运行
java --version确认 - 端口
9876被占用 → 检查是否有其他程序占用
问题:连接成功但工具调用报错
可能原因:
- Burp 版本过低 → 更新到最新版
- MCP Server 扩展版本过低 → 在 BApp Store 检查更新
- Burp 未捕获到任何流量 → 配置浏览器代理后先浏览目标网站
- Proxy Intercept 处于开启状态 → 关闭 Intercept 后再试
问题:查询超时
可能原因:
- History 数据量过大 → 先按条件过滤,分批次查询
- Burp 响应慢 → 增大
timeout值(目前 30000ms) - 网络代理配置问题 → 检查 Burp 的代理监听设置
问题:返回 403 Forbidden
可能原因:
- Burp MCP Server 开启了 External Access 但未提供 Token → 在 MCP Server 设置中关闭 External Access,或获取 Token 后配置认证
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)