aya-sec88/SOC-Automation-SQLi-Incident-Response
GitHub: aya-sec88/SOC-Automation-SQLi-Incident-Response
基于 Wazuh-Shuffle-VirusTotal-TheHive 的全自动 SQL 注入事件响应 SOAR 流水线,可在 20 秒内完成从告警分析到工单创建的完整闭环。
Stars: 0 | Forks: 0
# SOC 自动化 — SQLi 事件响应流水线

## 概述
这是在 Intelcia Tech 的 SOC 实习期间构建的全自动 SQLi 事件响应流水线。当 Wazuh 检测到 SQL 注入攻击时,该工作流会自动分析告警,通过 VirusTotal 扩充攻击者 IP 信息,创建或更新 TheHive 工单,并记录完整的 playbook 分析——整个过程在 20 秒内完成,无需任何人工干预。
## 架构
```
Wazuh (SIEM) → Shuffle (SOAR) → VirusTotal → TheHive (Case Management)
```
## 截图
### Shuffle 工作流

### 创建 TheHive 工单

### TheHive 完整分析评论

### TheHive 可观测项 (IOC)

### TheHive 更新的评论 (返回 IP)

### 静默 P3 工单 (攻击已拦截)

## 主要功能
- 自动检测 12 种 SQLi 攻击类型
- 基于 playbook 逻辑分配 P1、P2 或 P3 优先级
- 每个攻击者 IP 对应一个工单——零重复
- 跟踪每个 IP 的攻击频率及 HTTP 状态码历史
- 通过 VirusTotal 进行 IP 信誉度扩充(70+ 引擎)
- 为被拦截的 P3 攻击提供静默取证日志记录
- 自动过滤空告警和无效告警
- 完全遵循 SOC playbook 的 6 个步骤
- 无需任何 SOC 人工干预
## 检测到的攻击类型
| 类型 | 检测模式 |
|---|---|
| Time-Based | SLEEP(), PG_SLEEP(), WAITFOR DELAY |
| Error-Based | EXTRACTVALUE, XMLTYPE, FROM DUAL |
| Boolean-Blind | CASE WHEN, AND 1=1, CHR() |
| Union-Based | UNION SELECT |
| Schema-Enumeration | INFORMATION_SCHEMA |
| Order-By-Enumeration | ORDER BY |
| Evasion-Based | /**/, %2F%2A%2A%2F |
| Stacked-Queries | ; DROP, ; EXEC |
| Out-of-Band | LOAD_FILE, INTO OUTFILE |
| Auth-Bypass | OR 1=1--, ADMIN'-- |
| DNS-Exfiltration | XP_CMDSHELL, XP_DIRTREE |
| Generic-SQLi | SELECT...FROM fallback |
## 优先级逻辑
| 优先级 | 条件 | 操作 |
|---|---|---|
| P1 | HTTP 200/500 或字节数 > 800 | 完整流水线 — 立即响应 |
| P2 | 尝试失败或 HTTP 503 | 完整流水线 — 持续监控 |
| P3 | HTTP 403/404/400/301/302 | 仅记录静默取证工单 |
## 工作流 — 节点详解
### 节点 1 — Webhook
当规则 202004 触发时,通过 HTTP POST 实时接收 Wazuh 告警。
### 节点 2 — 分析告警 (Python)
工作流的大脑。提取所有字段,解码 URL 编码的 payload,检测攻击类型,分配优先级 P1/P2/P3,计算数据泄露风险,并决定路由(完整 / 静默 / 跳过)。
### 节点 3 — 统计尝试次数 (Python)
查询 TheHive API 以查找与攻击者 IP 匹配的现有工单。跟踪所有尝试中的总攻击次数和 HTTP 状态码历史记录。
### 节点 4 — VirusTotal
对照 70 多个安全引擎检查攻击者 IP 的信誉。返回恶意和安全引擎的数量统计。
### 节点 5 — HTTP 搜索
在 TheHive 中搜索与攻击者 IP 匹配的现有工单,以防止重复。
### 节点 6 — TheHive 1 — 创建工单
为新的攻击者 IP 创建包含完整事件详情、自动严重性分级和标签的 TheHive 新工单。
### 节点 7 — TheHive 2 — 添加可观测项
将攻击者 IP 作为与工单关联的 IOC 可观测项进行添加。
### 节点 8 — TheHive 3 — 完整分析评论
添加完整的 playbook 分析评论,包括 VirusTotal 结果、攻击详情、频率数据和第 5 步的建议。
### 节点 9 — TheHive 4 — 静默 P3 工单
为被拦截的攻击创建静默取证工单——不会向分析人员发送告警,但攻击过程会被完整记录。
### 节点 10 — TheHive 5 — 更新现有工单
当同一 IP 再次发起攻击时,在现有工单中添加新评论,而不是创建重复的工单。
## Playbook 合规性
| Playbook 步骤 | 节点 |
|---|---|
| 步骤 1 — 告警验证 | 分析告警 |
| 步骤 2 — 网络上下文 | 统计尝试次数 + HTTP 搜索 |
| 步骤 3 — 服务器行为 | HTTP 状态码分析 |
| 步骤 4 — 条件判断与升级 | 优先级路由逻辑 |
| 步骤 5 — 建议 | TheHive 3 评论 |
| 步骤 6 — 报告与结单 | TheHive 1/3/4/5 |
## 性能
| 指标 | 数值 |
|---|---|
| 从告警到创建工单 | 20 秒以内 |
| 所需人工干预 | 零 |
| 检测到的攻击类型 | 12 种 |
| 重复工单 | 零 — 每个 IP 一个工单 |
## 使用的工具
- **Wazuh** — SIEM 和日志分析
- **Shuffle** — SOAR 编排
- **VirusTotal** — 威胁情报
- **TheHive** — 工单管理
- **Python** — 分析与自动化逻辑
## 仓库结构
```
SOC-Automation-SQLi-Incident-Response/
│
├── README.md
├── shuffle/
│ └── analyze_alert.py
│
└── screenshots/
├── workflow.png
├── the_hive_case.png
├── the_hive_comment.png
├── the_hive_observable.png
├── the_hive_updated_comment.png
└── silent_case.png
```
## 作者
于 2026 年 4 月在 Intelcia Tech 的 SOC 实习期间构建
## 许可证
MIT License
标签:Ask搜索, CIDR查询, CISA项目, HTTP/HTTPS抓包, Intelcia, IOC提取, IP 地址批量处理, JSONLines, MITER ATT&CK, PB级数据处理, Shuffle, SOAR, SOC自动化, SQL注入检测, TheHive, VirusTotal, Wazuh, Web安全, 告警富化, 威胁情报, 安全剧本, 安全实习生项目, 安全编排与自动化响应, 安全运维, 安全运营中心, 应急响应流程, 开发者工具, 态势感知, 恶意IP分析, 攻击特征匹配, 数字取证, 无线安全, 案卷管理, 漏洞利用防御, 网络安全, 网络安防, 网络映射, 自动化脚本, 自动化防御, 蓝队分析, 误报过滤, 逆向工具, 隐私保护, 零信任