C0R3DMP/secureflow

GitHub: C0R3DMP/secureflow

一个基于 CrewAI 多 Agent 协作的 AI 驱动渗透测试与安全评估框架,自动化完成从网络侦察到报告生成的完整安全评估流程。

Stars: 2 | Forks: 0

# SecureFlow **AI 驱动的多 Agent 协作渗透测试框架** [![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue)](https://www.python.org/downloads/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Tests: 114/114](https://img.shields.io/badge/tests-114%2F114%20passing-brightgreen)](#testing) [![Status: Production](https://img.shields.io/badge/status-production--ready-success)](https://github.com/secureflow/secureflow) SecureFlow 是一个完整的、由 AI 驱动的安全评估和应用开发平台。多个 Agent 团队(Recon、Analyst、Reporter)通过共享上下文进行协作,以执行全面的渗透测试。支持 Claude、Gemini 和 Ollama 等 LLM。 ## 功能 ### 🔒 安全评估工作流 - **Recon Agent** (Gemini API/Ollama) — 通过 nmap 进行网络侦察、端口扫描和 CVE 发现 - **Analyst Agent** (Gemini API/Ollama) — 漏洞分析、可利用性评估和攻击链识别 - **Reporter Agent** (Gemini API/Ollama) — 执行报告、CVSS 评分以及 90 天的修复路线图 ### 💻 开发工作流 - **Architect Agent** — 系统设计、技术栈选择和项目结构规划 - **Developer Agent** — 生产环境代码生成、功能实现和项目脚手架 - **Reviewer Agent** — 代码质量审查、Bug 检测和安全评估 ### 🎯 核心能力 - 具有共享上下文的多 Agent 协作工作流 - 带有 SSE 实时流的 FastMCP 服务器 - 具有实时扫描监控的 Web 仪表板 - 提供完整命令支持的 CLI 界面 - 报告导出(HTML、PDF、JSON) - Webhook 通知和计划扫描 - 114 个自动化测试,覆盖全面 ## 快速开始 ### 1. 克隆与设置 ``` git clone https://github.com/secureflow/secureflow.git cd secureflow python3 -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -e ".[dev]" ``` ### 2. 配置 ``` cp .env.example .env # 使用你的 API 密钥编辑 .env(见 Configuration 部分) ``` ### 3. 运行 ``` # CLI 安全评估 secureflow scan example.com # Web dashboard secureflow server # Visit http://localhost:5000/ui ``` ## 配置 ### 环境变量 创建包含以下内容的 `.env` 文件: ``` # 必需 ANTHROPIC_API_KEY=sk-... # Optional, uses Claude CLI if not set GEMINI_API_KEY=... # Optional, uses Gemini CLI if not set # 可选 OLLAMA_BASE_URL=http://localhost:11434 MCP_SECRET=<32-char bearer token> # For server auth (generate: openssl rand -hex 32) TELEGRAM_BOT_TOKEN=... # For Telegram notifications TELEGRAM_CHAT_ID=... # For Telegram notifications ``` ### LLM Provider 优先级 SecureFlow 会按以下顺序尝试各个 Provider(使用第一个可用的): 1. **Gemini API** (5 req/min) — 需要 `GEMINI_API_KEY` 2. **OpenRouter** (免费模型) — 需要 `OPENROUTER_API_KEY` — 推荐用于大批量任务 3. **Ollama** (本地,免费) — 需要运行 `ollama run qwen2.5-coder` 4. **Claude API** — 需要 `ANTHROPIC_API_KEY` **建议:** 使用 OpenRouter 获取免费模型,其免费层级没有速率限制 ## CLI 命令 | 命令 | 描述 | |---------|-------------| | `secureflow scan ` | 运行完整的安全评估 | | `secureflow recon ` | 仅进行快速侦察 | | `secureflow build ` | 生成应用程序代码 | | `secureflow review ` | 代码质量审查 | | `secureflow schedule add` | 安排周期性扫描 | | `secureflow schedule list` | 显示已安排的扫描 | | `secureflow schedule remove ` | 删除已安排的扫描 | | `secureflow history` | 查看历史扫描 | | `secureflow server` | 启动 MCP 服务器(端口 5000) | | `secureflow status` | 检查系统健康状况 | | `secureflow --help` | 显示所有命令 | ## API Endpoints | Method | Endpoint | 描述 | |--------|----------|-------------| | POST | `/tools/run_security_crew` | 异步安全评估(返回 `scan_id`) | | POST | `/tools/run_recon` | 快速侦察(异步) | | POST | `/tools/run_dev_crew` | 代码生成(异步) | | POST | `/tools/run_code_review` | 代码审查分析(异步) | | GET | `/api/scans/{scan_id}` | 轮询扫描状态 | | GET | `/api/history` | 扫描历史(JSON) | | GET | `/api/reports/export?target=X&format=html` | 导出报告(html/pdf/json) | | GET | `/ui` | Web 仪表板 | | GET | `/stream/{target}` | SSE 进度流 | ## 架构 ### 安全评估工作流 ``` ┌─────────────────────────────────────────────────────────┐ │ Phase 1: RECONNAISSANCE (Recon Agent) │ │ • nmap scan (top 1000 ports) │ │ • Service version detection │ │ • CVE lookup per service │ │ └─→ Save to SharedContext: recon_scan_results │ └──────────────────┬──────────────────────────────────────┘ │ ┌──────────────────▼──────────────────────────────────────┐ │ Phase 2: ANALYSIS (Analyst Agent) │ │ • Read recon findings │ │ • Assess exploitability per service │ │ • Identify attack chains & lateral movement │ │ • Rate: CRITICAL | HIGH | MEDIUM | LOW │ │ └─→ Save to SharedContext: vulnerability_analysis │ └──────────────────┬──────────────────────────────────────┘ │ ┌──────────────────▼──────────────────────────────────────┐ │ Phase 3: REPORTING (Reporter Agent) │ │ • Executive summary (non-technical) │ │ • Detailed findings table │ │ • 90-day remediation roadmap │ │ • Technical appendix & CVSS scores │ │ └─→ Return: final_report (HTML/PDF/JSON) │ └─────────────────────────────────────────────────────────┘ ``` ### 开发工作流 ``` ARCHITECTURE → (shared context) → IMPLEMENTATION → REVIEW ``` ## 测试 ``` # 运行所有测试 pytest tests/ -v # With coverage pytest tests/ --cov=secureflow # 特定测试 pytest tests/test_cli.py::test_scan -v ``` 状态:**114/114 个测试通过** ✅ ## 项目结构 ``` secureflow/ ├── secureflow/ │ ├── cli.py # CLI interface │ ├── server.py # FastMCP server │ ├── config.py # LLM config & provider detection │ ├── server-launcher.py # Robust server management │ └── crew/ │ ├── agents.py # 6 agent definitions │ ├── tasks.py # Task workflows │ ├── tools.py # Agent tools (nmap, CVE lookup, etc.) │ ├── orchestrator.py # Security workflow │ └── dev_orchestrator.py # Development workflow ├── tests/ # 114 automated tests ├── frontend/ # React dashboard └── pyproject.toml # Package metadata ``` ## 部署 ### 本地开发 ``` source venv/bin/activate python server-launcher.py # Auto-restart on failure ``` ### 生产环境 (systemd) ``` sudo cp secureflow.service /etc/systemd/system/ sudo systemctl enable --now secureflow sudo systemctl status secureflow ``` ### Docker ``` docker build -t secureflow . docker run -p 5000:5000 -e ANTHROPIC_API_KEY=$KEY secureflow ``` ## 安全性 - ✅ Bearer token 认证(MCP 服务器) - ✅ 日志或 session 文件中不含凭证信息 - ✅ 发现结果使用 SQLite 存储(默认仅在本地) - ✅ HMAC-SHA256 Webhook 签名 - ✅ HTML 报告中的 XSS 防护 ## 已完成的里程碑 - [x] **M7** — CrewAI 1.14.5 升级,XSS 修复,Gemini 2.5-flash - [x] **M8** — 并发扫描,异步工具,状态轮询 - [x] **M9** — 报告导出(HTML/PDF/JSON) - [x] **M10** — 带有 HMAC 签名的 Webhook 通知 - [x] **M11** — 使用 cron 和 SQLite 持久化的计划扫描 - [x] **M12** — Claude/Gemini CLI 支持,详细的 Agent 提示,健壮的服务器启动器 ## 许可证 MIT 许可证 — 详见 [LICENSE](LICENSE) 文件 ## 支持 - **问题** — GitHub issues 追踪器 - **文档** — 参见 `docs/` 目录 - **示例** — 查看 `tests/` 获取模式 **基于 CrewAI + FastMCP 构建** | 版本 0.1.0 | ✅ 生产就绪
标签:AES-256, CTI, DLL 劫持, 多智能体, 大语言模型, 密码管理, 插件系统, 漏洞评估, 请求拦截, 逆向工具