ShadowDiscovery:MCP安全扫描程序
ShadowDiscovery 是一种专门的安全诊断工具,旨在发现和分析 模型上下文协议(MCP) 在本地计算机上运行的服务器。随着人工智能代理越来越多地使用本地服务器与您的操作系统进行交互,“影子MCP”是指可能暴露敏感数据的未经授权或不受监控的连接器。
______________________________________________________________________
🚀 特性
- 多平台检测:自动识别Windows、macOS和Linux的配置路径。
- 主动进程扫描:用途
psutil通过监视以下关键字来查找正在运行的MCP实例npx,uvx,以及modelcontextprotocol. - 配置解析:支持基于列表的两种方式(
[[mcp_servers]])基于词典([mcp_servers.name])TOML/JSON配置。 - LLM安全审计:与集成 奥利玛云 (Llama 3.1)对暴露的工具集进行自动风险评估。
- 交互式仪表板:基于Flask的web UI,用于管理配置、触发扫描和查看实时结果。
______________________________________________________________________
🛠️ 需求
要运行此应用程序,请确保已安装Python 3.11+以支持 tomllib 本地。
Flask==3.0.3
psutil==5.9.8
requests==2.31.0
pathlib==1.0.1
______________________________________________________________________
📂 项目结构
app.py:处理路由、配置保存和报告导出的主Flask web服务器。shadow_discovery.py:执行文件系统搜索和进程检查的核心引擎。mcp_connector.py:用于通过JSON-RPC从基于HTTP的MCP服务器获取工具定义的实用程序。ollama_analyzer.py:与Ollama Cloud API接口,用于分析服务器元数据中的安全漏洞。
______________________________________________________________________
⚙️ 设置和使用
1.配置
扫描仪依赖于 config.json 文件,以了解在哪里查找MCP客户端(如Claude Desktop)。例子:
{
"platforms": {
"darwin": {
"clients": [
{
"name": "Claude Desktop",
"config_paths": ["~/Library/Application Support/Claude/claude_desktop_config.json"]
}
]
}
}
}
2.安装
pip install -r requirements.txt
3.执行
python app.py
打开浏览器 http://127.0.0.1:5000.
______________________________________________________________________
🛡️ 证券分析
要启用“高级网络安全分析师”AI模式:
- 导航到 高级 UI中的部分。
- 输入你的 Ollama Cloud API密钥.
- 系统将生成JSON格式的风险报告,包括:
- 风险水平:低、中、高或严重。
- 滥用场景:攻击者如何利用该工具。
- 缓解措施:保护服务器的建议步骤。
______________________________________________________________________
📊 导出结果
您可以将扫描结果导出为 shadow_report.json 直接从界面进行存档或进一步手动审查。
