Archsec-Emman/Agentic-Blue-Team

GitHub: Archsec-Emman/Agentic-Blue-Team

一个融合 AI agent 与内置 SIRP 的自托管安全运营平台,通过本地 LLM 自动化执行安全告警分类、情报富化和事件响应闭环。

Stars: 1 | Forks: 0

403-Killchain Banner

# Agentic Blue Team [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Platform](https://img.shields.io/badge/platform-linux%20%7C%20windows%20%7C%20macos-lightgrey)](https://github.com/Archsec-Emman/Agentic-Blue-Team) [![Docker](https://img.shields.io/badge/docker-support-blue)](https://www.docker.com/) **一个以 agent 为中心的开源平台,将 AI 智能与内置的安全事件响应平台(SIRP)相融合,以自动执行告警分类、丰富和响应——所有这些都在您自己的基础设施内完成。** ## 📖 概述 Agentic Blue Team 旨在变革安全运营中心(SOC)处理告警的方式。该平台没有采用静态仪表板,而是编排模块化 AI agent(由本地 LLM 提供支持),以持续摄取告警,利用威胁情报对其进行丰富,并生成结构化的安全记录。一个完全集成的 SIRP(构建于 Nocoly 工作表平台之上)用于管理案例、告警、制品和 playbook,使分析师能够一键触发自动化的补救或威胁狩猎工作流。 整个系统专为本地部署而设计:您的数据、模型和操作永远不会离开您的环境,从而确保完全的机密性和合规性。 ## ✨ 核心功能 | 功能 | 描述 | |---------|-------------| | **AI 驱动的智能** | 预构建的 agent 模板(LangGraph、Dify),使用本地 LLM 来分析告警、丰富数据并确定结果。 | | **内置 SIRP** | 基于 Nocoly 的完整事件响应平台,可快速定制 UI、数据模型、报告和工作流。 | | **强大的自动化工作流** | 通过 Webhook 从 Splunk / Kibana 摄取 → Redis Streams → agent 分析 → SIRP → playbook。 | | **高度可扩展** | 丰富的 Python 模块和插件库,可与任何安全设备或 API 集成。 | | **本地部署与数据控制** | 完全自行托管;一切都保留在您的环境中。 | | **流式 + 批处理** | 实时告警分析以及用于用户触发任务的事件驱动自动化。 | ## 🧠 架构 Agentic Blue Team 遵循**五阶段 pipeline**,直接映射到现代 SOC 工作流: ``` SIEM (Splunk/ELK) → Webhook → Redis Stream → AI Agents → SIRP → Playbooks ``` ### 1. 告警摄取 Splunk、Kibana/ELK 或任何 SIEM 通过 **webhook** 将安全告警转发到平台的内置接收器。 ### 2. 流处理 告警被推送到专用的 **Redis Streams**(每种告警类型一个),作为持久且可重放的消息队列。 ### 3. AI Agent 分析 模块化 AI agent 从流中摄取告警,并使用**本地 LLM**、威胁情报丰富和基于规则的决策制定来执行深度分析。 ### 4. SIRP 集成 Agent 输出被格式化为标准化的安全记录,并发送到内置的**安全事件响应平台**,在那里它们将创建或更新案例、告警和制品。 ### 5. 自动化响应 分析师直接从 SIRP 界面触发 **playbook** 以执行进一步操作——例如威胁狩猎、补救或通知——从而形成闭环。 ## 🗃️ 核心数据模型 SIRP 构建于一个**干净的、本体驱动的数据模型**之上,该模型将检测、调查和响应关注点分离开来。 | 实体 | 用途 | |--------|---------| | **Case (案例)** | 主要的调查对象;聚合告警、制品、丰富信息和工单。 | | **Alert (告警)** | 中间层对象,保留检测源信息(OCSF 风格)并链接到制品。 | | **Artifact (制品)** | 原子单元:IP、域名、哈希、用户名等——任何查询或丰富操作的自然输入。 | | **Enrichment (丰富信息)** | 结构化的、可附加的信息(威胁情报、CMDB 数据、日志),可以独立维护。 | | **Ticket (工单)** | 与外部工单系统同步,并链接到 Case。 | | **Playbook** | 针对 Case、Alert 或 Artifact 运行的自动化逻辑(通常是 LangGraph 编排)。 | | **Knowledge (知识)** | 共享的、高时效性的知识库,同时为人类分析师和 AI agent 提供服务。 | ## 🚀 安装 ### 前置条件 - Python 3.10+ - Redis - Docker(可选,用于容器化部署) ### 快速开始 ``` # Clone the repository git clone https://github.com/Archsec-Emman/Agentic-Blue-Team cd Agentic-Blue-Team # 安装依赖 pip install -r requirements.txt # 运行数据库迁移 python manage.py migrate # 启动开发服务器 python manage.py runserver ``` 平台将可通过 `http://localhost:8000` 访问。 ### Docker 部署(推荐用于生产环境) ``` # 构建并启动所有服务 docker-compose up -d # 服务: # - Web UI (Nocoly SIRP) # - Redis Streams # - Uvicorn (ASGI server) # - Ollama (可选,用于本地 LLMs) ``` ## ⚙️ 配置 ### 连接 SIEM (Splunk / ELK) 1. 配置您的 SIEM,以通过 webhook 将告警发送到 `http://:8000/api/webhook/siem` 2. 在 `settings.py` 中设置适当的身份验证 token。 3. 告警将根据其类型自动路由到正确的 Redis stream。 ### 使用本地 LLM Agentic Blue Team 通过 **Ollama** 插件支持任何本地 LLM。要集成: 1. 安装 Ollama 并拉取模型(例如 `ollama pull llama3.2`)。 2. 在平台中,转到 **Plugins → Ollama** 并输入模型名称。 3. Agent 将自动使用配置好的 LLM 进行分析。 ### 定制 SIRP 内置的 SIRP (Nocoly) 允许完全定制: - **UI** – 拖放式仪表板和表单 - **数据模型** – 向 Case、Alert、Artifact 等添加自定义字段 - **报告** – 生成合规性或摘要报告 - **工作流** – 定义审批链或自动化转换 有关数据模型和扩展点的详细说明,请参阅 `ARCHITECTURE.md` 文件。 ## 🔌 插件生态系统 Agentic Blue Team 包含一个不断增长的**即插即用模块**库,位于 `PLUGINS/` 目录下。 | 插件 | 用途 | |--------|---------| | **AlienVaultOTX** | 从 OTX 拉取威胁情报 | | **ClaudeCode** | 使用 Anthropic 的 Claude 进行 agent 推理 | | **ELK** | 与 Elastic Stack 原生集成 | | **Embeddings** | 用于告警相似性搜索的向量 embedding | | **Forwarder** | 将告警转发到外部系统 | | **Huggingface** | 访问 Hugging Face 模型 | | **LLM** | 通用 LLM 适配器(OpenAI、Gemini 等) | | **MCP** | Model Context Protocol 支持 | | **Qdrant** | 用于制品关联的向量数据库 | 要激活插件,只需在 `settings.py` 中添加其配置;平台会自动发现并加载它。 ## 📂 项目结构 ``` Agentic-Blue-Team/ ├── ABT/ # Django project configuration │ ├── settings.py # Main settings (plugins, LLMs, webhooks) │ ├── urls.py # URL routing │ └── asgi.py / wsgi.py ├── AGENTS/ # Modular AI agents │ ├── agent_cmdb.py # CMDB enrichment agent │ ├── agent_report.py # Report generation agent │ ├── agent_siem.py # SIEM alert processing │ └── agent_threat_intelligence.py ├── Core/ # Core data models (Case, Alert, Artifact, etc.) │ ├── models.py # SIRP data model │ ├── serializers.py │ └── views.py # REST API endpoints ├── PLAYBOOKS/ # Automated response playbooks │ ├── ALERT/ # Alert‑specific playbooks │ ├── ARTIFACT/ # Artifact‑specific playbooks │ └── CASE/ # Case‑level remediation workflows ├── PLUGINS/ # Extensible plugin library (see list above) ├── Lib/ # Core libraries (API, base modules, etc.) ├── DATA/ # Agent‑specific data handlers ├── Docker/ # Docker Compose services (DB, Redis, Ollama, etc.) ├── ARCHITECTURE.md # Detailed architecture reference ├── manage.py # Django management script ├── pyproject.toml # Python project metadata └── README.md # This file ``` ## 📄 许可证 该项目基于 **MIT License** 授权——详情请参阅 [LICENSE](LICENSE) 文件。 ## 📬 联系与支持 - **GitHub Issues**: [https://github.com/Archsec-Emman/Agentic-Blue-Team/issues](https://github.com/Archsec-Emman/Agentic-Blue-Team/issues) - **作者**: [Archsec-Emman](https://github.com/Archsec-Emman) *如果该平台加速了您的安全运营,请考虑给该仓库加个星标。* ⭐
标签:AI代理, AI风险缓解, Python, 告警分诊, 安全运营, 扫描框架, 搜索引擎查询, 无后门, 本地大模型, 请求拦截, 调试插件, 逆向工具