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.sh3.连接
- 仪表盘:
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
⚠️ 保安:部署后请务必更改默认密码!
