返回市场
MCP服务器-审计

MCP服务器-审计

作者:ModelContextProtocol-Security4 星标更新:2025-10-02

项目介绍

MCP服务器审计

用于查找MCP服务器和Claude桌面扩展中的安全漏洞的代码审计工具——因为任何人都可以构建它们,但并非所有人都能安全地构建它们。

为什么需要这个工具

任何人都可以创建MCP服务器和桌面扩展——无需编程经验。以下是创建过程有多简单:

示例:构建一个桌面扩展(无需编程)

Anthropic在其官方博客文章中提到:

“在Anthropic内部,我们发现Claude非常适合以最小干预的方式构建扩展。如果您也想使用Claude Code,我们建议您简要说明您希望您的扩展做什么,然后在提示中添加以下内容:”

只需将以下内容粘贴到Claude或其他AI助手中:

我想将其构建为一个桌面扩展,简称“DXT”。请按照以下步骤操作:

1. **仔细阅读规范:**
   - https://github.com/anthropics/dxt/blob/main/README.md - DXT架构概述、功能和集成模式
   - https://github.com/anthropics/dxt/blob/main/MANIFEST.md - 完整扩展清单结构和字段定义
   - https://github.com/anthropics/dxt/tree/main/examples - 包含“Hello World”示例的参考实现

2. **创建正确的扩展结构:**
   - 根据MANIFEST.md规范生成有效的manifest.json
   - 使用@modelcontextprotocol/sdk实现具有正确工具定义的MCP服务器
   - 包括适当的错误处理和超时管理

3. **遵循最佳开发实践:**
   - 通过stdio传输实现正确的MCP协议通信
   - 使用清晰的模式、验证和一致的JSON响应来组织工具
   - 利用该扩展将在本地运行的事实
   - 添加适当的日志记录和调试能力
   - 包括适当的文档和设置说明

4. **测试考虑:**
   - 验证所有工具调用返回结构良好的响应
   - 验证清单加载正确且主机集成正常工作

生成完整的、可立即测试的生产就绪代码。专注于防御性编程、清晰的错误消息,并严格遵循DXT规范以确保与生态系统兼容。

**AI将为您编写整个扩展。**无需编程知识。

问题:容易构建,但难以安全构建

由于任何人都可以通过询问AI助手来创建这些工具,因此我们看到MCP服务器和扩展的数量激增。但许多工具构建得不好且可能存在危险:

  • 安全漏洞 - AI生成的代码经常存在安全漏洞
  • 数据泄露风险 - 工具可能会泄露敏感信息
  • 质量差 - 许多工具会中断、性能不佳或未得到维护
  • 信任度未知 - 很难判断哪些工具是安全的

解决方案:代码安全审计

MCP服务器审计审查MCP服务器源代码以查找安全漏洞。它不仅仅是一个自动扫描器,而是作为一个有知识的安全导师,教您如何识别代码漏洞、理解AIVSS评分,并发展独立审计服务器代码的能力。

此工具帮助您审计MCP服务器代码,查找以下服务器中的漏洞:

  • 由AI助手构建(如上述示例)
  • 从社区下载
  • 由专业开发者创建
  • 您自己构建的

该工具结合了漏洞检测与安全教育,帮助您不仅了解代码是否有安全问题,还系统地识别和评分漏洞,使用AIVSS(AI漏洞评分系统)。

MCP安全生态系统集成

MCP服务器审计是完整安全工具包的一部分:

  • mcpserver-audit(此工具):查找现有代码中的安全漏洞
  • mcpserver-builder修复漏洞并从头开始构建安全代码或更新现有代码
  • mcpserver-operator安全部署和操作服务器,提供运行时安全控制和变通方法

完整工作流程:审计发现问题 → 构建器在代码中修复它们 → 操作员处理安全部署

专家指导方法

