diagonalciso/soc-detections
GitHub: diagonalciso/soc-detections
一款自托管的 Sigma 检测规则转换与管理工具,将社区共享的 Sigma 规则自动转换为 Wazuh XML 和 OpenSearch 查询,并追踪检测覆盖率。
Stars: 0 | Forks: 0
# soc-detections — Sigma 检测即代码
SOC 套件的检测内容管理工具。索引 **SigmaHQ** 规则库,让 SOC 可以按产品 / 类别 / 级别 / ATT&CK 进行浏览,并将规则转换为 **OpenSearch 查询**和 **Wazuh rule-XML 骨架**。追踪哪些规则已“部署” → 覆盖率 %。
- **规则:** [SigmaHQ/sigma](https://github.com/SigmaHQ/sigma) git submodule (DRL-1.1),约 3100 条规则。
- **本应用:** MIT,Python + PyYAML,端口 **:8103**。
## 为什么开发此应用
Wazuh 检测是手写的 XML。Sigma 是社区共享的检测语言。该应用在两者之间架起桥梁:选择一条 Sigma 规则 → 获取可供审查的 Wazuh 规则和 OpenSearch 查询,并衡量您实际覆盖的规则库比例。
## 转换器范围
尽力而为。处理常见的 Sigma 结构:字段修饰符(`contains`/`startswith`/`endswith`/`re`)、选择映射 (AND)、值列表 (OR)、关键字列表(全文)以及条件 `sel`、`sel and/or/not sel2`、`1 of sel*`、`all of them` 等。生僻条件会被标记为**不支持**,而不是被错误翻译——约 90% 的规则可以成功转换。**在将生成的 Wazuh XML 加载到 manager 之前,请务必进行审查。**
## 运行
```
git submodule update --init --depth 1 # fetch Sigma rules
pip install -r requirements.txt # PyYAML
cp .env.example .env
python3 app.py # :8103 (index build ~9s)
```
## 部署生成的规则
“标记为已部署 → 编写 XML”会写入 `out/sigma_.xml`。将其复制到 Wazuh manager 的 `/var/ossec/etc/rules/`,然后执行 `wazuh-control restart`。生成的 id 从 `WAZUH_BASE_ID` 开始(默认 100000,即本地规则范围)。
## 端点
| 路径 | 用途 |
|------|---------|
| `/` | 仪表盘(过滤、浏览、转换、部署) |
| `/api/stats` | 总计、覆盖率 %、细分统计 |
| `/api/rules?product=&level=&tag=&q=` | 过滤后的规则列表 |
| `/api/rule?id=` | 完整规则 + OpenSearch 查询 + Wazuh XML |
| `POST /api/deploy?id=` | 编写 XML + 标记为已部署 |
| `/health` | 探针(soc-hub 磁贴) |
## 许可证
应用:MIT。Sigma 规则:Detection Rule License 1.1(允许重新分发)。
本代码无 copyleft 限制。
## 文档
请参阅 **[MANUAL.md](MANUAL.md)** 获取完整手册(概述、配置、端点、集成、故障排除)。在运行中的仪表盘上,点击右上角的 **`?` 帮助按钮**以在 `/manual` 打开它。
标签:Python, Sigma规则, URL发现, Wazuh, 安全检测, 安全运营, 恶意代码分类, 扫描框架, 无后门, 目标导入, 网络测绘, 规则转换引擎, 逆向工具