KhitMinnyo/KMN-CyberSeek

GitHub: KhitMinnyo/KMN-CyberSeek

一款基于AI的自主渗透测试框架,能够自动完成侦察、漏洞分析和利用流程,降低渗透测试的技术门槛。

Stars: 2 | Forks: 1

# KMN-CyberSeek:AI驱动的自主红队操作员 ![KMN-CyberSeek 横幅](https://img.shields.io/badge/KMN--CyberSeek-AI%20Red%20Team%20Operator-blue) ![Python](https://img.shields.io/badge/Python-3.8%2B-green) ![FastAPI](https://img.shields.io/badge/FastAPI-0.104%2B-blue) ![Streamlit](https://img.shields.io/badge/Streamlit-1.28%2B-red) ![许可证](https://img.shields.io/badge/License-MIT-yellow) **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, 插件系统, 无线安全, 渗透测试框架, 漏洞分析, 网络安全, 网络安全审计, 网络安全工具, 自主渗透测试, 自动化渗透测试, 虚拟驱动器, 访问控制, 路径探测, 逆向工具, 防御, 隐私保护