Token导航 LogoToken导航TokenDH.com
MCP Asd logo
安全风控stdio官方级别未说明来源级核验

MCP Asd

MCP Server

MCP-ASD是一个Burp Suite扩展,用于识别、映射和测试Model Context Protocol(MCP)服务器的攻击面,支持SSE、WebSockets和HTTP POST协议,适用于安全审计和渗透测试。

工具数

0

提示词数

0

GitHub Stars

28

资源数

0
安全审计Java渗透测试

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

hoodoer

提供方

hoodoer

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 mcp_server.py

详细介绍

MCP攻击面探测器(MCP-ASD)

版本:1.0.2

MCP-ASD是Burp Suite扩展(Montoya API),旨在识别、映射和测试模型上下文协议(MCP)服务器的攻击面。

它在Burp的同步测试工具(中继器、入侵者、扫描器)和MCP连接的异步、持久性(SSE和WebSockets)之间架起了一座桥梁。这允许安全专业人员使用标准的web测试工作流审核MCP工具、资源和提示。

特性

  • 多协议支持: 完全支持服务器发送事件(SSE)、WebSockets(ws/wss)和仅HTTP POST传输(适用于不支持GET/SE的服务器)。
  • 端点自动发现: 自动检测MCP端点,包括检测需要身份验证的受保护端点。
  • 攻击面计数: 自动发现并可视化工具、资源和提示,包括参数的模式提取。
  • 同步桥接: 通过处理异步ID关联和会话管理,实现Burp Repeater和Intruder的无缝使用。
  • 原型生成: 根据发现的工具模式自动生成有效的JSON-RPC有效载荷。
  • 身份验证和mTLS: 支持自定义HTTP头(OAuth承载令牌、API密钥)和mTLS客户端证书(PKCS#12)。
  • 本地集成: 报告发现MCP服务器直接发送给Burp 目标仪表盘.
  • 高级检测: 包括对已发现域上的MCP服务器进行被动监视和主动探测。
  • 身份验证网关检测: 通过识别指向身份验证端点的重定向模式(包括URL编码的origurl参数)来检测身份验证网关(Zscaler、OAuth、SAML、SSO)后面的MCP端点。

安装

先决条件

  • Java JDK 17+
  • Burp Suite专业版或社区版(2023.12.1+)

从源头构建

_注意:在以下位置有一个预编译的.jar:_\ https://github.com/hoodoer/MCP-ASD/releases/tag/v1.0

git clone https://github.com/your-repo/mcp-asd.git
cd mcp-asd
./gradlew shadowJar

生成的JAR将位于 build/libs/mcp-asd.jar.

加载扩展

  1. 打开Burp套房。
  2. 导航至 扩展 -> 已安装.
  3. 点击 添加.
  4. 选择 Java 并浏览到生成的 mcp-asd.jar.

用法

1.连接管理

  • 使用 新建连接 MCP-ASD选项卡中的按钮连接到服务器。
  • 自动检测端点 该功能标识了常见的MCP路径。
  • 连接设置(主机、端口、标头、证书)在会话期间保持不变。
  • 取消按钮: 如果连接尝试挂起或耗时过长,请使用 取消 按钮中止握手并重置界面。

*图1:启动新连接*

*图2:自动发现端点*

*图3:检测到需要身份验证*

*图4:配置身份验证*

2.全局设置和检测

点击 设置 顶部标题中的按钮,用于配置高级选项:

  • 内部交通能见度:

- 代理握手/枚举流量: 通过Burp的本地代理侦听器路由扩展的内部SSE/Webocket流量(默认值: 127.0.0.1:8080).这允许您在Burp的数据库中看到“不可见”的握手和枚举请求 日志记录器代理历史记录.

  • MCP服务器检测:

- 被动检查: 监控MCP指示器的所有通过流量(例如。, MCP-Protocol-Version 标头、JSON-RPC主体、身份验证网关重定向)。提高一个 信息问题 如果检测到Burp。 - 主动检测: 自动探测新域中的常见MCP端点(/mcp, /sse, /ws等等)。检测认证网关后面的端点(302/303重定向到OAuth、SAML、SSO、Zscaler等)。 - 范围限制: 将活动检测探针限制在Burp Target作用域中的域(推荐)。

*图5:MCP ASD设置*

*图6:MCP服务器活动检测警报*

3.身份验证

连接对话框包括一个专用的“身份验证”选项卡,支持三种策略:

  • HTTP标头: 添加自定义标题(例如。, Authorization: Bearer , X-API-Key: )到运输连接。
  • mTLS(双向TLS): 提供PKCS#12(.p12)客户端证书和密码。这允许扩展与需要客户端证书的服务器握手。
  • 初始化参数: 将自定义JSON字段注入MCP initialize 握手。

- *用途:* 粘贴JSON对象(例如。, {"apiKey": "secret", "env": "prod"})进入文本区域。 - *效果:* 这些字段合并到 params 对象 initialize 连接后立即发送JSON-RPC消息。

*图7:配置身份验证*

4.身份验证可见性注释

重要提示: MCP-ASD在内部管理身份验证和传输级安全(mTLS)。当您在连接对话框中配置标头或证书时,它们将由扩展注入到实际的传输连接中。 您在中继器或入侵者请求中看不到这些标头,因为这些请求被发送到扩展的内部虚拟网桥。

5.映射和枚举

连接后,扩展程序会用标识的原语填充仪表板:

  • 工具: 可执行函数。
  • 资源: 数据源或文件。
  • 提示: 预定义模板。

*图8:MCP主要元素列举*

*图9:选择primative以生成请求原型*

6.安全测试

  • 发送到中继器: 手动测试工具调用。中继器标签被自动命名(例如。, MCP: get_weather)为了便于识别。
  • 发送给入侵者: 执行并发模糊测试。该扩展确保了请求和响应的线程安全关联。

*图10:同步网桥允许请求/响应式中继器和入侵者使用*

7.服务器信息

  • 点击 察看连接信息 顶部标题中的按钮,用于查看有关连接的MCP服务器的详细元数据。
  • 这包括服务器名称、版本、协议版本、支持的功能和完整的系统说明(提示)。

*图11:一些MCP服务器提供的服务器信息*

工作原理(建筑)

MCP-ASD解决了Burp Suite和模型上下文协议之间的基本阻抗不匹配问题:

  • Burp Suite 针对同步、无状态HTTP(请求->响应)进行了优化。
  • 主控程序 依赖于异步、持久的连接(服务器发送事件或WebSockets),其中消息(JSON-RPC)可以在任何时候向任何方向流动,通常在传输层没有1:1的请求/响应相关性。

为了弥合这一差距,MCP-ASD实施了一种新的 “虚拟代理”体系结构:

1.异步传输层

与使用的标准Burp扩展不同 Burp.Http,MCP-ASD利用专用、强大的HTTP客户端(OkHttp)以管理持久MCP连接。

  • 正当理由: 标准HTTP客户端(包括Burp的本机API)阻止等待响应主体完成。对于SSE(服务器发送事件),响应体是一个永远不会完成的无限流。尝试使用标准方法读取它会导致线程无限期挂起。
  • 解决方案: 该扩展维护了一个专用的后台线程,该线程逐个事件读取无限流事件,与Burp UI解耦。

2.同步电桥

当您从Burp Repeater或Intruder发送请求时:

  1. 虚拟端点: 您向发送一个标准的HTTP POST请求 http://mcp-asd.local/invoke.
  2. 拦截: 扩展的 HttpHandler 在离开Burp之前拦截此请求。
  3. 自动ID关联: 扩展 自动覆盖 id 领域 在JSON中使用唯一的UUID。这确保了即使在高并发入侵者攻击中,每个请求都与其特定的响应完全相关。 您不需要在Repeater中手动更改ID。
  4. 注射: 它将消息注入到 *活跃的* 持久SSE/Webocket连接。
  5. 螺纹阻塞: 扩展暂停Burp请求线程并等待。
  6. 缝合: 当匹配的JSON-RPC响应从服务器到达时,扩展将其“缝合”为标准的HTTP 200 OK响应,并将其返回给Burp。

这允许您使用Intruder强大的有效载荷对MCP工具进行模糊化,而无需中断持久连接,也不需要为每次模糊化尝试重新进行身份验证。

开发测试服务器

包含一个模拟MCP服务器,用于测试扩展的功能。

需求

pip3 install -r requirements.txt

执行

python3 mcp_server.py

服务器支持身份验证(承载令牌: bearer-token-123).

联系

德鲁·柯克帕特里克\ @帽衫\ hoodoer@bitwisemunitions.dev

你可以在TrustedSec找到我。

目录标签

目录标签

安全审计Java渗透测试本地部署BurpSuite扩展MCP协议攻击面检测

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP