AI代理风险检查工具

MCP-Safer是一款用于AI代理风险管理的综合工具,提供静态代码分析、SBOM生成与漏洞分析、动态工具验证及数据防泄漏功能。

  • by BOM-Tool
  • JavaScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 BOM-Tool/MCP-SAFER

使用说明

MCP更安全

MCP AI Agent风险管理检查工具

云部署(AWS EC2)

1.创建EC2实例

  • 创建Ubuntu 22.04 LTS实例(建议至少t3.medium)
  • 安全组设置:HTTP(80)、HTTPS(443)、SSH(22)

2.连接和部署服务器

# SSH로 서버 접속
ssh -i your-key.pem ubuntu@your-ec2-ip

# Docker 및 Docker Compose 설치
sudo apt update
sudo apt install -y docker.io docker-compose-plugin git nodejs npm
sudo usermod -aG docker $USER
newgrp docker

# 프로젝트 클론
git clone https://github.com/BOM-Tool/MCP-SAFER.git
cd MCP-SAFER

# PEM 키 파일 설정 (MCP Registry 서버 접속 기능 사용 시 필요)
# MCP Registry 서버에 서버를 등록하는 기능을 사용하려면 PEM 키가 필요합니다
mkdir -p DashBoard/pem
# PEM 키 파일을 DashBoard/pem/MCP-Server.pem에 복사 (scp 또는 직접 업로드)
# 예: scp -i your-key.pem MCP-Server.pem ubuntu@your-ec2-ip:/home/ubuntu/MCP-SAFER/DashBoard/pem/MCP-Server.pem
chmod 400 DashBoard/pem/MCP-Server.pem

# 배포 실행
cd DashBoard
chmod +x start-all.sh
./start-all.sh

3.连接

  • 仪表盘: http://your-ec2-ip:80 或 http://your-ec2-ip:5173
  • 后端API: http://your-ec2-ip:3001/api

📦 模块结构

MCP-SAFER/
├── DashBoard/          # 웹 대시보드 (Frontend + Backend)
├── MCP-SCAN/          # 코드 스캔 모듈
├── SBOM-SCA/          # SBOM 생성 및 취약점 분석
├── TOOL-VET/          # 도구 검증 모듈
└── MCP-GateWay/       # 게이트웨이

🔧 主要功能

仪表盘

  • 注册和管理MCP服务器
  • 查看风险分析结果
  • 检查漏洞报告

MCP-SCAN(静态代码分析)

MCP-SCAN是通过静态分析MCP服务器的源代码来检测安全漏洞的工具。

主要功能:

  • 静态代码分析(SAST):通过分析代码本身而不运行源代码来检测漏洞
  • 多语言支持:Go,TypeScript,JavaScript支持
  • 一般安全漏洞检测:命令注入、路径遍历、SSRF(服务器端请求伪造)、开放重定向
  • MCP特殊漏洞检测:
    • Config Poisoning:注入恶意设置值(数据泄露、身份验证绕过、权限提升等)
    • Tool Poisoning:通过操纵Tool的输入值进行攻击
    • Tool Name Spoofing:伪造Tool名称以引起混乱
    • Tool Shadowing:由同名Tool引起的冲突
    • Toxic Flow:检测危险的数据流
  • 计算危险度分数:根据发现的漏洞计算服务器的整体风险得分

分析结果:

  • 漏洞类型和严重性(CWE映射)
  • 漏洞位置(文件路径、行号)
  • 漏洞描述和修复建议
  • 服务器整体风险评分

SBOM-SCA(SBOM创建和开源漏洞分析)

SBOM-SCA是一种工具,用于生成软件材料清单(SBOM)并分析开源库中的漏洞。

主要功能:

  • 创建SBOM:创建CycloneDX格式的SBOM(Go,npm项目支持)
  • 依赖性分析:直接依赖性和间接依赖性分析
  • 漏洞分析:
    • Go项目: govulncheck使用检测漏洞
    • npm项目: npm audit使用检测漏洞
  • Call Graph分析:分析代码的调用图,以确定是否实际使用了漏洞(Reachability Analysis)
  • 漏洞可达性分析:分析是否在实际代码中调用存在漏洞的程序包
  • 创建仪表板数据:生成仪表板数据以可视化漏洞信息

分析结果:

  • CycloneDX格式的SBOM文件
  • 项目元数据(组件总数、直接/间接依赖性计数)
  • 漏洞列表(CVE ID、严重性、说明)
  • 漏洞可达性(Reachability)
  • 用于仪表板的JSON数据

TOOL-VET(MCP Tool安全验证)

TOOL-VET是通过动态分析MCP服务器上的工具来验证MCP特定安全漏洞的工具。

主要功能:

  • 动态分析(DAST):实际运行MCP服务器以分析工具的行为
  • 运行Sandbox环境:在隔离环境中运行MCP服务器进行安全分析
  • 自动检测运行时:自动检测并运行Go或npm项目
  • 基于代理的HTTP捕获:通过mitmdump捕获Tool调用的外部API请求
  • MCP特殊漏洞检测:
    • MCP-01:人工智能工具选择风险:AI选择危险工具的风险
    • MCP-02:上下文注入风险:AI注入的上下文在未经验证的情况下使用的风险
    • MCP-03:自主执行风险:AI在没有用户确认的情况下自主运行的风险
    • MCP-04:工具组合风险:组合多个工具的风险
  • 漏洞验证:验证通过实际HTTP请求发现的漏洞

分析结果:

  • MCP特殊漏洞列表(MCP-01~MCP-04)
  • 每个漏洞的详细说明和证据
  • API端点信息和调用方法(curl命令)
  • 分析工具与API的关联性
  • 针对漏洞的修复建议

MCP-GateWay(MCP代理和DLP)

MCP-GateWay是一种网关,提供HTTP Proxy和MCP Proxy以安全地使用模型上下文协议(MCP)。

主要功能:

  • MCP代理:为MCP服务器提供代理和路由
    • 服务器-发送事件(SSE)连接代理
    • stdio连接代理
    • 基于HTTP的MCP通信代理
  • HTTP 代理:HTTPS流量解密和数据丢失预防(DLP)功能
    • 通过MITM SSL Interception分析HTTPS流量
    • 记录和监视请求/响应
  • DLP(数据丢失防护):基于AI的敏感信息检测和掩蔽
    • 基于AI的敏感信息自动检测
    • 实时数据掩蔽处理
    • 基于策略的过滤和阻止

主要端口:

  • MCP代理: :8081 -MCP服务器代理
  • HTTP 代理: :8082 -HTTPS流量分析和DLP

📝 默认帐户

部署后登录以下帐户:

  • 管理员: admin / admin
  • 普通用户: user / user

⚠️ 保安:部署后请务必更改默认密码!