Skip to main content
Glama
Xc1Ym

Kali Tools MCP Server

by Xc1Ym
README.md
# 🎊 Kali Tools MCP Server v2.0 - 终极安全测试平台

> 🛡️ 企业级安全测试平台,集成5个核心Kali工具 + Acunetix + Metasploit,通过MCP协议提供AI辅助渗透测试

[![Build Status](https://img.shields.io/badge/build-passing-brightgreen)]()
[![License](https://img.shields.io/badge/license-MIT-blue)]()
[![Version](https://img.shields.io/badge/version-2.0.0-orange)]()
[![Tools](https://img.shields.io/badge/tools-7-blue)]())

## 🌟 项目亮点

- **🔍 完整工具链**: nmap + nuclei + dirsearch + sqlmap + hydra + Acunetix + Metasploit
- **🛡️ 企业级安全**: 白名单、黑名单、命令注入防护
- **📚 Kali 内置字典**: 支持 rockyou, john, fasttrack 等密码字典
- **📊 结构化输出**: JSON格式,便于分析和报告
- **⚡ 高性能**: 并发扫描、速率控制、超时保护
- **🚀 即开即用**: 完整安装指南,开箱即用
- **🌐 Acunetix 集成**: 专业漏洞扫描器 API 集成
- **💥 Metasploit 集成**: 渗透测试框架完整支持

## 🛠️ 核心工具

### 1. nmap - 网络侦察专家
**端口扫描、服务识别、操作系统检测**

- ✅ TCP SYN/Connect/UDP/Ping 扫描
- ✅ 服务版本检测 (-sV)
- ✅ 操作系统指纹识别 (-O)
- ✅ 激进扫描模式 (-A)
- ✅ 防火墙规避技术

### 2. nuclei - 漏洞扫描专家
**基于模板的自动化漏洞扫描工具**

- ✅ 10,000+ 漏洞模板
- ✅ CVE 漏洞检测
- ✅ 配置错误审计
- ✅ 敏感信息发现
- ✅ 技术栈识别

### 3. dirsearch - 目录枚举专家
**Web 路径和文件发现工具**

- ✅ 递归目录扫描
- ✅ 文件扩展名过滤
- ✅ 备份文件检测
- ✅ 自定义字典支持
- ✅ 并发扫描控制

### 4. sqlmap - SQL注入测试专家
**自动化SQL注入和数据库渗透工具**

- ✅ SQL注入检测
- ✅ 数据库枚举
- ✅ 数据提取
- ✅ WAF检测
- ✅ 多种数据库支持

### 5. hydra - 密码破解专家
**强大的密码暴力破解工具**

- ✅ 多协议支持 (SSH, FTP, HTTP, MySQL等)
- ✅ Kali内置字典集成 (rockyou, john, fasttrack等)
- ✅ 并发破解和速率控制
- ✅ 会话恢复和暂停功能

### 6. Acunetix - 专业漏洞扫描器 ⭐ **NEW!**
**企业级 Web 应用漏洞扫描器 API 集成**

- ✅ 目标管理 - 创建、管理和配置扫描目标
- ✅ 扫描管理 - 启动、停止、监控扫描任务
- ✅ 漏洞管理 - 查询、分类、更新漏洞状态
- ✅ 报告生成 - 生成 PDF、HTML、JSON 等多种格式报告
- ✅ 完整 API 支持 - 覆盖所有 Acunetix API 功能
- ✅ 企业级集成 - 支持 Acunetix On-Premise 和 Online 版本

### 7. Metasploit Framework - 渗透测试框架 ⭐ **NEW!**
**完整的渗透测试和漏洞利用框架**

- ✅ 模块管理 - 搜索、加载、执行 exploit/payload/post 模块
- ✅ 会话管理 - 管理 meterpreter/shell 会话
- ✅ 主机/服务发现 - workspace、hosts、services、vulns 管理
- ✅ 凭证管理 - 收集、使用、管理凭证数据
- ✅ 任务管理 - 启动、停止、监控后台任务
- ✅ MSGRPC 集成 - 完整的 RPC API 支持

## 📊 工具能力对比

| 功能 | nmap | nuclei | dirsearch | sqlmap | hydra | Acunetix | Metasploit |
|------|------|--------|-----------|--------|-------|----------|------------|
| **网络发现** | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| **端口扫描** | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| **服务识别** | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ |
| **目录枚举** | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ | ✅ |
| **文件发现** | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
| **漏洞扫描** | ❌ | ✅ | ❌ | ✅ | ❌ | ✅ | ✅ |
| **CVE检测** | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ |
| **SQL注入** | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ | ✅ |
| **数据库枚举** | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ |
| **OS检测** | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| **密码破解** | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ |
| **漏洞利用** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| **会话管理** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| **报告生成** | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
| **目标管理** | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |

## 🎯 完整渗透测试工作流

### Phase 1: 信息收集
```
1. 使用 nmap 发现活动主机
2. 使用 nmap 扫描开放端口
3. 使用 nmap 识别服务版本
4. 使用 nmap 检测操作系统
```

### Phase 2: Web应用侦察
```
5. 使用 dirsearch 枚举目录
6. 使用 dirsearch 发现文件
7. 使用 nuclei 扫描漏洞
8. 使用 nuclei 审计配置
```

### Phase 3: 漏洞利用
```
9. 使用 sqlmap 检测SQL注入
10. 使用 sqlmap 枚举数据库
11. 使用 sqlmap 提取数据 (授权环境)
12. 使用 sqlmap 测试权限 (授权环境)
```

## 🚀 快速开始

### 系统要求
- **操作系统**: Linux (推荐 Kali Linux) 或 macOS
- **Node.js**: v18.0.0 或更高版本
- **Python**: v3.8+ (部分工具需要)
- **Kali工具**: nmap, nuclei, dirsearch, sqlmap, hydra

### 1. 克隆项目
```bash
git clone https://github.com/Xc1Ym/kali-tools-mcp.git
cd kali-tools-mcp
```

### 2. 安装依赖
```bash
npm install
npm run build
```

### 3. 配置允许的目标
编辑 `config/default.json`:
```json
{
  "allowedTargets": [
    "example.com",
    "testphp.vulnweb.com",
    "192.168.1.0/24"
  ],
  "blockedTargets": [
    "localhost",
    "127.0.0.1"
  ]
}
```

### 3.1. 配置 Acunetix(可选)
如果你想使用 Acunetix 功能,编辑 `config/default.json` 添加 Acunetix 配置:

```json
{
  "acunetix": {
    "apiBaseUrl": "https://192.168.46.128:3443/api/v1",
    "apiKey": "your_api_key_here",
    "timeout": 30000,
    "rejectUnauthorized": false
  }
}
```

或者通过环境变量配置:
```bash
export ACUNETIX_API_URL="https://192.168.46.128:3443/api/v1"
export ACUNETIX_API_KEY="your_api_key_here"
```

**获取 Acunetix API Key**:
1. 登录 Acunetix Web UI
2. 进入 Profile > API Key
3. 复制 API Key

**支持的 Acunetix 版本**:
- Acunetix On-Premise (v13+)
- Acunetix Online (online.acunetix.com)
- Invicti (app.invicti.com)

### 3.2. 配置 Metasploit Framework(可选)
如果想使用 Metasploit 功能,编辑 `config/default.json` 添加 MSFRPC 配置:

```json
{
  "msfrpc": {
    "host": "localhost",
    "port": 55553,
    "username": "msf",
    "password": "your_msf_password",
    "uri": "/api/",
    "timeout": 30000
  }
}
```

**启动 MSFRPC 服务**:
```bash
# 在 Kali Linux 上启动 msfrpcd
msfrpcd -P your_password -U msf

# 或者使用 msfconsole
msfconsole
msf6> load msgrpc ServerHost=127.0.0.1 ServerPort=55553 User=msf Pass=your_password
```

**MSF 功能特性**:
- 模块搜索和执行
- 会话管理和交互
- 工作区和主机管理
- 凭证收集和利用
- 后台任务管理

### 4. 在 Claude Code 中配置 MCP
编辑 Claude Code 的 MCP 配置文件:

**Linux/macOS**: `~/.config/claude-code/config.json`
```json
{
  "mcpServers": {
    "kali-tools": {
      "command": "node",
      "args": ["/path/to/kali-tools-mcp/build/index.js"],
      "env": {
        "NODE_ENV": "production"
      }
    }
  }
}
```

### 5. 重启 Claude Code
重启 Claude Code 以加载 MCP 服务器。

### 6. 验证安装
在 Claude Code 中运行:
```
使用 nmap 扫描 localhost
```

## 💬 在 Claude Code 中使用

### 快速安全评估
```
使用 nmap 扫描网络,然后用 dirsearch 发现路径,最后使用 nuclei 扫描漏洞
```

### 全面渗透测试
```
使用 nmap 进行全面扫描,使用 dirsearch 递归扫描,使用 nuclei 全面扫描,使用 sqlmap 深度测试
```

### 使用 Acunetix 进行专业漏洞扫描
```
使用 Acunetix 创建目标并启动扫描
使用 Acunetix 查看扫描结果和漏洞列表
使用 Acunetix 生成漏洞报告
```

### 使用 Metasploit 进行渗透测试
```
使用 MSF 搜索 exploit 模块
使用 MSF 执行 auxiliary 扫描
使用 MSF 管理会话和主机
```

### 综合安全评估(结合所有工具)
```
使用 nmap 发现开放端口,使用 Acunetix 进行深度漏洞扫描,使用 nuclei 验证漏洞,最后生成报告
```

### Web应用专项
```
使用 nmap 发现Web服务,使用 dirsearch 枚举目录,使用 nuclei 扫描Web漏洞,使用 sqlmap 测试SQL注入
```

## 📚 完整文档

- **[安装指南](INSTALL.md)** - 详细安装和配置说明
- **[发布指南](RELEASE.md)** - 如何发布和贡献
- **[完整文档](README.md)** - 所有功能介绍

## ⚠️ 重要安全警告

### 🚨 法律合规
- **⚠️ 只扫描你有明确授权的目标**
- **⚠️ 未经授权的安全测试是犯罪**
- **⚠️ 可能导致:罚款、刑事指控、监禁**
- **⚠️ 遵守相关法律法规**

### ✅ 合法使用场景
- ✅ 你拥有的系统
- ✅ 有书面授权的渗透测试
- ✅ 隔离的测试环境
- ✅ CTF 比赛环境
- ✅ 安全教育培训

## 🔒 安全机制

所有工具都内置多层安全防护:

- ✅ **目标白名单** - 只允许授权目标
- ✅ **私有IP阻止** - 防止意外内网扫描
- ✅ **命令注入防护** - 严格参数验证
- ✅ **超时保护** - 防止长时间运行
- ✅ **操作审计** - 完整的日志记录
- ✅ **速率限制** - 防止系统过载

## 📈 性能参考

基于本地网络的实际扫描结果:

- **nmap 全面扫描**: 14秒 (65,535端口)
- **nuclei 漏洞扫描**: 4.4分钟 (10,000+模板)
- **dirsearch 目录扫描**: 60秒 (10,930路径)
- **sqlmap SQL注入**: 2-10分钟 (取决于复杂度)

**总计**: 约10-20分钟完成全面安全评估

## 🎊 项目成就

### 技术实现
- ✅ **4个完整工具** - 覆盖主要安全测试领域
- ✅ **企业级架构** - 安全、可靠、高性能
- ✅ **MCP协议集成** - 与 Claude Code 无缝集成
- ✅ **TypeScript实现** - 现代化、类型安全
- ✅ **完整文档** - 超过2000行专业文档

### 覆盖的安全领域
- 🔍 **网络侦察** - nmap
- 🛡️ **漏洞发现** - nuclei
- 📁 **信息收集** - dirsearch
- 💉 **渗透测试** - sqlmap

## 💡 实战技巧

### 工具组合
```
快速评估: nmap (30秒) → dirsearch (1分钟) → nuclei (2分钟)
深度测试: nmap → dirsearch → nuclei → sqlmap (10-20分钟)
```

### 最佳实践
1. **从快速扫描开始** - 发现明显问题
2. **针对性深度测试** - 只对重要发现深入
3. **并发使用工具** - nmap 和 nuclei 可并行
4. **速率控制** - 防止触发安全系统
5. **结果缓存** - 避免重复扫描

## 🤝 贡献指南

欢迎贡献!请:
1. 查看项目状态文档
2. 遵循现有代码模式
3. 确保安全验证
4. 添加完整测试
5. 更新相关文档

## 📄 许可证

MIT License

## 🙏 致谢

- [Model Context Protocol](https://modelcontextprotocol.io/)
- [Nmap](https://nmap.org/)
- [Nuclei](https://github.com/projectdiscovery/nuclei)
- [Dirsearch](https://github.com/maurosoria/dirsearch)
- [Sqlmap](https://sqlmap.org/)
- [Hydra](https://github.com/vanhauser-thc/thc-hydra)
- Kali Linux 社区

## ⚠️ 免责声明

此工具仅用于授权的安全测试和教育目的。用户必须确保在扫描任何目标之前获得适当的授权。作者不对软件的误用负责。

**记住:能力越大,责任越大。只在授权环境中使用!** 🛡️

---

**版本: 1.0.0 | 工具: 5 | 状态: 生产就绪** 🚀

*Made with ❤️ for the security community*

## 🔗 相关链接

- 📦 [GitHub Repository](https://github.com/Xc1Ym/kali-tools-mcp)
- 📖 [安装指南](INSTALL.md)
- 🚀 [发布指南](RELEASE.md)
- 🐛 [报告问题](https://github.com/Xc1Ym/kali-tools-mcp/issues)
- 💬 [讨论区](https://github.com/Xc1Ym/kali-tools-mcp/discussions)

Maintenance

ActivityInactive
ResponsivenessNo issues