Dragkob/MCPhantom
GitHub: Dragkob/MCPhantom
MCPhantom 是一个面向 MCP endpoint 的本地安全侦察与漏洞检测 Web 控制台,能够枚举 MCP 暴露的能力并自动化运行多类漏洞插件扫描。
Stars: 3 | Forks: 0
**MCPhantom** 是一个用于 MCP endpoint 侦察和利用的本地 Web dashboard。将其指向任何 MCP URL,发现暴露的资源、模板、工具和 prompt,然后从简洁的安全控制台 UI 中与它们进行交互。在本地 127.0.0.1:1337 运行;无需云服务,除了 Python 之外无需任何设置。项目文档可以在[这里](https://github.com/Dragkob/MCPhantom/blob/main/DOCUMENTATION.md)找到。
### 视频演示
https://github.com/user-attachments/assets/b62d3a80-2b38-4b5c-a11b-029192279470
所有演示和测试均在受控环境下针对具有已知漏洞的系统进行。
未针对或损害任何真实系统。
未针对或损害任何真实系统。
### 🛠️ 功能 🛠️
| 类别 | 功能 | 描述 |
|---|---|---|
| 发现 | MCP 枚举 | 从目标 MCP endpoint 发现资源、资源模板、工具和 prompt |
| 能力分类 | 对能力进行标记(例如 URL、command、database、path、ID)以决定适用哪些测试 | |
| 界面 | Web dashboard | 在 http://127.0.0.1:1337 提供基于浏览器的控制台,支持深色/浅色主题 |
| 实时交互 | 读取资源/模板、调用工具、运行 prompt,以及从 UI 填充模板占位符 | |
| AutoPwn | 智能定向扫描 | 仅在标签/参数提示相关时运行插件匹配的检查 - 避免在任何地方进行盲目的 fuzzing |
| 并行执行 | 并发运行多个能力检查,并带有针对每次检查和每个 payload 的超时机制 | |
| 流式传输结果 | NDJSON 进度流,提供实时的覆盖率、发现结果和完成百分比 | |
| 扫描覆盖率报告 | 每个能力的状态(存在漏洞、干净、超时、错误),包含命中次数和注释 | |
| 插件 | SQL 注入 | 单列 UNION 探测、数据库版本提取,以及 schema/table 枚举(SQLite、MySQL、PostgreSQL、MSSQL、Oracle) |
| 命令注入 | Shell 元字符和允许列表绕过类型的 payload,包含 MCP 响应解析 | |
| SSRF | 内部/localhost 和元数据类型的 URL 探测 | |
| 路径遍历 | 常见的文件系统路径逃逸 payload | |
| IDOR | 针对类似 ID 参数的标识符篡改探测 | |
| 信息泄露 | 用于获取敏感输出的基线和详细/触发错误的请求 | |
| 引擎 | 中央 payload 存储库 | 所有 payload 都位于 audit/payloads.py 中 - 无需重写插件即可添加类别和条目 |
| 证明评分 (SQLi) | 根据证据强度对发现结果进行排名;过滤仅反射型和重复的错误响应 | |
| 插件架构 | 通过 audit/plugin_loader.py 加载的模块化插件 - 可轻松添加新的漏洞类别 |
|
| 可扩展性 | 开源 | Fork 项目、扩展 payload 列表、添加插件,并针对您的目标和工作流定制检测规则 |
### 快速开始
```
python web_server.py
# 打开 http://127.0.0.1:1337,输入一个 MCP endpoint,运行 Start Recon。
```
标签:MCP安全, Python, Web控制台, XXE攻击, 实时处理, 密码管理, 无后门, 逆向工具