Unfixer/Watchtower-AI

GitHub: Unfixer/Watchtower-AI

Watchtower AI 是一个基于多智能体架构的自主安全运营指挥中心,通过 AI 自动完成告警分诊、威胁关联、攻击重建和响应计划生成,解决 SOC 团队告警疲劳与调查效率低下的问题。

Stars: 0 | Forks: 0

# Watchtower AI - 自主网络威胁指挥中心 Watchtower AI 是一个企业级、AI 原生的安全运营中心 (SOC) 指挥中心,专为安全分析师和高管设计。它不仅仅是简单地记录警报,Watchtower AI 还能对警报进行分诊,丰富网络/身份指标,重建按时间顺序排列的攻击故事,映射 MITRE ATT&CK 战术,预测攻击者目标,计算定量风险画像,并起草遏制计划。 该平台使用 **FastAPI**、**Next.js 15**、**LangGraph** 和 **Microsoft Azure AI Foundry** 构建,已准备好在黑客马拉松中获胜并保护生产环境。 ## 🛠️ 技术栈 - **前端:** Next.js 15 (React 19)、TypeScript、Tailwind CSS、Framer Motion (微动画)、Recharts (风险遥测) - **后端:** FastAPI (Python 3.12)、WebSockets (实时协作流)、SQLAlchemy - **AI 核心:** LangGraph (多智能体状态协调)、LangChain、Azure OpenAI - **数据库:** PostgreSQL (包含用于 RAG 匹配的 `pgvector`)、Redis (情报缓存) - **容器:** Docker、Docker Compose - **云端目标:** Azure Container Apps、Azure Database for PostgreSQL ## 🚀 架构工作流 Watchtower AI 通过 **LangGraph State Graph** 协调 10 个专门的安全智能体: ``` [ALERT INGEST] │ ▼ 1. Alert Intake Agent (Normalizes JSON & isolates raw indicators) │ ▼ 2. Threat Intel Agent (Enriches malicious IPs/domains via AbuseIPDB & VT) │ ▼ 3. MITRE ATT&CK Agent (Maps behavior footprints to ATT&CK matrix columns) │ ▼ 4. Attack Reconstruction Agent (Assembles horizontal timeline narratives) │ ▼ 5. Adversary Reasoning Agent (Infers targets' goal and next step) │ ▼ 6. Knowledge Retrieval Agent (RAG queries NIST containment directives) │ ▼ 7. CVE Analysis Agent (Locates software CVE exposure on systems) │ ▼ 8. Risk Assessment Agent (Calculates business severity and financial cost) │ ▼ 9. Incident Response Agent (Compiles custom mitigation playbooks) │ ▼ 10. Executive Reporting Agent (Finalizes PDF-ready markdown summaries) ``` ## 💻 本地快速启动 ### 选项 A:统一 Docker Compose (推荐) 您可以通过单个命令启动整个技术栈 (Postgres + Redis + Backend API + Next.js Portal)。 1. 确保已安装并正在运行 Docker Desktop。 2. 在根目录下,启动编排文件: docker-compose up --build 3. 运行后,访问各项服务: - **前端门户:** `http://localhost:3000` - **后端 API 文档:** `http://localhost:8000/docs` - **WebSocket 流:** `ws://localhost:8000/ws/agent-status/{incident_id}` ### 选项 B:本地开发运行 (手动) 如果您不想使用 Docker 运行: **1. 数据库设置** 启动本地 PostgreSQL 服务器并创建一个名为 `watchtower` 的数据库。运行 `db/schema.sql` 中的 SQL 命令以初始化 schema 表。 **2. 后端 API 设置** ``` cd backend python -m venv venv venv\Scripts\activate pip install -r requirements.txt uvicorn app.main:app --reload --port 8000 ``` **3. 前端 Next.js 设置** ``` cd frontend npm install npm run dev ``` 打开 `http://localhost:3000` 即可与指挥中心进行交互! ## 🌐 连接真实的 Azure OpenAI 密钥 如果您想绕过模拟回退逻辑并查询处于活动状态的 Azure OpenAI 部署: 1. 打开 `backend/app/config.py` (或在 Docker Compose 中设置环境变量)。 2. 设置以下变量: AZURE_OPENAI_API_KEY=your-azure-key AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/ AZURE_OPENAI_DEPLOYMENT_NAME=your-gpt4-deployment 3. 设置 `MOCK_MODE=False`。重启后端服务。
标签:AI智能体, Python, TypeScript, 威胁情报, 安全插件, 安全运营, 库, 应急响应, 开发者工具, 扫描框架, 搜索引擎查询, 无后门, 测试用例, 自动化攻击, 请求拦截