KhitMinnyo/KMN-CyberSeek
GitHub: KhitMinnyo/KMN-CyberSeek
一款基于AI的自主渗透测试框架,能够自动完成侦察、漏洞分析和利用流程,降低渗透测试的技术门槛。
Stars: 2 | Forks: 1
# KMN-CyberSeek:AI驱动的自主红队操作员





**KMN-CyberSeek** 是一款卓越的AI驱动的自主渗透测试框架,专为安全专业人员设计。它不仅建议攻击方式——还会使用严格、先进的方法论在需要时通过人工审批来实际执行攻击。
**官方仓库:** [https://github.com/KhitMinnyo/KMN-CyberSeek](https://github.com/KhitMinnyo/KMN-CyberSeek)
**核心方法论:** KMN-CyberSeek 遵循严格的渗透测试方法论,具有上下文感知的工具选择、对Web应用程序的强制指纹识别,以及用于完全自动化的非交互式执行模式。
## 🔥 先进的AI方法论
KMN-CyberSeek 使用复杂的AI驱动渗透测试方法论:
### 🎯 Web应用程序方法论
- **强制指纹识别**:当发现端口80/443时,第一步必须使用 `curl -I -s` 或 `whatweb` 进行指纹识别
- **上下文感知工具**:如果指纹识别显示 'WordPress',下一步必须使用 `wpscan --url --batch --enumerate u,vp,vt`
- **通用Web服务器**:对Apache/Nginx/IIS使用 `nikto -h -Tuning 123` 或 `gobuster`
### ⚡ 非交互式执行(关键)
- **Metasploit单行格式**:`msfconsole -q -x "use ; set RHOSTS ; set LHOST ; exploit -z"`
- **WPScan始终添加 `--batch`**:`wpscan --url --batch --enumerate u,vp,vt`
- **标准命令**:始终添加 `-y` 或 `--force`(例如 `apt-get install -y `)
### 🎯 攻击链示例
1. **WordPress目标**:Nmap → whatweb → wpscan → msfconsole
2. **通用Web服务器**:Nmap → curl → nikto → gobuster → sqlmap
3. **SMB/端口445**:Nmap → smbclient → crackmapexec → msfconsole
4. **SSH/端口22**:Nmap → hydra → searchsploit → msfconsole
## 🎯 推荐操作系统
**KMN-CyberSeek 专为安全导向的操作系统设计。**
### 主要推荐:Kali Linux
- 预装所有必需的渗透测试工具
- 完整的工具链兼容性(nmap、metasploit、wpscan等)
- 开箱即用的正确环境配置
- 安全测试的最佳性能和可靠性
### 其他安全操作系统选项:
- Parrot Security OS
- BlackArch Linux
- BackBox Linux
- 任何安装了安全工具的基于Debian/Ubuntu的发行版
### ❌ 不推荐:
- 没有安全工具的标准桌面发行版
- Windows Subsystem for Linux (WSL) - 工具兼容性有限
- macOS - 需要大量工具安装和配置
## 🎯 核心概念
一个自主的黑客框架,能够:
- 接收目标IP/域名
- 执行自动化的侦察
- 使用LLM进行推理(DeepSeek API或本地Ollama)
- 自动执行后续的利用步骤
- 维护会话状态和上下文感知推理
## 🏗️ 系统架构
```
KMN-CyberSeek Architecture:
┌─────────────────────────────────────────────────────────────┐
│ Streamlit Frontend (8501) │
│ Real-time Dashboard & Controls │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ FastAPI Backend (8000) │
│ Orchestrator │ Scanner │ AI Connector │ Database │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────┼─────────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌──────────────┐ ┌──────────────┐
│ AI Engine │ │ Scanner │ │ Execution │
│ - DeepSeek │ │ - Nmap │ │ Environment │
│ - Ollama │ │ - VulnScan │ │ (Kali/VM) │
└───────────────┘ └──────────────┘ └──────────────┘
```
## ✨ 核心功能
### 🚀 零拷贝执行
- 系统直接运行终端命令
- 将输出反馈给AI,无需手动输入
- 完全自动化的侦察到利用的流程
### 🧠 上下文感知推理
- AI维护目标的"知识库"
- 记住开放端口、服务版本、发现的凭据
- 使用ReAct模式(思考-行动-观察循环)
### 🔄 自我修复攻击
- AI分析命令失败
- 自动尝试不同的参数或攻击向量
- 自适应攻击策略
### 🎨 现代Web仪表板
- 带会话管理的目标输入字段
- 实时终端输出日志
- AI"思考过程"显示
- 敏感利用的"批准/拒绝"按钮
- 可视化攻击链进度跟踪
### 🛡️ 操作完整性
- SQLite数据库用于会话持久化
- 报告证据收集
- 操作审批工作流(高风险 vs 低风险)
- 自动证据日志记录
## 📋 安装
### 前置条件
- Python 3.8+
- 已安装Nmap(macOS上 `brew install nmap`,Ubuntu上 `apt install nmap`)
- Ollama(用于本地AI)- [安装Ollama](https://ollama.ai)
- DeepSeek API密钥(可选,用于云AI)
### 步骤1:克隆仓库
```
git clone https://github.com/KhitMinnyo/KMN-CyberSeek.git
cd KMN-CyberSeek
```
### 步骤2:安装依赖
```
pip install -r requirements.txt
```
### 步骤3:配置环境
```
cp .env.example .env
# 使用您的设置编辑 .env
```
### 步骤4:安装Ollama(可选 - 仅用于本地AI)
**注意**:此步骤仅在您计划使用Ollama本地AI时才需要。如果您使用带API密钥的DeepSeek API,可以跳过此步骤。
```
# macOS/Linux 安装
curl -fsSL https://ollama.ai/install.sh | sh
# 拉取 DeepSeek 模型(选择其一)
ollama pull deepseek-coder
# 或
ollama pull deepseek-v2
```
### 步骤5:启动系统
```
# 简单方法:使用启动脚本(推荐)
./start.sh
# 替代方法:在独立终端中手动启动
# 终端 1:启动 FastAPI 后端
python main.py
# 终端 2:启动 Streamlit 前端
streamlit run frontend.py
```
## 🚀 快速开始
1. **访问仪表板:** 打开 `http://localhost:8501`
2. **创建新会话:** 输入目标IP/域名
3. **监控侦察:** 观看实时Nmap扫描
4. **审查AI决策:** 查看AI的推理和建议命令
5. **批准/执行:** 批准低风险命令,审查高风险命令
6. **跟踪进度:** 跟踪攻击链阶段
## 🧩 技术工作流
```
1. Reconnaissance
└─ Nmap scan via Python subprocess
2. Analysis
└─ Send results to DeepSeek AI
└─ AI generates JSON with reasoning + command
3. Planning
└─ Risk assessment (low/medium/high)
└─ Approval workflow decision
4. Execution
└─ Run approved commands
└─ Capture output
5. Iteration
└─ Feed new data to AI
└─ Repeat until goal achieved
```
## 🔧 配置
### AI提供商选项
1. **本地Ollama**(默认):`provider="local"`
- 注重隐私
- 无需互联网
- 使用 `deepseek-coder` 或 `deepseek-v2` 模型
2. **DeepSeek API**:`provider="api"`
- 更高性能
- 需要API密钥
- 在.env中设置 `DEEPSEEK_API_KEY`
### 风险阈值
```
# 低风险(自动执行):nmap、dirb、whois、curl
# 中等风险(通知):漏洞扫描
# 高风险(手动批准):漏洞利用、暴力破解
```
### 数据库
- SQLite数据库:`kmn_cyberseek.db`
- 自动会话持久化
- 证据存储
- 命令历史
## 📁 项目结构
```
KMN-CyberSeek/
├── main.py # FastAPI backend server
├── frontend.py # Streamlit web dashboard
├── requirements.txt # Python dependencies
├── README.md # This file
├── .env.example # Environment template
├── ai/
│ ├── connector.py # AI integration (DeepSeek/Ollama)
│ └── prompts.py # System prompts
├── core/
│ ├── orchestrator.py # Session and workflow management
│ └── scanner.py # Nmap and vulnerability scanning
└── kmn_cyberseek.db # SQLite database (auto-created)
```
## 🔌 API端点
### 后端API(FastAPI)
- `GET /` - API信息
- `GET /health` - 健康检查
- `POST /api/start` - 启动新会话
- `GET /api/sessions` - 列出所有会话
- `GET /api/sessions/{id}` - 获取会话详情
- `POST /api/execute` - 执行命令
- `POST /api/approve` - 批准/拒绝命令
- `WS /api/ws` - 用于实时更新的WebSocket
### 前端(Streamlit)
- `http://localhost:8501` - 主仪表板
- 每5秒自动刷新
- 实时WebSocket更新
### 代码结构
```
# 核心组件:
# 1. 编排器:管理会话,协调各组件
# 2. 扫描器:处理侦察(Nmap、漏洞扫描)
# 3. AI 连接器:对接 DeepSeek/Ollama
# 4. 前端:Streamlit UI,实时更新
```
### 添加新工具
1. 将工具添加到扫描器模块
2. 更新AI提示以识别工具
3. 添加到风险分类
4. 如需要更新前端UI
## 🔒 安全注意事项
### 安全执行
- 命令在隔离环境中运行
- 高风险命令需要手动审批
- 会话超时和限制
- 默认启用审计日志
### 数据保护
- 具有适当权限的SQLite数据库
- 可选的证据加密
- 安全的凭据处理
- 会话隔离
### 道德使用
- **仅**用于您拥有或已获得测试许可的系统
- 遵守当地法律法规
- 适当的授权文档
- 负责任的披露实践
## 📈 路线图
### 阶段1(当前)
- [x] 基本侦察自动化
- [x] 与DeepSeek的AI集成
- [x] Streamlit仪表板
- [x] 命令审批工作流
### 阶段2(下一步)
- [ ] 主动目录利用与自动化
- [ ] Metasploit自动化
- [ ] 高级证据收集
- [ PDF报告生成
### 阶段3(未来)
- [ ] 多目标操作
- [ ] 团队协作功能
- [ ] 新工具的插件系统
- [ ] 云部署选项
## 🤝 贡献
1. Fork仓库
2. 创建功能分支(`git checkout -b feature/AmazingFeature`)
3. 提交更改(`git commit -m 'Add AmazingFeature'`)
4. 推送到分支(`git push origin feature/AmazingFeature`)
5. 打开Pull Request
### 开发环境设置
```
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
# 安装开发依赖
pip install -r requirements.txt
pip install black flake8 pytest
# 运行代码格式化工具
black .
```
## 📄 许可证
MIT许可证 - 详见 [LICENSE](LICENSE) 文件
## ⚠️ 免责声明
**KMN-CyberSeek 仅用于授权的安全测试和教育目的。**
- 开发者不承担任何责任,也不应对本程序造成的任何滥用或损害负责
- 仅用于您拥有或已获得明确测试许可的系统
- 遵守所有适用法律是用户的责任
## 🙏 致谢
- DeepSeek 提供的优秀AI模型
- Nmap项目提供的行业标准扫描器
- Streamlit 提供的出色仪表板框架
- FastAPI 提供的高性能后端
## 📞 支持
- 问题:[GitHub Issues](https://github.com/KhitMinnyo/KMN-CyberSeek/issues)
- 讨论:[GitHub Discussions](https://github.com/KhitMinnyo/KMN-CyberSeek/discussions)
- 文档:[Wiki](https://github.com/KhitMinnyo/KMN-CyberSeek/wiki)
**"每一次AI决策,都在推进渗透测试的艺术。"**
标签:AI安全工具, AI渗透测试, AI风险缓解, AI驱动安全, AV绕过, CISA项目, CTI, DNS 反向解析, DNS枚举, FastAPI, HTTP工具, Kubernetes, Nikto, Nmap, Pentesting, Red Team, Streamlit, Vulnerability Assessment, WPScan, 插件系统, 无线安全, 渗透测试框架, 漏洞分析, 网络安全, 网络安全审计, 网络安全工具, 自主渗透测试, 自动化渗透测试, 虚拟驱动器, 访问控制, 路径探测, 逆向工具, 防御, 隐私保护