关于 MCP Kali Server
MCP Kali Server 是一个轻量级 API 桥接工具,将 MCP 客户端连接到可在 Linux 终端执行命令的 API 服务。它面向授权的渗透测试和 CTF 练习,让 AI 能够调用 Kali 上的安全工具。README 明确声明仅用于教育和授权测试目的。
主要功能
- 01通过 API 在 Kali 机器上执行终端命令
- 02内置 Nmap、gobuster、sqlmap、Metasploit 等工具
- 03支持原始命令执行与结构化输出
- 04可通过 SSH 隧道进行远程连接
- 05兼容 Claude Desktop 和 5ire 等 MCP 客户端
适用场景
- 01在授权环境中由 AI 辅助进行渗透测试
- 02在 CTF 挑战中让 AI 自动执行侦察和利用命令
- 03通过 MCP 客户端调用 Kali 工具完成取证分析
MCP 相关
该项目是 MCP 服务,向 Claude Desktop、5ire 等 MCP 客户端暴露在 Kali 机器上执行命令和安全工具的能力。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP Kali Server
MCP Kali Server(MKS) 是一个轻量级 API 桥接工具,可将 MCP 客户端(例如:Claude Desktop 或 5ire)连接到 API 服务,从而在 Linux 终端中执行命令。
此 MCP 不仅能够运行终端命令,还能使用以下工具与 Web 应用交互:
Dirbenum4linuxgobusterHydraJohn the RipperMetasploit-FrameworkNiktoNmapsqlmapWPScan- 还可以执行原始命令。
因此,它能够实时执行 AI 辅助渗透测试并解决 CTF 挑战。
使用此工具的文章
🔍 使用场景
此项目旨在通过以下方式实现 AI 驱动的攻防安全测试:
- 让 MCP 与 OpenAI、Claude、DeepSeek、Ollama 等 AI 端点或其他任意模型交互。
- 提供 API,以便在 Kali 机器上执行命令。
- 使用 AI 建议并运行终端命令,以解决 CTF 挑战或自动化侦察/利用任务。
- 允许 MCP 应用发送自定义请求(例如
curl、nmap、ffuf等),并接收结构化输出。
以下是一些示例(使用 Google 的 AI gemini 2.0 flash):
尝试解决 RamadanCTF 的 Web CTF 挑战
https://github.com/user-attachments/assets/dc93b71d-9a4a-4ad5-8079-2c26c04e5397
尝试解决 HTB 上名为 "code" 的靶机
https://github.com/user-attachments/assets/3ec06ff8-0bdf-4ad5-be71-2ec490b7ee27
🚀 功能
- 🧠 AI 端点集成:将 Kali 连接到你选择的 MCP,例如 Claude Desktop 或 5ier。
- 🖥️ 命令执行 API:提供受控 API,以便在 Kali Linux 机器上执行终端命令。
- 🕸️ Web 挑战支持:AI 可以与网站和 API 交互,使用
curl及 AI 所需的其他工具获取 flag。 - 🔐 专为攻防安全专业人员设计:适合红队人员、漏洞赏金猎人或希望自动化常见任务的 CTF 玩家。
🛠️ 安装与运行
在 Kali 机器上
sudo apt install mcp-kali-server
kali-server-mcp
或者使用最新开发版:
git clone https://github.com/Wh0am123/MCP-Kali-Server.git
cd MCP-Kali-Server
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
./server.py
命令行选项:
--ip <address>:指定服务器绑定的 IP 地址(默认:127.0.0.1,仅限本地主机)- 使用
127.0.0.1仅允许本地连接(安全,推荐) - 使用
0.0.0.0允许来自任何网络接口的连接(非常危险,请谨慎使用) - 使用特定 IP 地址绑定到指定的网络接口
- 使用
--port <port>:指定端口号(默认:5000)--debug:启用调试模式,以输出详细日志
示例:
# Run on localhost only (secure, default)
./server.py
# Run on all interfaces (less secure, useful for remote access)
./server.py --ip 0.0.0.0
# Run on a specific IP and custom port
./server.py --ip 192.168.1.100 --port 8080
# Run with debug mode
./server.py --debug
在 MCP 客户端机器上
可以在本地运行(与 Kali 机器相同),也可以远程运行(另一台 Linux、Windows 或 macOS 机器)。
如果客户端和服务端运行在同一台 Kali 机器上(即本地运行),请运行以下任一命令:
## OS package
kali-server-mcp --server http://127.0.0.1:5000
# ...OR...
## Bleeding edge
./client.py --server http://127.0.0.1:5000
如果使用不同的机器(即远程运行),请先创建到 MCP 服务的 SSH 隧道,然后启动客户端:
## Terminal 1 - Replace `LINUX_IP` with Kali's IP
ssh -L 5000:localhost:5000 user@LINUX_IP
## Terminal 2
git clone https://github.com/Wh0am123/MCP-Kali-Server.git
cd MCP-Kali-Server
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
./client.py --server http://127.0.0.1:5000
如果你在网络上公开托管 MCP Kali 服务(server.py --IP...),则无需 SSH 隧道(不过我们仍然建议使用!)
注意:⚠️(强烈不建议这样做。我们建议使用 SSH)⚠️。
./client.py --server http://LINUX_IP:5000
Claude Desktop 的配置:
编辑:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
5ire Desktop Application 的配置:
- 只需使用命令
python3 /absolute/path/to/client.py --server http://LINUX_IP:5000添加一个 MCP,它便会自动生成所需的配置文件。
🔮 其他可能性
由于 AI 模型现在可以在终端中执行命令,因此还有更多可能性。以下是一些示例:
-
使用 Volatility 进行内存取证
- 自动执行内存分析任务,例如枚举进程、检查 DLL 注入,以及从内存转储中提取注册表。
-
使用 SleuthKit 进行磁盘取证
- 自动分析磁盘映像、生成时间线、提取文件,以及比较哈希值。
⚠️ 免责声明:
本项目仅用于教育和道德测试目的。严禁滥用所提供的信息或工具,包括未经授权的访问、漏洞利用或恶意活动。
作者对任何滥用行为概不负责。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
