Mazukriez/Hydra-Orchestrator-Cybersecurity-Edition
GitHub: Mazukriez/Hydra-Orchestrator-Cybersecurity-Edition
专为企业安全运营构建的多智能体自动化编排框架,集成 SOC 分诊、SIEM 关联、威胁狩猎、漏洞管理、事件响应和授权渗透测试六大核心能力,同时支持通过 Ollama 实现物理隔离环境下的本地大模型辅助分析。
Stars: 0 | Forks: 0
# Hydra-Orchestrator-Cybersecurity-Edition
一个多智能体自动化和编排框架,能够集成各种工具、API 和环境工具,专为企业安全操作构建,包含用于 SOC、SIEM、漏洞管理、事件响应、威胁狩猎和授权渗透测试的专用智能体。
# Hydra Orchestrator 网络安全版
## 概述
企业安全操作套件,配备用于 SOC、SIEM、漏洞管理、事件响应、威胁狩猎和授权渗透测试的专用智能体。
## 安全智能体
### 1. SOC 分诊智能体
* 从 SIEM/EDR 获取告警
* 去除重复噪音
* 严重性评分
* 建议遏制措施
### 2. SIEM 关联智能体
* 解析来自 Splunk、Sentinel、QRadar、Elastic 的日志
* 构建检测规则 (Sigma/YARA,在适用情况下)
* MITRE ATT&CK 映射
### 3. 威胁狩猎智能体
* 在身份验证、端点和云日志中搜索异常
* 检测横向移动模式
* IOC 富化
### 4. 漏洞智能体
* 集成 Nessus、Qualys、OpenVAS
* 根据可利用性和资产关键性对 CVE 进行优先级排序
* 生成补丁计划
### 5. 渗透测试智能体 (仅限授权环境)
* 资产发现
* 安全配置检查
* Web 应用 OWASP 验证
* 生成发现和修复步骤
### 6. IR 指挥智能体
* 协调事件工作流
* 证据检查清单
* 利益相关者沟通模板
* 事后总结生成
## Python 安全智能体示例
```
class SocTriageAgent(BaseAgent):
name='soc_triage'
async def run(self, task, context):
alerts=context.get('alerts',[])
critical=[a for a in alerts if a.get('severity')=='high']
return {
'summary': f'{len(critical)} critical alerts',
'actions':['isolate host','reset credentials','collect memory']
}
```
## API 路由示例
```
@app.post('/soc/triage')
async def triage(payload: dict):
return await orchestrator.run('soc_triage', payload)
@app.post('/pentest/scan')
async def scan(payload: dict):
return await orchestrator.run('pentest', payload)
```
## 集成
* Microsoft Sentinel
* Splunk
* Elastic Security
* CrowdStrike
* Defender XDR
* AWS GuardDuty
* Azure Defender
* Google Security Command Center
* Jira / ServiceNow
* Slack / Teams
## 检测内容
```
title: Suspicious PowerShell Download
logsource:
category: process_creation
selection:
Image|endswith: powershell.exe
CommandLine|contains:
- Invoke-WebRequest
condition: selection
level: high
```
## Docker 安全堆栈
```
services:
hydra-api:
build: .
postgres:
image: postgres:16
redis:
image: redis:7
```
## 使用剧本
1. 新的勒索软件告警 -> SOC 智能体分诊 -> 隔离端点 -> IR 指挥智能体启动工作流。
2. 每周补丁周期 -> 漏洞智能体对关键资产进行排序。
3. 可疑登录激增 -> 威胁狩猎智能体检查不可能的旅行和 MFA 缺口。
## 合规包
* ISO 27001
* NIST CSF
* CIS Controls
* PCI DSS
* SOC 2
## 安全使用护栏
* 渗透测试模块仅限用于自有/授权目标。
* 破坏性操作需经人工批准。
* 完整的审计日志记录。
* 需配置 Secrets 保管库。
# 完整 Python 源代码仓库 (生产就绪)
## 仓库结构
```
hydra-orchestrator/
├── apps/api/main.py
├── apps/api/routes/
│ ├── health.py
│ ├── soc.py
│ ├── pentest.py
│ └── incidents.py
├── packages/core/
│ ├── orchestrator.py
│ ├── registry.py
│ ├── models.py
│ └── auth.py
├── packages/agents/
│ ├── soc_triage.py
│ ├── siem_correlation.py
│ ├── vuln_agent.py
│ └── ir_commander.py
├── packages/connectors/
│ ├── splunk.py
│ ├── sentinel.py
│ └── slack.py
├── tests/
├── requirements.txt
└── docker-compose.yml
```
## requirements.txt
```
fastapi
uvicorn[standard]
pydantic
sqlalchemy
psycopg2-binary
redis
httpx
python-jose[cryptography]
passlib[bcrypt]
pytest
```
## packages/core/models.py
```
from pydantic import BaseModel
from typing import Any, Dict, List
class TaskRequest(BaseModel):
agent: str
payload: Dict[str, Any] = {}
class TaskResult(BaseModel):
status: str
output: Dict[str, Any]
```
## packages/core/registry.py
```
class AgentRegistry:
def __init__(self):
self._agents = {}
def register(self, agent):
self._agents[agent.name] = agent
def get(self, name):
return self._agents[name]
```
## packages/core/orchestrator.py
```
class Orchestrator:
def __init__(self, registry):
self.registry = registry
async def run(self, agent_name, payload):
agent = self.registry.get(agent_name)
return await agent.run(payload, {})
```
## packages/agents/soc_triage.py
```
class SocTriageAgent:
name = 'soc_triage'
async def run(self, payload, context):
alerts = payload.get('alerts', [])
highs = [a for a in alerts if a.get('severity') in ('high','critical')]
return {
'status':'ok',
'output': {
'critical_count': len(highs),
'recommended_actions': ['isolate host','disable user','collect logs']
}
}
```
## apps/api/main.py
```
from fastapi import FastAPI
from packages.core.registry import AgentRegistry
from packages.core.orchestrator import Orchestrator
from packages.agents.soc_triage import SocTriageAgent
app = FastAPI(title='Hydra Orchestrator Cyber Edition')
registry = AgentRegistry()
registry.register(SocTriageAgent())
orchestrator = Orchestrator(registry)
@app.get('/health')
async def health():
return {'status':'ok'}
@app.post('/run/{agent}')
async def run(agent: str, payload: dict):
return await orchestrator.run(agent, payload)
```
## docker-compose.yml
```
services:
api:
build: .
command: uvicorn apps.api.main:app --host 0.0.0.0 --port 8000
ports:
- "8000:8000"
redis:
image: redis:7
postgres:
image: postgres:16
environment:
POSTGRES_PASSWORD: hydra
```
## 本地运行
```
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn apps.api.main:app --reload
```
## 生产加固
* JWT 身份验证
* RBAC 角色 (Analyst/Admin)
* 速率限制
* 通过 Vault 管理 Secrets
* 结构化审计日志
* CI/CD 测试与 linting
* 容器镜像扫描
## 示例请求
```
curl -X POST http://localhost:8000/run/soc_triage \
-H 'Content-Type: application/json' \
-d '{"alerts":[{"severity":"high"}]}'
```
# Ollama 离线 LLM 安全版
## 概述
通过 Ollama 使用本地 LLM 的物理隔离/隐私优先版本。专为 SOC 团队、受监管行业以及限制云 AI 的环境而设计。
## 支持的本地模型
* llama3
* mistral
* qwen
* codellama
* deepseek-coder (如果在本地可用)
## 架构
```
Hydra API -> Local Agent Router -> Ollama API -> Security Agents -> Local Vector DB
```
## requirements-local.txt
```
fastapi
uvicorn[standard]
httpx
chromadb
sentence-transformers
pydantic
```
## packages/connectors/ollama.py
```
import httpx
class OllamaClient:
def __init__(self, host='http://localhost:11434'):
self.host = host
async def generate(self, model, prompt):
async with httpx.AsyncClient(timeout=120) as client:
r = await client.post(f'{self.host}/api/generate', json={
'model': model,
'prompt': prompt,
'stream': False
})
return r.json()['response']
```
## packages/agents/local_soc_llm.py
```
from packages.connectors.ollama import OllamaClient
class LocalSocLLMAgent:
name = 'local_soc_llm'
async def run(self, payload, context):
prompt = f"Analyze this security alert and give triage steps: {payload}"
client = OllamaClient()
out = await client.generate('llama3', prompt)
return {'status':'ok','output':{'analysis':out}}
```
## apps/api/main.py 添加内容
```
from packages.agents.local_soc_llm import LocalSocLLMAgent
registry.register(LocalSocLLMAgent())
```
## 安装 Ollama
```
# Linux/macOS
curl -fsSL https://ollama.com/install.sh | sh
# 拉取模型
ollama pull llama3
ollama serve
```
## 离线运行 Hydra
```
pip install -r requirements-local.txt
uvicorn apps.api.main:app --reload
```
## 示例请求
```
curl -X POST http://localhost:8000/run/local_soc_llm \
-H 'Content-Type: application/json' \
-d '{"alert":"Multiple failed admin logins from new country"}'
```
## 安全用例
* 离线告警分诊
* 恶意软件日志摘要
* 威胁情报笔记生成
* 针对检测规则的本地代码审查
* 合规证据起草
## 物理隔离环境的加固措施
* 禁用出站互联网访问
* 仅限本地模型存储
* 加密 Vector DB
* RBAC 账户
* 已签名的容器镜像
* USB 媒体控制
## 推荐硬件
* 最低配置:16GB 内存,仅 CPU
* 更佳配置:32GB 内存 + NVIDIA GPU
* 最佳配置:64GB 内存 + 多 GPU SOC 服务器
标签:AI风险缓解, API集成, Beacon Object File, CISA项目, Cloudflare, CSV导出, CVE优先级排序, DevSecOps, DNS 反向解析, GPT, IOC富集, IP 地址批量处理, MITRE ATT&CK, Modbus, Mr. Robot, Nessus, OpenCanary, OpenVAS, PHP, Python, Python自动化, QRadar, Qualys, Sentinel, Web API, YARA, 上游代理, 云资产可视化, 企业安全, 关系图谱, 可观测性, 后渗透, 告警分诊, 基线检查, 多智能体, 子域名变形, 安全代理, 安全合规, 安全编排自动化与响应(SOAR), 安全运营, 实时处理, 密码管理, 扫描框架, 授权渗透测试, 插件系统, 搜索引擎查询, 数字取证, 数据泄露, 无后门, 无线安全, 日志关联分析, 模拟器, 横向移动检测, 测试用例, 漏洞管理, 端点安全, 网络代理, 网络安全, 网络安全审计, 网络资产管理, 自动化编排, 自动化脚本, 补丁管理, 请求响应过滤, 请求拦截, 运行时操纵, 逆向工具, 隐私保护