Sigma 规则转查询实践是什么
Sigma 用统一的 YAML 结构描述检测意图,再由转换工具生成各平台可执行的查询语句。它解决的是「一条检测要在多个平台复用」的问题:样本分析得出的行为特征,可以快速铺开到历史日志里做回溯。
基本信息
| 用途 | 一条检测跨平台回溯 |
|---|---|
| 结构 | logsource、detection、condition |
| 工具链 | Sigma 命令行转换器或平台内置转换能力 |
| 注意 | 字段映射因平台而异,转换后必须抽查 |
典型使用场景
- 把行为特征写成规则,在聚合平台上回溯历史
- 同一检测下发到不同平台时保持语义一致
- 事件复盘时验证已有检测规则的覆盖能力
- 与社区规则库对照,避免重复造轮子
- 把一次性查询沉淀为可维护的检测资产
- 把常用检测按事件类别整理成规则集合并管理版本
- 用规则覆盖度对照攻击战术清单,找出检测缺口
- 按事件类别给规则分组编号,便于统计覆盖情况与缺口
规则片段
规则片段
title: Suspicious Encoded PowerShell Command Line
logsource:
product: windows
category: process_creation
detection:
selection:
Image|endswith: '\powershell.exe'
CommandLine|contains: '-enc'
condition: selection
level: medium三段结构
| 段落 | 作用 | 注意 |
|---|---|---|
| logsource | 声明数据来源与类别 | 字段名要与目标平台实际字段对齐 |
| detection | 选择条件与逻辑组合 | 多用字段修饰符以减少误报 |
| condition | 组合方式与阈值 | 阈值过低会让噪声剧增 |
转换后先在 7 天窗口跑一遍基线评估误报,再扩大时间范围回溯,避免一次性全量查询把平台资源打满。
字段映射是转换的主要风险点:不同平台的进程字段命名不同,转换后要抽查语义是否等价,而不只是看语法能跑通。
规则里的时间窗与阈值要结合本地日志量调整:同一条件在小型环境与大型环境产生的告警量可能相差几个数量级。
把规则与对应的排查手册放在一起维护,告警命中后直接按手册执行,省去每次重新设计处置步骤的重复劳动。
规则命名带上事件类别与用途,命中后检索与交接时不至于靠猜测,也便于跨团队引用。