kirstensow/Sigma-Detection-Rule-Generator
GitHub: kirstensow/Sigma-Detection-Rule-Generator
从风险评分 IOC 的 CSV 文件自动生成 Sigma 格式的 SIEM 检测规则,将威胁情报输出桥接到检测工程流程。
Stars: 0 | Forks: 0
# Sigma 检测规则生成器
从带有风险评分的 IOC 生成 [Sigma](https://github.com/SigmaHQ/sigma) 检测规则,将威胁情报输出转化为检测工程。
## 功能介绍
接收包含 IOC 及其风险评分的 CSV 文件(来自 [IOC Enrichment Pipeline](https://github.com/kirstensow/IOC-Enrichment-Pipeline) 的输出),并自动为高风险指标生成 Sigma 规则 `.yml` 文件 —— 可直接部署到 SIEM。
## 工作原理
1. 读取 `Risk_Scored_IOCs.csv`(列:`ioc`、`risk`)
2. 筛选出 HIGH 风险的 IOC
3. 识别 IOC 类型 —— IP 地址、文件哈希或域名
4. 针对该类型,使用相应的 logsource 和 detection 字段生成 Sigma 规则:
- **IP** → `network_connection` / `DestinationIP`
- **Hash** → `process_creation` / `Hashes|contains`
- **Domain** → `dns_query` / `QueryName`
5. 将每条规则写入单独的 `.yml` 文件中(无法识别的 IOC 类型将被跳过)
## 用法
```
python rule_generator.py --input Risk_Scored_IOCs.csv
```
## 输出示例
**IP 地址:**
```
title: Suspicious connection to 1.1.1.1
id: bddb9b2e-5102-46f5-8f36-a79ad5b1038a
status: experimental
description: Auto-generated rule for 1.1.1.1 flagged as HIGH
date: 2026-06-14
tags:
- detection.threat-hunting
logsource:
category: network_connection
detection:
selection:
DestinationIP:
- 1.1.1.1
condition: selection
level: high
```
**文件哈希:**
```
logsource:
category: process_creation
detection:
selection:
Hashes|contains:
-
condition: selection
```
**域名:**
```
logsource:
category: dns_query
detection:
selection:
QueryName:
-
condition: selection
```
## 为什么这很重要
这将 CTI 工作直接与检测工程联系起来:enrichment pipeline 产生带有风险评分的 IOC,而此工具将这些 IOC 转化为可部署的检测逻辑 —— 这是 Detection-as-Code 工作流的基础。
## 当前局限性
- Hash 类型检测基于字符串长度(32/64 个字符),而不是验证其算法;生成的规则不会为哈希添加算法前缀(例如 `SHA256=`)。
- Domain 验证使用的是宽松的正则表达式,而不是完整的 TLD/格式验证。
## 路线图 / 后续计划
- 检测并标记 hash 算法(MD5/SHA1/SHA256)并相应地添加前缀
- 可配置的风险阈值(目前仅限 HIGH)
- 输出目录选项
- 使用 `pysigma` 验证生成的规则
## 系列工具之一
- [Threat Feed Cleaner](https://github.com/kirstensow/threat-feed-cleaner)
- [IOC Enrichment Pipeline](https://github.com/kirstensow/IOC-Enrichment-Pipeline)
- [Threat Report Parser](https://github.com/kirstensow/Threat-Report-Parser)
- **Sigma 检测规则生成器**(本仓库)
标签:Python, Sigma规则, 威胁情报, 子域枚举, 开发者工具, 无后门, 目标导入, 网络调试, 自动化, 逆向工具