HiesenMCP
HiesenMCP是一个客户端-服务器应用程序,旨在通过为各种安全工具提供集中接口来简化渗透测试。服务器运行在KaliLinux环境中,并公开了一个REST API,客户端使用该API来执行工具和管理任务。
特性
- 远程工具执行: 在远程Kali Linux机器上运行各种流行的渗透测试工具。
- 支持的工具:
- 网络扫描仪: nmap - 网络扫描仪: gobuster, dirb, nikto, wpscan, ffuf - 漏洞扫描程序: sqlmap - 开采: metasploit - 密码破解程序: hydra, john - 枚举: enum4linux - 手机: frida, drozer, objection, cycript, needle - 静态分析: semgrep, bandit - 二元分析: gdb, radare2, strings, objdump, readelf
- 文件上传: 将文件上传到服务器,以便使用各种工具。
- 命令执行: 在服务器上执行任意shell命令。
- 知识库: 一个简单的知识库,用于存储和检索有关工具和测试用例的信息。
- Docker支持: 服务器可以使用Docker轻松部署。
项目结构
HiesenMCP/
├── .gitignore
├── Dockerfile
├── config/
│ └── system_prompt.txt
├── data/
│ ├── knowledge_base/
│ └── wordlists/
├── docs/
├── logs/
├── reference/
└── src/
├── client/
│ └── hiesenMCPClient.py
└── server/
└── hiesenMCPServer.pysrc/server/hiesenMCPServer.py:运行在Kali Linux上并公开API的基于Flask的服务器。src/client/hiesenMCPClient.py:用于与服务器交互的客户端应用程序。Dockerfile:用于为服务器构建Docker镜像。data/knowledge_base:包含知识库的JSON文件。data/wordlists:用于存储单词表的目录。
设置
服务器设置(Docker)
- 构建Docker镜像:
docker build -t hiesen-mcp .- 运行Docker容器:
docker run -d -p 1337:1337 --name hiesen-mcp-container hiesen-mcp服务器将在上运行 http://localhost:1337.
要在启动时下载较大的可选单词表存储库:
docker run -d -p 1337:1337 -e HIESENMCP_DOWNLOAD_WORDLISTS=1 --name hiesen-mcp-container hiesen-mcp服务器设置(手动)
- 克隆存储库:
git clone
cd HiesenMCP- 安装依赖项:
pip install flask fastmcp*(要获得完整的渗透测试工具链,请在主机上安装所需的Kali工具。Docker镜像会自动处理此问题。)*
- 运行服务器:
python3 src/server/hiesenMCPServer.py客户端设置
- 安装依赖项:
pip install requests fastmcp- 运行客户端:
python3 src/client/hiesenMCPClient.py --server http://:1337这将通过stdio启动MCP客户端,以便支持MCP的主机可以调用其工具。
用法
服务器在下面公开REST端点 /api/*。您可以直接致电他们,或使用 src/client/hiesenMCPClient.py 通过支持MCP的主机。
示例:运行Nmap扫描
curl -sS -X POST http://localhost:1337/api/tools/nmap \
-H "Content-Type: application/json" \
-d '{"target":"192.168.1.1","scan_type":"-sV","additional_args":"-T4 -Pn"}'示例:上传文件
curl -sS -X POST http://localhost:1337/api/upload_file \
-F "file=@/path/to/your/file"示例:执行命令
curl -sS -X POST http://localhost:1337/api/command \
-H "Content-Type: application/json" \
-d '{"command":"ls -la"}'与AI客户端集成
要将HiesenMCP与您的AI客户端集成,请使用HiesenMPC服务器的连接详细信息配置客户端的MCP设置。
Windows上的LM Studio
Windows上的LM Studio可以在正在运行的Docker容器中启动MCP客户端,因此您不需要在Windows上安装Python依赖项:
- 确认API容器正在运行:
docker ps --filter name=hiesen-mcp-container- 在LM Studio中,打开 程序>安装>编辑mcp.json.
- 添加以下内容
docs/lmstudio-windows-mcp.json.
如果Windows PowerShell看不到容器,但WSL可以,请使用 docs/lmstudio-windows-wsl-mcp.json 相反。
如果LM Studio找不到 docker,替换 "command": "docker" 完整的路径 docker.exe例如:
"command": "C:\\Program Files\\Docker\\Docker\\resources\\bin\\docker.exe"其他MCP客户端
- 定位
connection.json: 此文件通常位于docs/HiesenMCP项目的目录。
{
"mcpServers": {
"HiesenMCP": {
"command": "python3",
"args": [
"src/client/hiesenMCPClient.py",
"--server",
"http://127.0.0.1:1337"
]
}
}
}- 复制配置: 复制的内容
HiesenMCP入口从connection.json将AI客户端的MCP配置。确切的位置和格式将取决于您的AI客户端。
重要提示:
- 从项目根目录运行此命令,或替换 src/client/hiesenMCPClient.py 一条绝对的路径。 - 调整 --server URL(http://127.0.0.1:1337)如果您的HiesenMCP服务器运行在不同的IP地址或端口上。
此配置允许您的AI客户端发现和利用HiesenMCP服务器公开的工具。
