返回更新列表
新发布Jul 30, 2026

burp-ai-agent v0.9.2

Burp Suite扩展,增加了内置的MCP工具、AI辅助分析、隐私控制、被动和主动扫描等功能。

分享

Custom AI Agent

Burp Suite 与现代 AI 之间的桥梁。

关于名称的说明: 本扩展以 Custom AI Agent 发布(原名 Burp AI Agent)。更名是为了符合 PortSwigger BApp Store 的命名要求,并避免与 Burp Suite 内置的 Burp AI 提供程序混淆。GitHub 仓库(github.com/six2dez/burp-ai-agent)、文档站点(burp-ai-agent.six2dez.com)以及配置目录(~/.burp-ai-agent/)为保持连续性仍保留 burp-ai-agent 标识符。

Custom AI Agent Screenshot

Custom AI Agent 是一款 Burp Suite 扩展,可将 AI 集成到你的安全工作流中。可使用本地模型或云服务提供商,通过 MCP 连接外部 AI 代理,并让被动/主动扫描器发现漏洞,而你则专注于手动测试。

[!IMPORTANT] 如果你正在运行 1.0.0 或更早版本,请阅读安全公告并升级到最新版本 1.1.0。 在开启审计日志记录时写入的审计文件可能包含 MCP 令牌和完整提示词,并且右键 “发送到 AI”上下文可能绕过隐私模式;两项公告均说明了需要轮换哪些凭据。 其中任何一项均未分配 CVE 或 GHSA 标识符。

v1.1.0 中的新功能

同一仓库构建出两个版本,专为 BApp Store 重新提交而构建。完整详情见 CHANGELOG.md。

  • 两个构建版本。 BApp Store 构建(./gradlew bappJar)包含 8 个扩展原生 MCP 工具、 Burp AI 和六个 HTTP 后端。GitHub 完整构建(./gradlew fullJar)包含全部 59 个 MCP 工具、五个 CLI 后端、外部 MCP 客户端和可选的自动排队功能。两者均发布在 Releases 上,各带一个 .sha256。一次仅加载 一个;选择哪个构建? 对它们进行了比较。
  • BApp Store 构建的 AI 门控。 BApp Store 构建可在 Burp Community 和 Burp Professional 上运行;仅当 Burp 为扩展启用了“Use AI”设置时,它才会发送 AI 请求,若该设置关闭,它会加载并拒绝所有 AI 请求。
  • 被动扫描不会向目标发送任何内容。 AI 主动扫描器可测试的被动发现结果 会在其队列对话框中列为建议目标(两个构建均如此),由你手动排队: 在你确认之前,不会向目标发送任何内容。
  • 干净卸载。 卸载后不会留下扩展的任何线程、定时器或 MCP 监听器在运行,也不会 向 AI 提供程序发起新请求。
  • 问题详情经过 HTML 编码。 载荷、取自目标的值以及 AI 文本在 Burp 的问题视图和报告中 以字面文本显示。
  • AI 扫描器在每次加载时均处于关闭状态,两个构建均如此;开启后持续有效,直到 Burp 卸载该扩展。

v1.0.1 中的新功能