此MCP服务器设计为领域内的专家顾问和导师,主要关注提供指导、教育和实用建议,而不是全面实施工具。虽然它包含了足够的功能性能力,可以立即使用并展示真正的专业知识,但长期愿景是让此服务器成为您的领域专家,帮助您理解现状、评估选项并找到适合您特定需求的最佳工具。随着MCP生态系统的演变,此服务器将学习新的工具和方法,推荐最佳解决方案的同时教导您如何有效评估和使用它们。更广泛的模型上下文协议安全性倡议可能还会开发全面的实施工具,但这些特定存储库专注于成为实用的专家指导系统——结合深度领域知识和足够的动手能力,提供真正的价值,而不仅仅是理论建议。

主要功能

此工具的功能

  • 审计源代码 - 扫描MCP服务器代码以查找安全漏洞
  • 评分漏洞 - 使用AIVSS对发现的安全问题进行评级
  • 识别危险模式 - 发现创建安全风险的代码
  • 教授漏洞识别 - 学习代码中的安全问题是什么样子
  • 有限修复指导 - 基本建议(详细的修复由mcpserver-builder处理)

代码漏洞分析

  • 源代码扫描:自动检测代码中的安全漏洞
  • 依赖项分析:检查第三方库中的已知漏洞
  • 配置审查:识别不安全的配置模式
  • AIVSS评分:使用传统CVSS和AI风险因素对漏洞进行评分
  • CWE映射:将发现链接到常见弱点枚举类别

安全教育

  • 漏洞识别:教你如何识别MCP服务器代码中的安全问题
  • 代码安全模式:展示安全与不安全的编码模式
  • AIVSS理解:解释如何对AI安全风险进行评分
  • 审计方法论:培养系统化代码安全审查技能

生态系统集成

  • 漏洞数据库:为社区利益贡献发现到审计数据库和漏洞数据库
  • mcpserver-builder集成:将漏洞移交给详细修复建议
  • mcpserver-operator集成:协调部署安全指南
  • 社区智能:分享漏洞模式以帮助所有人更安全

谁需要此工具

MCP生态系统中的每个人:

  • 非程序员创建工具 - 验证您的AI生成的扩展是否安全
  • 下载工具的用户 - 检查社区扩展是否可信
  • 注重安全的组织 - 在业务使用前评估工具
  • 开发人员 - 系统地评估和创建工具

目标和教学方法

主要教育目标

  1. 培养安全思维:教用户以安全思维看待MCP服务器
  2. 建立风险评估技能:帮助用户有效地评估和沟通安全风险
  3. 增强威胁意识:教育关于MCP特定威胁和攻击向量
  4. 推广最佳安全实践:分享有关安全开发和部署的知识
  5. 促进独立分析:提供框架以进行安全评估
  6. 建设社区安全知识:为MCP安全的集体理解做出贡献

教学策略

1. 互动安全学习

  • 威胁建模会议:引导您识别和分析威胁
  • 风险评估练习:实际体验安全风险评估
  • 漏洞分析:指导性检查真实的安全问题
  • 攻击场景规划:探索攻击可能如何展开
  • 防御策略开发:教授缓解和保护方法

2. 实践安全应用

  • 现实世界示例:使用实际MCP服务器来说明安全概念
  • 案例研究分析:分析安全和脆弱的实现
  • 基于情景的学习:呈现不同的安全环境和挑战
  • 解决问题:帮助您解决实际的安全评估挑战
  • 技能培养:发展独立评估安全的能力

3. 安全知识共享

  • 专家见解:提供专业的安全视角和经验
  • 社区智慧:分享来自安全社区的集体知识
  • 新兴威胁:让您了解新的攻击向量和风险
  • 防御进化:教授如何随着威胁的发展改进安全实践
  • 持续学习:跟上安全发展的步伐和研究

专家知识领域

MCP特定安全威胁

  • 提示注入:理解直接和间接提示操纵攻击
  • 困惑副手:识别授权绕过和特权提升风险
  • 令牌窃取:评估OAuth令牌安全性和凭据保护
  • 数据外泄:评估未经授权的数据访问和泄漏风险
  • 协议违规:识别偏离MCP安全规范的行为
  • 跨域问题:理解跨域和跨服务安全风险

