arunsanna/mcp-bom
GitHub: arunsanna/mcp-bom
MCP-BOM 是一个针对 Model Context Protocol 服务器的可复现攻击面基准测试工具,通过八类权限分类法和 0-100 评分函数对 MCP 服务器进行清单编制和风险量化。
Stars: 0 | Forks: 0
# MCP-BOM
**Model Context Protocol 服务器的可复现攻击面基准测试**
作者:Arun Chowdary Sanna
状态:开发中 — 目标为 NeurIPS 2026 评估与数据集赛道
硬性冻结:2026 年 5 月 6 日 AoE
工作看板:实时任务追踪于 [GitHub Issues](https://github.com/arunsanna/mcp-bom/issues),并同步至 AI Memory 下的 `mcp-bom` 项目。每个问题均按优先级(`priority-critical/high/medium/low`)和阶段(`phase-build`、`phase-submission`、`phase-post-submission`、`phase-camera-ready`)进行标记。
## 这是什么
MCP-BOM 是一个自动化工具和可复现基准测试,针对任意 Model Context Protocol(MCP)服务器,实现当前公开工作尚未同时做到的两件事:
1. 使用结构化的八类分类法对服务器的声明能力和权限范围进行**清单编制**。
2. 将服务器的攻击面**评分**为 0–100 的数值,权重来源于 OWASP Agentic Top 10 的严重程度。
交付物包括:来自 npm、PyPI、GitHub 和 `mcp.run` 的 500 个真实公共 MCP 服务器的标注基准数据集,以及开源的提取器和评分方法。
## 为何存在
MCP 是生产级 AI 代理的默认工具传输协议 — MIT 2025 AI 代理指数中的 30 个系统中有 20 个支持它。该协议不强制执行最小权限原则。Trend Micro 识别出 492 个公开暴露的 MCP 服务器,没有任何身份验证或加密。CVE-2025-6514(`mcp-remote` 远程代码执行,CVSS 9.6)和 CVE-2025-49596(MCP Inspector CSRF→远程代码执行,CVSS 9.4)展示了来自不受信任端点的端到端妥协。Hasan 等人(arXiv:2506.13538 v5)扫描了 1,899 个服务器并报告了聚合健康统计 — 但没有每个服务器的评分,也没有权限分类法。
OWASP MCP Top 10 和 OWASP Agentic Top 10(2026)定义了定性风险类别。目前没有公开的方法论来将其操作化。
## 真正的差距
以下三个要素从未在任何公开文献或任何经过同行评审的工具中结合在一起:
1. **结构化权限清单。** 现有扫描器均未将 MCP 工具能力映射到能力范围分类法(文件系统、shell、网络、密钥、服务器间委托等)。
2. **每个服务器的数值攻击面评分。** 行业工具(如 Cisco"动态风险评分")存在但是专有的。Hasan 等人仅报告聚合统计。
3. **带有真值的可复现基准测试。** 没有论文汇编带有权限范围测量和可比风险评分的 MCP 服务器标注语料库。
Hasan 等人 v5 于 2026 年 4 月 30 日经过实时验证,仍保留仅聚合报告。创新门槛清晰明确。
## 本仓库内容
```
mcp-bom/
├── README.md this file
├── LICENSE Apache 2.0
├── CITATION.cff citation metadata
├── docs/
│ ├── prior-art-assessment.md full landscape and gap statement
│ ├── capability-taxonomy.md 8-category permission spec
│ ├── score-function.md 0–100 scoring methodology
│ └── build-plan.md six-day build plan to May 6
├── paper/
│ └── outline.md paper section structure
├── extractor/ static extractor implementation (TBD May 2)
├── corpus/ 500-server benchmark manifest (TBD May 1)
└── validation/ inter-rater + MCPLIB + CVE correlation (TBD May 4)
```
## 六天构建计划
| 天 | 日期 | 工作 |
| --- | ----- | ------------------------------------------------------------------------------------- |
| 1 | 5 月 1 日 | 抓取语料库;最终确定能力分类法;冻结评分函数 v1 |
| 2 | 5 月 2 日 | 构建静态提取器;在前 100 个服务器上运行;迭代规则 |
| 3 | 5 月 3 日 | 在完整 500 服务器语料库上运行;生成评分分布 |
| 4 | 5 月 4 日 | 验证套件(评分者间一致性 + MCPLIB 重放 + CVE 关联);AoE 提交摘要 |
| 5 | 5 月 5 日 | 论文草稿(引言、方法论、结果、相关工作);冻结仓库 |
| 6 | 5 月 6 日 | 论文润色;完整提交 AoE |
## 方法论摘要
**数据集**:按安装量分层的 500 个公共 MCP 服务器,来源于 npm `@modelcontextprotocol`、PyPI、GitHub 主题 `mcp-server` 和 `mcp.run` 目录。
**静态提取器(第一层)**:解析 MCP `tools/list` 模式和实现源码,匹配八个权限类别的 API 模式。输出为每个服务器的能力范围向量。
**评分函数(第二层)**:能力向量的加权求和,权重来源于 OWASP Agentic Top 10 严重程度,加上能力广度、权限深度、暴露面和来源的独立分量。归一化至 0–100。
**可选动态层(最终版扩展)**:沙盒化每个服务器,观察声明与实际的工具调用行为,将偏差标记为额外风险信号。复用配套 AgentMesh 项目的 MCPSecBench 框架。
## 验证
- **评分者间可靠性**:50 个服务器保留子集(Cohen's κ)。
- **MCPLIB 攻击重放**(31 种攻击类型,arXiv:2508.12538)— 高分服务器应失败更多。
- **CVE 关联** — 已知严重 CVE(CVE-2025-6514、CVE-2025-49596)应落在评分分布的高端。
- **跨来源一致性** — 同一服务器打包在多个注册表中应在容差范围内评分。
## 相关工作
| 工具 / 论文 | 功能 | 缺失 |
| ---------------------------------- | ----------------------------------------------- | ------------------------------------------------------ |
| Snyk Agent Scan(Invariant Labs) | 检测工具描述中的恶意模式 | 无权限分类法,无数值评分 |
| Cisco AI Defense MCP 扫描器 | YARA + LLM 即判断器 + 企业评分 | 方法论私有;开源层仅分类 |
| Proximity(fr0gger)| NOVA 规则;标记分类发现 | 无评分,无基准语料库 |
| Hasan 等人(arXiv:2506.13538 v5)| 1,899 服务器静态分析,聚合统计 | 无每服务器评分,无权限分类法 |
| MCPLIB(arXiv:2508.12538)| 31 攻击分类法 + 模拟 | 无真实语料库,无评分 |
| OWASP AIBOM 生成器 | HF 模型的 CycloneDX BOM,完整性评分 | 无 MCP 覆盖,无风险评分 |
完整先验评估见 `docs/prior-art-assessment.md`。
## 配套工作
- **Agent-BOM(ACM JRC)** — 模式级上游;定义代理层面需披露的内容。MCP-BOM 在 MCP 服务器层面将其操作化。
- **AgentMesh(ACM CCS Cycle B)** — OPA 代理 + MCPSecBench 评估框架;可复用于动态验证层。
- **OWASP AIBOM 生成器** — 自然参考实现宿主。扩展其以输出 MCP-BOM 保持贡献在 OWASP 内部。
## 许可证
Apache 2.0。参见 `LICENSE`。
## 引用
机器可读元数据参见 `CITATION.cff`。建议的人类可读引用:
```
Sanna, A. C. (2026). MCP-BOM: A Reproducible Attack-Surface Benchmark for
Model Context Protocol Servers. NeurIPS 2026 Evaluations & Datasets Track.
```
标签:AES-256, AI安全, Chat Copilot, CSRF, CVE, Homebrew安装, Least Privilege, MCP, Model Context Protocol, NeurIPS, npm, PyPI, RCE, 协议安全, 威胁建模, 安全基准测试, 密钥泄露防护, 工具集成, 攻击面评估, 数字签名, 暗色界面, 机器学习安全, 权限控制, 漏洞评估, 网络安全, 自动化安全检测, 逆向工具, 隐私保护, 风险评分