关于 Model Context Provider (MCP) for Penetration Testing
mcp-pentest 是一个面向授权渗透测试的 MCP 服务,用于编排 Nmap、Gobuster 等工具并汇总测试上下文。它面向安全测试人员,强调由人工掌控范围、方法论与报告。项目目前处于 alpha 阶段。
主要功能
- 01按侦察、扫描、利用、后渗透、报告顺序约束流程
- 02实时汇总工具输出并标准化为事件
- 03基于 LLM 的结果解读与测试指导
- 04插件式工具集成框架
- 05结构化记录发现与操作,用于生成报告
- 06Nmap、Gobuster 等工具的集成
适用场景
- 01对已授权目标执行 Nmap 网络扫描
- 02使用 Gobuster 进行 Web 目录枚举
- 03整理渗透测试过程记录并生成报告
MCP 相关
该项目是一个 MCP 服务,向兼容的 AI 客户端暴露渗透测试工具,例如通过 stdio 与 Claude Desktop 等客户端通信。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-pentest
面向 AI 辅助安全测试人员的授权渗透测试 MCP 服务。 它编排常用评估工具、规范化测试上下文,并确保由人工渗透测试人员掌控范围、方法和报告。

一览
| 领域 | mcp-pentest 提供的功能 |
|---|---|
| MCP 接口 | 本地 stdio 服务,向兼容的 AI 客户端提供渗透测试工具 |
| 工具集 | Nmap、Gobuster,以及用于授权评估的可扩展集成 |
| 工作流 | 侦察、扫描、漏洞利用支持、漏洞利用后记录和报告 |
| 输出 | 规范化扫描事件、测试上下文、发现结果以及可用于报告的记录 |
| 安全性 | 专为合法测试而构建,要求明确授权并由人工操作人员掌控 |
状态
mcp-pentest 目前处于 Alpha 阶段,正在积极开发中。欢迎贡献新的工具集成、UI/UX、文档、测试和报告工作流。请参阅 CONTRIBUTING.md 了解如何开始。
🔍 概述
模型上下文提供程序(MCP)是一个将 AI 与渗透测试工具连接起来的开源框架。MCP 可与多种渗透测试工具交互,实时解析并丰富其输出,并严格遵循标准渗透测试流程。它会引导人工渗透测试人员完成各个阶段——从侦察和扫描,到漏洞利用、漏洞利用后阶段和报告——并与既定方法保持一致。
⚠️ 免责声明:此工具仅用于获得适当授权的合法安全测试。将此软件用于未经授权访问系统属于违法且不道德的行为。
✨ 主要功能
- 方法论执行:确保每项测试都按顺序经过适当阶段(侦察 → 扫描 → 漏洞利用 → 漏洞利用后阶段 → 报告)。
- 实时上下文汇总:收集工具输出,将数据规范化为统一的测试上下文,并存储以供分析。
- 大模型驱动的洞察:利用大模型解读发现结果,并在测试过程中提供指导。
- 无缝工具集成:充当中间件层,与主要渗透测试工具连接,并将其结果转换为通用事件格式。
- 安全数据处理:对处理的数据实施严格的安全措施,包括与大模型交互时进行清理。
- 报告与知识留存:以结构化格式记录所有发现结果和操作,以便生成报告。
🏗️ 架构
MCP 基于微服务、事件驱动系统构建,并部署在容器化环境中:
- 核心上下文处理引擎:汇总并规范化所有工具的数据的中央大脑
- AI 驱动的攻击路径分析器:识别潜在攻击路径并确定目标优先级
- 基于插件的集成框架:用于连接外部工具的可扩展系统
- 安全日志与报告模块:维护测试活动日志并生成报告
- 实时大模型查询界面:提供用于查询发现结果的自然语言界面
- 基于角色的访问控制:确保所有操作的安全性
🧰 集成工具
MCP 目前集成了以下工具:
网络扫描与枚举
Web 枚举
漏洞利用与后渗透
- Metasploit Framework:漏洞利用框架
密码攻击
- Hydra:网络登录暴力破解工具
- John the Ripper:离线密码破解工具
权限提升
- LinPEAS:Linux 权限提升枚举脚本
🚀 开始使用
前置条件
- Python 3.8+
- Nmap(用于网络扫描)
- Gobuster(用于 Web 枚举)
- 进行渗透测试所需的适当授权和范围定义
安装
- 克隆此仓库:
git clone https://github.com/allsmog/mcp-pentest.git
cd mcp-pentest
- 安装 MCP 服务:
pip install -e .
- 安装所需依赖:
pip install mcp
使用 Claude Desktop 测试
- 将此 MCP 服务添加到 Claude Desktop 配置中。编辑
claude_desktop_config.json:
{
"mcpServers": {
"mcp-pentest": {
"command": "python",
"args": ["/path/to/mcp-pentest/server.py"],
"env": {}
}
}
}
-
重启 Claude Desktop
-
现在,你应该能在 Claude Desktop 中看到可用的渗透测试工具。尝试以下命令:
- “对 127.0.0.1 运行 nmap 扫描”
- “对 https://httpbin.org 执行 gobuster 目录扫描”
- “显示最新的扫描事件”
手动测试
你也可以直接测试该服务:
# Run the MCP server
python server.py
# The server will communicate via stdio using the MCP protocol
请参阅我们的文档,了解完整的 API 参考和示例。
📋 项目路线图
以下是我们目前正在开展的工作:
- 完成核心上下文引擎的实现
- 完成初步的工具集成
- 构建 AI 驱动的攻击路径分析器
- 开发 Web UI
- 创建全面的测试套件
- 添加更多工具集成
- 实现报告生成功能
欢迎为以上任一领域贡献力量!
🤝 贡献
欢迎并感谢大家贡献!请参阅 CONTRIBUTING.md 了解贡献指南。
如何提供帮助
我们尤其需要以下方面的帮助:
- 工具集成:添加对更多安全工具的支持
- 测试:在真实环境中测试并报告错误
- 文档:改进并扩展指南
- UI 开发:构建 Web 界面
- AI 组件:增强大模型集成和攻击路径分析
添加新的工具集成
我们特别欢迎大家贡献新的工具集成。请参阅工具集成指南,了解如何添加对其他工具的支持。
💬 社区
- 问题:使用 GitHub Issues 报告错误和提交功能请求
- 讨论:在 GitHub Discussions 中提出一般问题和想法
📜 许可证
本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
🔐 安全注意事项
鉴于此工具的性质,请特别注意安全:
- 切勿提交凭据、API 密钥或敏感信息
- 始终遵循负责任的信息披露实践
- 测试任何系统前,确保已获得适当授权
📚 文档
🙏 致谢
- 感谢本项目所基于的所有开源渗透测试工具
- 特别感谢启发本项目的安全研究人员和工具开发者
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
