【Kali Linux】 2026.1 新工具之:MetasploitMCP 详细介绍
一、MetasploitMCP 是什么
MetasploitMCP(GH05TCREW/MetasploitMCP)是 Kali Linux 2026.1 官方仓库新增的 8 个工具之一——一个面向 Metasploit Framework 的 MCP(Model Context Protocol)服务器。它由 Python 编写(约 103KB),通过标准化的 MCP 协议在大型语言模型(LLM)和 Metasploit 之间架设桥梁,让 AI 助手可以用自然语言直接操控 Metasploit 的渗透测试能力。
官方安装:sudo apt install metasploitmcp
依赖:python3、python3-fastapi、python3-fastmcp、python3-mcp、python3-pymetasploit3、python3-uvicorn
二、核心功能(12 个 MCP 工具)
|
类别 |
工具 |
说明 |
|---|---|---|
|
信息收集 |
list_exploits |
搜索和列出可用 Metasploit 漏洞利用模块 |
|
list_payloads |
按平台/架构过滤,搜索可用 payload 模块 |
|
|
攻击执行 |
run_exploit |
配置并对目标执行漏洞利用(可选先运行 check) |
|
run_auxiliary_module |
运行任意辅助模块(自定义选项) |
|
|
run_post_module |
对已有 session 运行后渗透模块 |
|
|
Session 管理 |
list_active_sessions |
显示当前所有 Metasploit session 详情 |
|
send_session_command |
在活跃 shell 或 Meterpreter session 中执行命令 |
|
|
terminate_session |
强制终止一个 session |
|
|
监听器管理 |
list_listeners |
列出所有活跃 handler 和后台作业 |
|
start_listener |
创建新的 multi/handler 监听器 |
三、AI 集成场景
MetasploitMCP 的核心价值在于将 Metasploit 的能力以 LLM 可调用工具的形式暴露出来,主要集成场景:
1. 自然语言驱动的渗透测试
用户只需说"帮我用 EternalBlue 漏洞攻击 192.168.1.100",AI 自动调用 list_exploits 搜索模块 → run_exploit 执行攻击 → list_active_sessions 确认 session 建立。
2. Claude Desktop / Claude Code 集成
通过 claude_desktop_config.json 配置 stdio 传输模式,Claude Desktop 可直接对话式操控 Metasploit,无需记忆 msfconsole 命令语法。
3. 多 AI 客户端 HTTP/SSE 模式
MCP 服务器以 HTTP/SSE 模式运行(默认端口 8085),可被任何兼容 MCP 协议的 AI 助手远程调用,适合团队共享使用。
4. 自动化渗透工作流
AI 可以根据目标环境自动选择合适的漏洞利用模块和载荷、执行后渗透操作,形成半自动化红队评估流程。
四、典型使用配置
步骤 1:启动 Metasploit RPC 服务
msfrpcd -P yourpassword -S -a 127.0.0.1 -p 55553
步骤 2:配置环境变量
export MSF_PASSWORD=yourpassword
export MSF_SERVER=127.0.0.1
export MSF_PORT=55553
export MSF_SSL=false
export PAYLOAD_SAVE_DIR=/path/to/save/payloads # 可选,自定义载荷保存路径
步骤 3:启动 MCP 服务器(两种传输模式)
STDIO 模式(Claude Desktop 等本地 AI 客户端):
python MetasploitMCP.py --transport stdio
HTTP/SSE 模式(远程 AI 客户端):
python MetasploitMCP.py --transport http --host 0.0.0.0 --port 8085
# 客户端连接端点:http://your-server-ip:8085/sse
Claude Desktop 配置示例
{
"mcpServers": {
"metasploit": {
"command": "uv",
"args": ["--directory", "/path/to/MetasploitMCP", "run", "MetasploitMCP.py", "--transport", "stdio"],
"env": { "MSF_PASSWORD": "yourpassword" }
}
}
}
五、与 msfconsole 的核心区别
|
维度 |
msfconsole |
MetasploitMCP |
|---|---|---|
|
交互方式 |
手动输入命令,交互式终端 |
LLM 函数调用,自动化调用链 |
|
适用人群 |
熟练的渗透测试工程师 |
希望用自然语言操作或集成 AI 的场景 |
|
工作流编排 |
人工主导,每步手动执行 |
AI 可自动编排完整渗透流程 |
|
远程控制 |
需要 RPC(msfrpcd)单独配置 |
内置 MCP 协议,原生支持 AI 客户端 |
|
会话保持 |
在 msfconsole 内管理 session |
通过 send_session_command 等工具管理 |
|
多客户端 |
单用户单会话 |
可同时服务于多个 AI 客户端(HTTP 模式) |
|
自然语言理解 |
无 |
AI 层理解用户意图,自动选择模块/选项 |
本质区别:msfconsole 是面向人的交互式 CLI 工具;MetasploitMCP 是面向 AI Agent 的程序化接口。两者不是替代关系——MetasploitMCP 底层依然调用 msfrpcd(即 Metasploit RPC),是对现有能力而非功能本身的扩展。
六、应用案例
案例 1:AI 辅助漏洞验证
红队工程师想让 AI 自动验证内网中是否存在 MS17-010 漏洞:
-
用户:"帮我检查 192.168.1.0/24 网段哪些机器有 EternalBlue 漏洞"
-
AI → list_exploits("ms17_010") → 确认模块路径 → 对每个目标调用 run_exploit(..., check=True) → 汇总结果
案例 2:自然语言后渗透
-
用户:"在 session 1 上帮我收集所有登录用户信息"
-
AI → run_post_module("windows/gather/enum_logged_on_users", session_id=1)
案例 3:快速载荷生成
-
用户:"生成一个 Windows x64 Meterpreter 反向 TCP 载荷到 /tmp/payload.exe"
-
AI → generate_payload("windows/x64/meterpreter/reverse_tcp", "exe", {"LHOST": "...", "LPORT": 4444})
⚠️ 安全声明:MetasploitMCP 本身在工具说明中明确标注——仅在拥有明确授权的测试环境中使用。所有漏洞利用和后渗透操作均需合法授权,未经授权的网络渗透属违法行为。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)