一、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 本身在工具说明中明确标注——仅在拥有明确授权的测试环境中使用。所有漏洞利用和后渗透操作均需合法授权,未经授权的网络渗透属违法行为。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