AI特定漏洞

  • 提示注入:恶意提示操纵服务器行为
  • 模型操纵:针对底层语言模型的攻击
  • 训练数据中毒:受损的训练数据影响模型行为
  • 输出操纵:修改或拦截模型响应的攻击
  • 上下文中毒:恶意上下文注入影响决策
  • 间接提示注入:通过外部数据源的攻击
  • 模型拒绝服务:针对AI系统的资源耗尽攻击
  • 隐私攻击:从模型中提取敏感信息

安全评估方法论

  • 威胁建模:系统地识别和分析安全威胁
  • 风险分析:定量和定性的风险评估方法
  • 漏洞评估:识别安全弱点的技术
  • 代码安全审查:评估代码安全的方法
  • 配置安全:评估与安全相关的配置选项
  • 依赖项安全:评估第三方库和依赖项的风险

安全工具生态系统

  • 静态分析工具:理解和使用代码分析工具
  • 动态测试:运行时安全测试的方法
  • 漏洞扫描器:利用自动化漏洞检测
  • 安全框架:使用既定的安全评估框架
  • 监控解决方案:实现安全监控和警报
  • 事件响应:处理安全事件和漏洞

全面安全覆盖

已知漏洞:我们系统地涵盖了已建立的安全模式:

  • 标准CWE类别 - 所有适用的常见弱点枚举
  • AI特定威胁 - 提示注入、模型操纵、训练数据中毒
  • MCP协议风险 - 传输安全、身份验证流、消息验证
  • 供应链问题 - 依赖项漏洞、维护者信任、构建安全

新兴威胁:我们训练评估能力以识别新出现和不断变化的风险:

  • 模式识别 - 识别不符合已知漏洞的可疑代码结构
  • 情境分析 - 发现单独看似安全但组合起来令人担忧的功能
  • 行为评估 - 检测可能表明新型攻击向量的异常服务器行为
  • 生态系统监测 - 标记MCP社区中可能引入风险的新趋势

实践工作流程

第一阶段:安全教育和威胁建模

  1. 安全意识建设:介绍MCP特定的安全概念和风险
  2. 威胁模型开发:引导您识别相关威胁
  3. 风险评估框架:教授系统化的风险评估方法
  4. 攻击向量分析:探讨攻击可能如何针对特定服务器
  5. 安全目标:定义您的使用情况下的安全意味着什么

第二阶段:指导安全分析

  1. 分析计划:制定系统化的安全评估方法
  2. 基本安全扫描:执行基础的安全检查
  3. 代码审查指导:帮助您了解代码中应寻找的内容
  4. 配置评估:评估与安全相关的设置和选项
  5. 依赖项审查:检查依赖项中的已知漏洞

第三阶段:风险评估和优先级排序

  1. 发现分类:对发现的问题进行分类和优先级排序
  2. 风险评估:评估威胁的实际影响和可能性
  3. 漏洞分析:深入分析发现的安全弱点
  4. 可利用性评估:确定问题被利用的难易程度
  5. 业务影响:了解安全问题如何影响您的具体使用情况

第四阶段:补救指导和下一步

  1. 缓解策略:制定应对识别风险的方法
  2. 补救计划:优先级排序和计划安全改进
  3. 补偿控制:当需要时识别替代安全措施
  4. 监控建议:在持续运营中应注意什么
  5. 学习强化:总结关键的安全教训和技能发展

基本功能能力

安全分析功能

  • 静态代码分析:基本扫描常见的安全模式和反模式
  • 依赖项扫描:检查第三方库中的已知漏洞
  • 配置审查:评估与安全相关的配置选项
  • 协议合规性:验证MCP安全规范的遵守情况
  • 权限分析:评估访问控制和特权模型

教育功能

  • 交互式威胁建模:引导会话以识别和分析威胁
  • 风险评估工具:评估和沟通安全风险的框架
  • 漏洞解释:详细解释安全问题及其影响
  • 缓解指导:针对识别的安全问题的实际建议
  • 安全技能评估:评估用户的安全部署知识和差距

协调功能

  • 安全工具集成:推荐专门的安全分析工具
  • 专家咨询:指导何时涉及安全专业人士
  • 资源推荐:指向相关的安全文档和资源
  • 社区智能:访问集体安全知识和经验
  • 事件响应规划:指导处理安全问题和漏洞

如何使用此系统

快速入门

