返回市场
MCP-守护

MCP-守护

作者:SaravanaGuhan4 星标更新:2025-08-04

项目介绍

<div align="center">

MCP Guard

专为Model Context Protocol服务器设计的专业安全扫描器

MIT许可证 Python 3.8+ 安全扫描器 CVSS v4.0 AIVSS

首个专为MCP服务器设计的开源安全扫描器

快速开始特性文档示例贡献

</div>

概述

MCP Guard 是一个全面的安全评估工具,通过静态分析、动态测试和智能模糊测试来识别Model Context Protocol (MCP)服务器中的漏洞。适用于与AI系统合作的安全专业人员和开发人员。

为什么选择MCP Guard?

  • 首创性:专门为MCP服务器安全评估设计
  • 通用支持:适用于Python、Node.js、Go和基于Docker的MCP服务器
  • 专业评分:实现CVSS v4.0和AIVSS(AI漏洞评分系统)
  • 生产就绪:具备企业级功能和全面报告

快速开始

# 克隆并设置
git clone https://github.com/SaravanaGuhan/mcp-guard.git
cd mcp-guard
pip install -r requirements.txt

# 扫描MCP服务器
python mcp_scanner.py https://github.com/openbnb-org/mcp-server-airbnb

就这样! MCP Guard 将自动检测服务器类型,执行全面的安全分析,并提供详细的漏洞报告。


特性

<table> <tr> <td width="50%">

🔍 全面分析

  • 静态分析:基于模式的漏洞检测
  • 动态测试:实时服务器安全评估
  • 依赖扫描:已知CVE识别
  • 协议验证:特定于MCP的安全检查

🎯 通用服务器支持

  • Python:Django、Flask、FastAPI MCP服务器
  • Node.js/TypeScript:Express、Koa MCP实现
  • Go:原生Go MCP服务器
  • Docker:容器化MCP部署
</td> <td width="50%">

📊 专业评分

  • CVSS v4.0:行业标准漏洞评分
  • AIVSS:AI特定漏洞评估
  • 风险分析:业务影响评估
  • 修复优先级:智能漏洞排名

🚀 企业就绪

  • CI/CD集成:支持GitHub Actions、Jenkins
  • 多种格式:JSON、SARIF、JUnit XML报告
  • 安全门:自动化通过/失败标准
  • 批处理:多仓库分析
</td> </tr> </table>

漏洞检测

MCP Guard 在多个类别中识别安全问题:

类别示例严重程度范围
MCP协议命令注入、路径遍历、认证绕过严重 - 中等
输入验证参数篡改、注入攻击高 - 中等
配置不安全默认值、暴露的秘密中等 - 低
依赖项已知CVE、过时的包严重 - 信息
代码质量硬编码凭证、不安全函数高 - 低

样本输出

================================================================================
MCP GUARD 安全评估报告
================================================================================
目标: https://github.com/openbnb-org/mcp-server-airbnb
服务器类型: Node.js MCP服务器
扫描持续时间: 45.2秒

漏洞总结
├── 总问题数: 5
├── 严重: 1    高: 2    中等: 1    低: 1
├── CVSS v4.0 平均分: 6.8
└── 整体风险: 高

严重级别发现
┌─────────────────────────────────────────────────────────────────────────────
│ [CVE-2024-XXXX] 工具处理器中的命令注入
│ CVSS评分: 9.1 (严重)  |  AIVSS评分: 8.7 (AI高)
│ 文件: src/tools/system.js:45
│ 
│ 描述: 未经过滤的用户输入传递给child_process.exec()
│ 影响: 远程代码执行在服务器上
│ 修复建议: 实现输入验证并使用参数化命令
└─────────────────────────────────────────────────────────────────────────────

建议
• 对所有MCP工具参数实施全面的输入验证
• 更新3个易受攻击的依赖项(express、lodash、axios)
• 启用安全头和HTTPS强制执行
• 添加速率限制以防止滥用

扫描成功完成 ✓

安装

