选项部分语法
YARA-L 查询的 options 部分仅适用于规则。
您可以使用 key = value 语法指定选项,其中 key 必须是预定义的选项名称,而 value 必须是该选项的有效值:
rule RuleOptionsExample {
// Other rule sections
options:
allow_zero_values = true
}
选项值
以下是可用的选项值:
allow_zero_values 选项
allow_zero_values 选项的有效值为 true 和 false(默认值),用于确定是否启用该选项。如果查询中未指定 allow_zero_values 选项,则该选项处于停用状态。
如需启用 allow_zero_values 设置,请将以下内容添加到查询的 options 部分:
allow_zero_values = true
此操作可防止查询隐式过滤掉 match 部分中使用的占位符的零值,如匹配部分中的零值中所述。
suppression_window 选项
借助 suppression_window 选项,您可以控制规则触发检测的频率。即使查询条件多次满足,它也能防止同一规则在指定时间窗口内生成多次检测结果。
抑制窗口使用翻滚窗口方法,该方法可在固定大小的非重叠窗口中抑制重复项。
您可以选择性地提供 suppression_key,以进一步细化在抑制窗口内抑制哪些查询实例。如果未指定,则会抑制查询的所有实例。此键定义为结果变量,仅适用于单事件查询。
多事件查询将使用 match 部分中的匹配变量来确定应抑制哪些内容。suppression_window 值还必须大于匹配窗口。
suppression_window 的默认值为 0,也就是说,默认情况下抑制窗口处于停用状态。
示例:单事件查询的抑制窗口选项
在以下示例中,suppression_window 设置为 5m,suppression_key 设置为 $hostname 变量。当查询触发了针对 $hostname 的检测后,在接下来的 5 分钟内,系统会抑制针对 $hostname 的任何进一步检测。不过,如果查询因具有不同主机名的事件而触发,系统会创建检测结果。
rule SingleEventSuppressionWindowExample {
// Other rule sections
outcome:
$suppression_key = $hostname
options:
suppression_window = 5m
}示例:多事件查询的抑制窗口选项
在以下示例中,suppression_window 设置为 1h。在查询触发对 ($hostname, $ip) 的检测(时间窗口为 10m)后,接下来的一小时内,系统会抑制对 ($hostname, $ip) 的任何进一步检测。不过,如果查询触发的事件组合不同,系统会创建检测结果。
rule MultipleEventSuppressionWindowExample {
// Other rule sections
match:
$hostname, $ip over 10m
options:
suppression_window = 1h
}其他信息
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。