MCP Kali Pentest-自主渗透测试框架
一个全面的、人工智能驱动的自动化渗透测试框架,与LM Studio集成,用于自主决策。此MCP服务器提供 80+专业级安全测试工具 17个专业类别的智能自动化。
特性
🎯 自主测试
- 使用LM Studio进行人工智能决策
- 自动目标侦察
- 智能漏洞优先级
- 自主开发路径选择
- 从发现中不断学习
🛠️ 综合工具套件(80+工具)
📡 侦察和OSINT(11种工具)
- Nmap、Masscan-端口扫描
- Amass,收割机-子域枚举
- 重新查询-osint框架
- Shodan-物联网设备搜索
- WhatWeb,Wafw00f-技术指纹识别
🌐 Web应用程序测试(17个工具)
- Nikto、Nuclei、WPScan、Joomscan、Droopescan
- Burp Suite Pro API、OWASP ZAP
- SQLMap、Commix、XSStrike-漏洞利用
- Gobuster、Dirb、DirBuster、Wfuzz、FFUF
📻 无线安全(5个工具)
- Aircrack-ng套房,无线上网,Reaver
- 基斯梅特·贝特尔卡普
🔓 暴力和身份验证(6个工具)
- 九头蛇、CrackMapExec、美杜莎、Patator
🔐 密码破解(4个工具)
- 开膛手约翰、哈什卡特、奥夫拉克
💥 开发(5个工具)
- Metasploit框架,SearchSploit
👻 后开发(6个工具)
- Mimikatz,血猎犬,PowerShell帝国
- LinPEAS、WinPEAS、CrackMapExec
🎣 社会工程(3种工具)
- SET,高菲什,菲舍尔国王
📱 移动安全(4个工具)
- MobSF、Drozer、Frida
🔌 API测试(4种工具)
- 邮差/纽曼,GraphQL扫描仪
🔍 数字取证(4种工具)
- 波动性、尸检、Binwalk
🔬 逆向工程(5个工具)
- Ghidra、Radare2、IDA Pro
☁️ 云安全(5个工具)
- 童子军套房,云狐,帕库
🐳 集装箱安全(4个工具)
- Trivy,Docker Bench安全
🌐 网络分析(6个工具)
- tcpdump、Wireshark、SNMP、enum4linux
🤖 自主测试(4个工具)
- AI驱动的渗透测试,智能建议
🤖 AI驱动的功能
- 自动扫描结果分析
- 智能下一步建议
- 漏洞优先级
- 风险评估
- 执行报告生成
- 自定义攻击计划创建
📊 专业报道
- JSON、HTML、Markdown和PDF格式
- 行政摘要
- 风险评估
- 补救建议
- OWASP映射
- 时间线可视化
先决条件
系统要求
- Kali Linux(推荐)或任何基于Debian的带有安全工具的Linux
- Python 3.9或更高版本
- LM Studio(或兼容的OpenAI API端点)
- 最低4GB RAM
- 20GB可用磁盘空间
所需工具
大多数工具都预装在Kali Linux上:
# Verify tools are installed
which nmap nikto sqlmap metasploit gobuster nuclei hydra john hashcat
# Install missing tools
sudo apt update
sudo apt install -y nmap nikto sqlmap metasploit-framework gobuster \
hydra john hashcat sslscan enum4linux smbclient snmp \
tcpdump wireshark-cli wpscan nuclei ffuf安装
1.克隆存储库
git clone https://github.com/yourusername/mcpkali.git
cd mcpkali2.创建虚拟环境
python3 -m venv venv
source venv/bin/activate3.安装依赖项
pip install -r requirements.txt4.建立LM工作室
- 下载并安装 LM 工作室
- 加载模型(推荐:Mistral 7B、Llama 2或类似型号)
- 启动本地服务器(服务器选项卡→ 启动服务器)
- 验证它是否正在运行
http://localhost:1234
5.配置服务器
# Copy example config
cp config.json config.local.json
# Edit configuration
nano config.local.json更新LM Studio设置:
{
"lm_studio": {
"base_url": "http://localhost:1234/v1",
"model": "your-model-name"
}
}6.创建所需目录
sudo mkdir -p /var/log/mcpkali
sudo mkdir -p /var/lib/mcpkali/{reports,sessions}
sudo chown -R $USER:$USER /var/log/mcpkali /var/lib/mcpkali用法
启动MCP服务器
python3 server.py基本示例
1.自主Pentest
{
"tool": "start_autonomous_pentest",
"arguments": {
"target": "192.168.1.100",
"scope": ["192.168.1.100", "192.168.1.101"],
"depth": "vulnerability_scan",
"rules_of_engagement": {
"allow_exploitation": false,
"rate_limit": true
}
}
}2.网络侦察
{
"tool": "nmap_scan",
"arguments": {
"target": "example.com",
"scan_type": "full",
"scripts": ["vuln", "default"]
}
}3.Web应用程序扫描
{
"tool": "vulnerability_assessment",
"arguments": {
"target": "https://example.com",
"assessment_type": "web"
}
}4.获取人工智能建议
{
"tool": "get_ai_suggestion",
"arguments": {
"session_id": "pentest_20241105_120000",
"context": "Found open ports 80, 443, 22. What should I do next?"
}
}5.生成报告
{
"tool": "generate_report",
"arguments": {
"session_id": "pentest_20241105_120000",
"format": "html"
}
}MCP集成
克劳德桌面
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"kali-pentest": {
"command": "python3",
"args": ["/path/to/mcpkali/server.py"],
"env": {
"PYTHONPATH": "/path/to/mcpkali"
}
}
}
}其他MCP客户端
使用标准MCP协议连接:
from mcp import ClientSession
from mcp.client.stdio import stdio_client
async with stdio_client(["python3", "server.py"]) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
# Use the tools配置
安全设置
重要提示: 在中配置适当的安全设置 config.json:
{
"pentest": {
"rules_of_engagement": {
"allow_exploitation": false, // Only enable with proper authorization
"allow_post_exploitation": false,
"max_brute_force_attempts": 100,
"rate_limit": true
}
}
}LM工作室设置
{
"lm_studio": {
"temperature": 0.7, // Higher = more creative, Lower = more focused
"max_tokens": 2000, // Maximum response length
"timeout": 120 // Request timeout in seconds
}
}工具配置
启用/禁用特定工具:
{
"tools": {
"nmap": { "enabled": true },
"sqlmap": { "enabled": true },
"hydra": { "enabled": false } // Disable if not needed
}
}自主模式
自主模式允许AI自动做出决策并运行测试:
阶段
- 侦察
- 端口扫描 - 服务检测 - 操作系统识别 - DNS枚举 - Web技术检测
- 漏洞识别
- 特定于服务的漏洞扫描 - Web应用程序测试 - SSL/TLS分析 - 已知漏洞利用搜索 - CVE匹配
- 剥削 (如获授权)
- 安全利用尝试 - 概念验证生成 - 风险评估
- 实施漏洞利用 (如获授权)
- 权限提升 - 横向运动分析 - 数据泄露测试
深度级别
reconnaissance-仅收集信息vulnerability_scan-查找漏洞(推荐)exploitation-尝试安全利用(需要授权)post_exploitation-完整渗透测试(需要明确授权)
API 参考
工具
看 API毫米 获取完整的工具文档。
资源
pentest://session/{session_id}-获取会话数据pentest://report/{report_id}-获取报告
安全和法律考虑
⚠️ 重要警告
- 需要授权:仅测试您拥有或有明确书面许可进行测试的系统
- 交战规则:测试前始终定义明确的RoE
- 责任揭秘:负责任地报告漏洞
- 数据保护:小心处理发现的数据
- 法律合规:确保遵守当地法律
推荐做法
- 从仅侦察模式开始
- 使用VPN/隔离网络进行测试
- 保存详细日志
- 执行前审查人工智能建议
- 实施速率限制
- 首先在非生产环境中进行测试
故障排除
LM Studio连接问题
# Check if LM Studio is running
curl http://localhost:1234/v1/models
# Check server logs
tail -f /var/log/mcpkali/server.log权限问题
# Ensure tools have proper permissions
sudo chmod +x $(which nmap sqlmap metasploit)
# Some tools require root
sudo setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip $(which nmap)未找到工具
# Install missing tool
sudo apt install -y
# Update tool database
sudo updatedb发展
添加新工具
- 添加工具功能
tools.py - 在中注册工具
server.pyhandle_list_tools() - 添加路线
handle_call_tool() - 更新文档
贡献
欢迎投稿!拜托:
- 分叉存储库
- 创建要素分支
- 为新功能添加测试
- 提交拉取请求
建筑
┌─────────────────────────────────────────────┐
│ MCP Client (Claude, etc.) │
└─────────────────┬───────────────────────────┘
│ MCP Protocol
┌─────────────────▼───────────────────────────┐
│ server.py (MCP Server) │
│ ┌─────────────────────────────────────┐ │
│ │ Tool Registry & Request Handler │ │
│ └─────────────────────────────────────┘ │
└─────┬──────────────────┬───────────────┬────┘
│ │ │
┌─────▼─────┐ ┌───────▼──────┐ ┌────▼─────┐
│LM Studio │ │Pentest Engine│ │ Tools │
│ Client │ │ (Reports) │ │ (Kali) │
└───────────┘ └──────────────┘ └───────────┘
│ │
┌─────▼─────┐ ┌──────▼──────┐
│LM Studio │ │ Kali Tools │
│ API │ │nmap, sqlmap,│
│(localhost)│ │nikto, etc. │
└───────────┘ └─────────────┘演出
- 并发扫描限制:3(可配置)
- 平均扫描时间:5-30分钟,具体取决于深度
- 内存使用量:500MB-2GB,具体取决于工具
- LM Studio推理:每个决策2-10秒
路线图
- \[\]Metasploit RPC集成
- \[\]自定义模块支持
- \[\]Web UI仪表板
- \[\]分布式扫描
- \[\]云集成(AWS、Azure、GCP)
- \[\]集装箱安全扫描
- \[\]API安全测试
- \[\]移动应用程序测试
- \[\]插件系统
- \[\]实时协作
许可证
MIT许可证-请参阅 许可证 文件
免责声明
此工具仅用于授权的安全测试。滥用此工具可能违反法律。作者对非法使用不承担任何责任。
鸣谢
内置:
- MCP(模型上下文协议)
- LM 工作室
- Kali Linux工具
- Python异步
支持
- 问题:
- 讨论:
- 电子邮件:security@example.com
致谢
感谢安全社区和开源工具开发人员,他们使这样的项目成为可能。
______________________________________________________________________
记住:权力越大,责任越大。在道德和法律上使用。