针对 1.0.0 的正确性与隐私热修复。完整详情见 CHANGELOG.md 和 SECURITY.md。

  • 非 ASCII 提示词在所有 HTTP 后端上均可正常工作(#84、#85、#86、#88)。请求体以 UTF-8 字节发送;此前,非 ASCII 字符会被损坏,且目标文本可能改变请求的 JSON 结构。
  • 隐私: 右键上下文、扫描器设置、审计日志记录和聊天链接现在遵循 隐私模式和仅哈希审计默认设置;聊天链接仅在确认后打开。
  • 扫描器安全性: 状态变更请求仅在 DANGEROUS 级别下重放;Burp Scanner AI 检查遵循扫描的资源池和 AI 被动开关。
  • 可靠性: NVIDIA NIM 和 Perplexity 恢复正常工作,后续聊天消息保留其上下文, 且在缓慢或繁忙的机器上脱敏不再丢弃内容。
  • 捆绑库: Netty 4.1.138、Jackson 2.22.3。

v1.0.0 中的新功能

首个稳定版本,也是安全正确性的里程碑。2026-08-05 对 0.9.2 的外部审查通过实际运行已发布的代码确认了两个可利用缺陷;本次发布修复了这两个缺陷,以及同一审查暴露出的更广泛的一类问题。完整细节见 CHANGELOG.md。

已修复并披露:

  • SEC-04(严重) — MCP 访问控制检查未在解析后的路由上运行。启用外部访问时,监听器接受了未经身份验证的工具调用;在本地模式下,Origin/Host/User-Agent 检查和安全响应头在匹配的路由上形同虚设。现在决策在路由之前执行。→ 轮换你的 MCP 令牌
  • PRIV-05(高) — 会话 Cookie 在 STRICT 和 BALANCED 模式下未经脱敏就到达 AI 后端。被动扫描器将 Cookie 输出为裸 name=value,丢弃了作为脱敏依据的前缀,且只有字面名为 session 的 Cookie 会被捕获。→ 轮换受影响的 Cookie

已加固:

  • 模型发出的工具调用现在需要你的批准(SEC-06)— 从模型输出中解析出的工具调用在你做出决定之前不会到达 Burp。各层级均采用失败关闭策略:无法识别的工具名称每次都会要求确认,绝不会静默运行。参见隐私与安全说明。
  • 端口接管期间不再泄露 MCP 令牌(SEC-07)— 此前,一个占用 MCP 端口并回显身份头的本地进程可以获取授予完整 MCP 工具访问权限的令牌。接管客户端现在改为出示 HMAC 持有证明,并且在 TLS 下将服务器证书固定到自己的密钥库。
  • SsrfGuard 可识别替代 IP 表示法(SEC-07)— http://2852039166/(169.254.169.254 的十进制形式)不再仅凭表示法绕过私有/链路本地警告,且分类过程现在完全不进行名称解析。
  • Shell 参数按允许列表进行引用(QUAL-06)— 封堵了从设置导入到命令执行的路径,该路径涉及携带元字符但不含空白字符的值(foo;id、$(cmd))。
  • EDT 隔离与调度器健壮性 — 工具执行、后端 HTTP 和 MCP stop() 已移出 Swing 事件调度线程;周期性任务增加了防护,避免因异常而终止。

已验证: 测试套件从 660 个增长到 158 个类中的 1131 个测试,项目行覆盖率从 34% 提升至 58%,detekt 基线从 1096 缩减至 1040,而非增长。

亮点

  • 12 个 AI 后端 — Burp AI(内置)、Anthropic、Ollama、LM Studio、NVIDIA NIM、Perplexity、通用 OpenAI 兼容、Gemini CLI、Claude CLI、Codex CLI、OpenCode CLI、Copilot CLI。BApp Store 构建包含 7 个(Burp AI 和六个 HTTP 后端);五个 CLI 后端仅在完整构建中提供。
  • 59 个 MCP 工具 — 让 Claude Desktop(或任何 MCP 客户端)自主驱动 Burp(商店构建中有 8 个扩展原生 AI 工具,完整构建中全部 59 个)。
  • 限定范围的 MCP 访问 — 可选择将每个 MCP 工具限制在范围内的主机上,使外部 AI 客户端无法通过 Burp 访问范围外的目标。
  • 62 个漏洞类别 — 覆盖注入、认证、加密等领域的被动和主动 AI 扫描器。被动扫描器作为 Burp PassiveScanCheck 运行(Burp Pro)。
  • 从 Releases 安装 — 从 Releases 下载任一构建;Which Build? 说明了它们的区别。Custom AI Agent 尚未在 BApp Store 中列出:BApp Store 构建正在通过 PortSwigger 的审核,见 extension-portal#231。
  • 主题感知 UI — 内部设计系统为设置面板设置样式,并随 Burp 的浅色/深色切换自动重新应用主题。
  • Burp 扫描技能 — 通过 MCP 将你偏好的 AI 编码助手(Claude Code、Gemini CLI、Codex 等)用作扫描器。
  • 工具调用确认 — AI 发出的工具调用受到门控:只读的有界工具静默运行,其他所有工具都会先在聊天中通过审批卡片询问。未知工具默认拒绝。
  • 3 种隐私模式 — STRICT / BALANCED / OFF。在敏感数据离开 Burp 之前对其进行脱敏。
  • 自定义提示词库 — 按上下文(HTTP 请求或扫描器问题)保存自由格式的提示词;从右键菜单启动它们,或通过 Custom… 输入临时提示词。
  • 审计日志 — 可选的 JSONL 日志,每条记录带有 SHA-256;除非开启详细审计,否则提示词、上下文和响应以 SHA-256 加长度记录,且凭据永远不会被写入;每次启动都标记 promptSource / contextKind 以便复现。

快速开始

1. 安装

从 Releases 下载最新的 JAR:每个版本都包含 Custom-AI-Agent-full-<version>.jar(GitHub 完整构建)和 Custom-AI-Agent-bapp-<version>.jar(BApp Store 构建),各自附带一个 .sha256。Which Build? 说明了该选哪一个。或者从源码构建(Java 21):

git clone https://github.com/six2dez/burp-ai-agent.git
cd burp-ai-agent

# Full build (GitHub releases) — all 59 MCP tools
JAVA_HOME=/path/to/jdk-21 ./gradlew clean fullJar
# Output: build/libs/Custom-AI-Agent-full-<version>.jar

# Store build (BApp Store submission) — 8 extension-native AI MCP tools only
JAVA_HOME=/path/to/jdk-21 ./gradlew clean bappJar
# Output: build/libs/custom-ai-agent-bapp.jar

2. 加载到 Burp

  1. 打开 Burp Suite(社区版或专业版)。
  2. 转到 Extensions > Installed > Add。
  3. 选择 Java 作为扩展类型,并选择 .jar 文件。

该扩展在 Burp 中注册为 Custom AI Agent(即 Extensions 列表和 Suite 标签页中显示的名称),以区别于 Burp 内置的 Burp AI 提供程序。

只加载一个构建版本。 完整构建和 BApp Store 构建都会注册为 Custom AI Agent,因此它们在 Burp 的 Extensions 列表中看起来完全相同。同时加载两者会导致出现两个 Custom AI Agent 标签页、两个 MCP 服务器争用同一端口,以及两份副本写入共享的 ~/.burp-ai-agent 目录。在加载另一个之前,请先卸载其中一个。

Burp 版本与“Use AI”。 BApp Store 构建可在 Burp 社区版和 Burp 专业版上运行;它仅在 Burp 为该扩展启用“Use AI”设置时发送 AI 请求,关闭该设置时它会加载但拒绝所有 AI 请求。PortSwigger 将“Use AI”记录为每个扩展的复选框,默认关闭:Extensions > Installed > Custom AI Agent > Use AI。

Load Extension

3. 代理配置文件

该扩展在首次运行时会将捆绑的配置文件自动安装到 ~/.burp-ai-agent/AGENTS/。 将额外的 *.md 文件放入该目录即可添加自定义配置文件。

4. 配置后端

打开 AI Agent 标签页并转到 Settings。选择一个后端:

分类