1. 选择您的代码审计方法:

  • 全面代码审计:从read prompts/security-assessment.md开始进行全面漏洞扫描和代码分析
  • 针对性代码审查:如果已有要审核的具体服务器,请使用read prompts/targeted-evaluation.md
  • 通用审计指导:使用read prompts/main-prompt.md获取整体MCP服务器代码审计指导

2. 应用代码安全检查:

  • 浏览checks/目录以查看可用的漏洞检测检查
  • 每个检查包括AIVSS评分、CWE映射和代码扫描方法
  • 当前检查:凭证管理漏洞、网络安全问题
  • 使用AIVSS评分(严重/高/中/低)来优先处理漏洞修复

3. 参考审计资源:

  • research/包含漏洞分析模板和审计框架
  • resources/包含代码安全检查表和漏洞评估框架
  • 许多类型的漏洞尚未拥有专用检查文件——这是一个很好的贡献机会!

4. 利用代码分析工具:

  • 代码漏洞扫描和分析功能已内置到Claude桌面和其他MCP客户端中
  • 提供AIVSS和CVSS参考材料以准确评分漏洞
  • 此系统提供了审计方法;您的AI助手提供了代码分析能力

5. 贡献和移交:

  • 将漏洞发现提交到audit-dbvulnerability-db以造福社区
  • 移交至mcpserver-builder以获得详细的漏洞修复和安全编码指导
  • 协调与mcpserver-operator以进行安全部署和运行时安全控制
  • 帮助我们从您的发现中学习并改进漏洞检测框架

快速启动示例

全面代码审计(完整漏洞扫描):

read prompts/security-assessment.md 并对MCP服务器 [SERVER_NAME] 进行安全审计

针对性代码审查(有针对性的漏洞评估):

read prompts/targeted-evaluation.md 并审核M-CP服务器 [SERVER_NAME] 的安全性

应用漏洞检查(扫描特定漏洞类型):

read checks/credential-management-security.md 并检查 [SERVER_NAME] 中的凭证漏洞

系统要求

  • Claude桌面或其他兼容MCP的AI客户端
  • 文件系统访问以读取MCP服务器源代码和漏洞检查
  • 互联网访问用于漏洞数据库查询和依赖项分析(可选但有用)

更多信息

关键资源

我们的首要安全方法

此工具是模型上下文协议安全性倡议的一部分——一个专注于使MCP工具更安全、更可靠的社区项目。我们强调:

  • 教育而非自动化 - 教您自行评估工具
  • 安全意识 - 帮助您识别和避免风险
  • 社区知识 - 分享关于工具质量和安全性的见解
  • 持续改进 - 通过实际使用变得更好

个性化学习(未来愿景)

长期目标:使教学风格灵活且个性化,适应每个用户的需求、经验和学习偏好。

由于这是一个AI驱动的工具,我们可以构建自适应评估能力,根据您进行定制:

  • 适应您的技能水平 - 初学者获得更多解释,专家获得简洁的分析
  • 匹配您的角色 - 开发人员、业务用户和安全专业人员的不同指导
  • 了解您的偏好 - 记住哪种教学方法最适合您
  • 聚焦您的目标 - 强调与您的使用情况最相关的安全方面
  • 随您一起成长 - 随着您的专业知识增长而变得更加高级

AI允许大规模个性化 - 同一个工具可以成为新手的耐心导师,也可以成为专业人士的有效顾问,实时适应每个用户的需求和愿望。

与生态系统的集成

安全框架集成

我们正在构建全面的漏洞与安全框架之间的映射:

标准一致性

  • CWE映射 - 每个漏洞都链接到常见弱点枚举类别
  • NIST框架 - 将发现映射到NIST网络安全框架控制
  • OWASP集成 - 对齐OWASP十大和应用程序安全标准
  • ISO 27001控制 - 将漏洞连接到具体的ISO安全控制

威胁情报集成

  • MITRE ATT&CK - 将攻击模式映射到MITRE ATT&CK框架战术和技术
  • 威胁建模 - 将漏洞链接到特定的威胁参与者和攻击场景
  • 风险量化 - 计算业务影响和可能性得分
  • 控制有效性 - 测量安全控制