先决条件

  • Python 3.8或更高版本
  • 下载存储库所需的互联网连接
  • Git(可选,用于开发)

标准安装

git clone https://github.com/SaravanaGuhan/mcp-guard.git
cd mcp-guard
pip install -r requirements.txt

开发安装

git clone https://github.com/SaravanaGuhan/mcp-guard.git
cd mcp-guard
pip install -e .
pip install -r requirements-dev.txt

Docker安装

docker build -t mcp-guard .
docker run -v $(pwd):/workspace mcp-guard https://github.com/target/mcp-server

使用示例

基本扫描

# 扫描GitHub存储库
python mcp_scanner.py https://github.com/cloudflare/mcp-server-cloudflare

# 仅静态分析
python mcp_scanner.py --scan-type static https://github.com/target/repo

# 仅动态分析
python mcp_scanner.py --scan-type dynamic https://github.com/target/repo

# 输出到JSON
python mcp_scanner.py --output report.json https://github.com/target/repo

高级用法

from mcp_scanner import UniversalMCPScanner

scanner = UniversalMCPScanner()
results = scanner.scan_mcp_server(
    repo_url="https://github.com/target/mcp-server",
    scan_type="both"
)

print(f"发现 {len(results['vulnerabilities'])} 个漏洞")
print(f"整体风险: {results['summary']['risk_assessment']['overall_risk']}")

支持的MCP服务器

MCP Guard 已经测试了流行的MCP服务器实现:

服务器语言状态发现的漏洞
Airbnb MCP服务器Node.js✅ 测试5个问题被识别
Cloudflare MCP服务器Node.js✅ 测试3个问题被识别
GitHub MCP服务器Go✅ 测试2个问题被识别
PostgreSQL MCP服务器Python✅ 测试4个问题被识别
Docker MCP服务器Go✅ 测试1个问题被识别

架构

graph TB
    A[存储库URL] --> B[存储库处理器]
    B --> C[服务器类型检测]
    C --> D[静态分析引擎]
    C --> E[动态分析引擎]
    D --> F[漏洞评分]
    E --> F
    F --> G[CVSS v4.0评分]
    F --> H[AIVSS评分]
    G --> I[报告生成]
    H --> I
    I --> J[JSON/控制台输出]

核心组件

  • 存储库处理器:下载并分析存储库结构
  • 静态分析引擎:基于模式的漏洞检测
  • 动态分析引擎:实时服务器测试和模糊测试
  • 漏洞评分:CVSS v4.0和AIVSS实现
  • 报告生成器:专业漏洞报告

文档

文档描述
完整设置指南综合安装和配置
快速开始指南三分钟内开始
贡献指南如何为项目做出贡献
项目概述详细的项目概述

贡献

我们欢迎来自安全和AI社区的贡献!

贡献方式

  • 报告错误:发现一个问题?打开一个错误报告
  • 功能请求:有一个想法?请求一个功能
  • 代码贡献:提交改进的拉取请求
  • 文档:帮助改进我们的文档
  • 测试:使用新的MCP服务器进行测试并报告结果

开发设置

git clone https://github.com/SaravanaGuhan/mcp-guard.git
cd mcp-guard
pip install -e ".[dev]"
pytest tests/

安全

MCP Guard 设计时考虑了安全性:

  • 安全存储库处理:安全下载和清理过程
  • 沙箱执行:隔离的动态分析环境
  • 输入验证:防止恶意存储库内容
  • 资源限制:CPU、内存和时间约束
  • 网络安全:仅HTTPS下载并带有超时保护

许可证

本项目采用MIT许可证 - 查看LICENSE文件了解详情。


致谢

  • MCP社区:开发Model Context Protocol
  • 安全研究人员:进行漏洞研究和最佳实践
  • 开源贡献者:使这个项目成为可能
  • CVSS工作组:CVSS v4.0规范

<div align="center">

为MCP和安全社区打造

⭐ 关注此仓库🐛 报告问题💬 讨论

</div>