了解规则运行调度
本文档适用于希望了解和管理 Google Security Operations 如何安排规则执行的安全分析师、工程师和平台管理员。本文档介绍了规则配置如何确定处理频率、系统如何平衡近乎实时的流式处理与预定的批处理,以及后台运行如何处理迟到的日志和上下文丰富。
常见使用场景
选择或了解合适的安排取决于威胁严重程度和逻辑复杂性:
- 高优先级提醒:近乎实时地检测无需额外关联事件的单事件匹配项中的严重威胁,从而缩短攻击者滞留时间。
- 复杂的关联和报告:对于计算次数、总和或滑动匹配窗口的多事件规则,请使用预定的时间间隔(例如 10 分钟或 1 小时)。通过安排间隔时间,系统可在执行之前提取并丰富相关日志,从而提高合规性和趋势分析方面的提醒准确性。
主要术语
- 确定性频次:系统根据规则的匹配时段和规则类型自动分配的基本执行间隔。
- 主要运行(T + 偏移量):针对事件时间块的检测逻辑的初始执行。结算延迟时间表示为考虑延迟到达的数据而添加的偏移量。
- 结算延迟时间:添加到主要运行中的缓冲期,用于在开始评估规则之前处理延迟到达的日志。
- 调整运行(规则重放):自动后台执行,用于重新评估之前处理过的时间窗口,以捕获在主运行之后到达的日志或丰富化数据。
- 丰富化:在流水线处理期间,向日志添加上下文(例如资产元数据、用户身份或威胁情报指标)的过程。
- 检测延迟时间:从事件时间戳到创建检测的总时间。
准备工作
确认您的环境符合以下要求:
- 权限:您必须拥有 Chronicle API Admin (
roles/chronicle.admin) 或 Chronicle API Editor (roles/chronicle.editor) IAM 角色才能修改规则调度,或者拥有 Chronicle API Viewer (roles/chronicle.viewer) 角色才能在“规则”信息中心内检查调度。 - 环境检查:确保您的日志已映射到统一数据模型 (UDM),以支持按预定时间间隔进行汇总。
规则调度的运作方式
Google SecOps 可在数千条规则中平衡近乎实时的检测延迟时间和平台稳定性。该平台使用两种主要执行模型:
- Streaming Engine:近乎实时地(通常在注入后 5 分钟内)持续评估标准单事件规则和窗口单事件规则(即使匹配窗口超过 48 小时)。在标准执行期间,系统会持续评估迟到的事件和追溯性丰富化。
- 预定查询引擎:近乎实时地评估复杂的单事件规则(带有参考列表或数据表),并以批处理块(例如 10 分钟或 1 小时间隔,或大于 48 小时的窗口的
match_window / 10)评估多事件规则。多事件规则需要一个时间窗口来汇总和关联来自不同来源的事件。
默认时间表配置
启用规则后,Google SecOps 会根据规则的逻辑和匹配窗口自动确定默认执行频率:
| 规则类型和窗口大小 | 执行频率 | 评估时间 | 调整运行 |
|---|---|---|---|
| 单事件规则(标准或窗口化) | 实时 | 到达后不久(不到 5 分钟) | 否。在标准执行中持续评估延迟数据和丰富数据。 |
| 单事件规则(包含参考列表或数据表) | 近乎实时 | 到达后不久(不到 5 分钟) | 否。在标准查询执行期间,持续评估延迟数据和丰富数据。 |
多事件规则 (window <= 48h) |
每 1 小时(或每 10 分钟,可自定义为小于 1 小时的窗口) | 到达后 1 到 2 小时 | 是。包括自动 4 小时校正运行和可选的 30 小时校正运行。 |
多事件规则 (window > 48h) |
match_window / 10(例如,对于 10 天的匹配窗口,每 1 天一次) |
因匹配窗口而异 (match_window / 10) |
否。在后续重叠运行期间评估延迟数据和丰富数据。 |
自动调整运行
为防止因提取延迟或延迟到达的富集元数据(例如资源标记或用户别名)而导致检测遗漏,系统会自动针对多事件规则 (window <= 48h) 执行后台校正运行:
- 初始运行:根据预定间隔尽快执行,以发现即时威胁。
- 首次实际运行(4 小时):在初始运行大约 4 小时后重新评估时间块,以捕获延迟到达的日志。此阶段不会等待完整的数据扩充。
- 第二次校正运行(30 小时):(可选)在所有其他上下文和数据丰富化流水线完成之后,大约在初始运行 30 小时后执行。
如需详细了解补实行为和场景,请参阅了解规则重放和 MTTD。
可自定义的日程
对于匹配时间窗口不超过 48 小时的自定义多事件规则,Google SecOps 可让您自定义时间表参数,而无需完全依赖系统默认设置:
- 频次选择:选择运行频次,例如每 10 分钟(对于匹配时间范围不足 60 分钟的活动)或每 1 小时。
- 结算延迟:添加缓冲延迟时间(T + 偏移量),以适应已知的日志源提取延迟时间。
- 丰富化完整性:将校正处理时间延长至 30 小时,以确保在最终评估之前完成所有外部元数据联接。
如需了解完整的配置步骤,请参阅为规则配置自定义时间表。
规则信息中心内的日程显示
规则信息中心的规则安排列中会显示每条有效规则的已分配执行安排。未启用的规则在启用之前不会显示有效时间表。
如需修改运行频率、添加结算延迟时间或调整自定义多事件规则的丰富化等待时间,请参阅为规则配置自定义时间表。
检测来源指示器
在提醒页面和规则信息中心中,“检测类型”列会指明检测是源自初始执行还是自动后台运行:
- 无图标:检测结果是在主运行 (T) 期间或使用持续流式处理引擎生成的。
- 灯泡图标 :检测结果源自延迟超过 30 分钟才到达的事件数据、自动校正运行、重新处理流水线或回溯搜索。
延迟时间和问题排查注意事项
规则运行频率会直接影响检测速度。在设计和监控规则时,请注意以下行为:
- 每小时运行一次:每小时运行一次,使用最新的可用数据;默认情况下不应用额外的缓冲时间。
- 匹配窗口超过 48 小时:系统以
match_window / 10的速率执行这些规则,并且不会进行任何调整运行。 - 运行之间的差异:如果日志提取延迟或上下文丰富(例如实体图解析)在初始评估后完成,则在第一次运行时未触发的检测可能会在校正运行时触发。
- 缺少自定义选项:单事件规则会近乎实时地进行评估,不支持间隔自定义。精选规则遵循固定的系统时间安排。匹配窗口超过 48 小时的自定义多事件规则以
match_window / 10的频率执行,且无法自定义。 - 不支持的时间间隔:如果您无法选择近乎实时执行,则说明您的规则是需要跨时间进行事件关联的多事件规则,或者包含需要使用预定批处理查询引擎的汇总(例如
count或sum)。
如需了解详细的问题排查步骤,请参阅了解规则检测延迟。
后续步骤
如需了解相关的调度概念和配置工作流,请参阅以下文档:
- 为规则配置自定义时间表:为多事件规则自定义运行频率、结算延迟时间和补差丰富完整性。
- 了解规则重放和 MTTD:了解自动化补全运行如何处理迟到的数据和上下文更新,从而影响平均检测时间 (MTTD) 指标。
- 了解规则检测延迟:诊断并解决提取和处理流水线中预期和未预料到的延迟。
- 使用规则编辑器管理规则:在 Google SecOps 中创建、修改和管理自定义检测规则。