为规则配置自定义时间表
本文档面向安全分析师、工程师和平台管理员,旨在帮助他们配置和管理 Google Security Operations 安排规则执行的方式。本文介绍了如何调整运行频率、配置结算延迟时间,以及管理自定义多事件规则的补差时间表。
按照本文档中所述的流程操作,您可以精确控制检测延迟时间和数据完整性。成功完成可确保检测及时准确,减少因数据提取延迟而导致的漏报,并确保安全运维的一致性。
通过可自定义的调度,您可以清楚了解多事件规则在 Google Security Operations 中的运行方式,并对其进行控制。某些多事件规则可能需要缓冲期才能准确汇总数据;此方法可让您定义该缓冲期,而不是依赖系统默认值。
常见使用场景
通过自定义时间表,您可以调整执行参数,以实现特定的运营目标:
- 短时间窗口关联:以 10 分钟的频率(而不是等待默认的 1 小时间隔)运行匹配时间窗口小于 60 分钟的多事件规则,以便更快地检测到时间敏感型威胁(例如暴力攻击)。
- 补偿注入延迟时间:为已知存在交付延迟的日志源配置结算延迟时间(T + 偏移量),确保主执行包含所有预期事件。
- 确保上下文完整性:对于非关键合规性和取证规则,如果需要在最终评估之前完全解析实体和资产元数据,请启用确保丰富完整性切换开关。
主要术语
- 主要运行(T + 偏移量):对传入数据首次执行规则逻辑。结算延迟时间表示为考虑延迟到达的数据而添加的偏移量。
- 结算延迟时间:添加到主要运行中的缓冲期,用于在开始规则评估之前处理延迟到达的日志。
- 调整运行:对同一时间窗口进行后台重新评估,以捕获在主运行结束后到达的日志或丰富化数据。
- 丰富化:在处理期间添加到日志中的外部元数据(例如资产标记或用户别名)。
准备工作
在尝试修改或自动执行规则安排之前,请确保您的环境和账号符合必要的安全和系统要求。验证这些前提条件有助于防止部署错误,并确保检测逻辑符合组织的 Identity and Access Management 政策。
权限:如需修改规则时间表,您必须具有以下 IAM 权限:
chronicle.ruleDeployments.update,了解有关单个日程更新的 API 用法。chronicle.rules.modifyRules,用于批量 API 更新和界面使用情况。
如果您使用预定义的 IAM 角色,例如 Chronicle API Admin (
roles/chronicle.admin) 或 Chronicle API Editor (roles/chronicle.editor),则这些权限会自动包含在内。环境检查:
- 规则类型:可自定义的安排仅适用于多事件规则。单事件规则(包括标准规则、窗口规则和基于参考的规则)会近乎实时地进行评估,并且无法自定义。精选规则使用固定的系统时间表,因此会被排除。
match时长:如果多事件规则的match时长超过 48 小时,则会以自动分配的match_window / 10频率执行,且无法自定义。- 迁移:将旧版时间表迁移到可自定义的时间表是一个单向过程,无法恢复。
为多事件规则配置时间表
如需为多事件规则配置时间表,请按以下步骤操作:
- 在 Google SecOps 中,依次前往检测 > 规则和检测。
- 点击规则信息中心。
- 在规则表中找到您的规则,点击更多图标 more_vert,然后选择运行时间表。
- 在规则时间表标签页上,配置主要运行部分:
- 在设置频率列表中,选择规则的运行频率(例如每 10 分钟或每 1 小时)。
- (可选)如需考虑延迟到达的数据,请开启结算延迟切换开关。
- 在延迟字段中,输入延迟值,然后从单位菜单中选择时间单位(分钟或小时)。
- 在补足运行部分,(可选)开启确保丰富化完整性切换开关。
- 预期失败:如果外部情境来源需要时间来处理,提醒可能会在事件时间戳之后很久才显示。
- 修正步骤:仅将此值用于非关键合规性和取证规则,这些规则优先考虑上下文保真度,而不是立即发出提醒的速度。
- 查看主要运行和调整运行下的运行时间表:
- 主要运行:系统会在您为迟到数据指定的结算延迟时间过后执行规则逻辑。
- 调整运行 1:系统会在主运行结束后 4 小时自动重新扫描窗口,以捕获遗漏或延迟的数据。如果您开启确保丰富化完整性,此运行还会等待关联的丰富化数据处理完毕。
- True-up run 2:仅当您开启确保丰富化完整性时显示。系统会在主运行 30 小时后执行最终扫描,以尽可能提高数据保真度。
- 点击保存。
问题排查
通过查看评估时间和规则配置来调查排期问题。虽然该平台可自动执行大多数安排任务,但某些设置或数据延迟可能会影响检测结果的显示时间。
检测结果仅在补全运行中显示
如果检测结果未在主运行 (T) 期间显示,但出现在补全运行 (T + 4 小时或 T + 30 小时) 期间,请检查以下各项:
- 提取延迟时间:检查日志源是否存在延迟。如果日志在事件发生 15 分钟后到达,则 10 分钟的首次运行时间表会错过这些日志。调整运行会捕获这些延迟到达的数据。
- 情境丰富化:确认规则是否依赖于外部元数据,例如素材资源标记或用户别名。如果富集过程花费的时间超过了主要运行窗口,则只有在系统在后续的校正运行中完成富集后,才会显示检测结果。
缺少可自定义的选项
如果规则安排标签页未显示自定义选项或菜单灰显,请执行以下操作:
- 检查规则类型:可自定义的安排仅适用于多事件规则。单事件规则(包括标准规则、窗口规则和基于参考的规则)会近乎实时地进行评估,不支持自定义时间表。
- 验证
match时间范围:如果多事件规则的match时间范围超过 48 小时,则会以自动分配的match_window / 10频率执行,并且无法自定义。 - 识别精选规则:您无法修改精选规则的安排。如果您检查精选规则,界面会显示以下消息:
Multi-event curated rules use a legacy schedule。
首次运行提醒出现意外延迟
如果检测结果的到达时间晚于预定间隔时间:
- 初始化期:新规则或最近修改的规则需要一个小时的初始化期。在平台完成此初始设置并开始第一个预定周期之前,检测结果不会显示。
- 丰富化等待时间:如果您开启确保丰富化完整性切换开关,系统可能会动态调整时间,以等待数据丰富化流程完成。虽然此流程可防止漏检,但可能会导致初始检测结果的到达时间晚于确切的 T 时间戳。
MTTD 测量值似乎偏高
MTTD 测量结果包括确保数据完整性所需的缓冲期。
- 查看缓冲时间:对于每小时一次的安排,系统会在事件到达后一到两小时内评估事件。
- 优化速度:如果您需要更低的延迟时间,请将规则配置为 10 分钟的时间表(对于匹配窗口小于 60 分钟的情况),或者将检测逻辑转换为近乎实时运行的单事件规则(如果不需要事件聚合)。
限制
- 仅限多事件规则:此功能不适用于单事件规则。单事件规则(包括标准规则、窗口规则和基于参考的规则)会近乎实时地进行评估。
- 仅限自定义规则:精选规则使用固定时间表,您无法修改。如果您查看的是精选规则,系统会显示以下消息:
Multi-event curated rules use a legacy schedule。如果您查看旧版自定义规则,系统会显示:Your Multi-Event rule uses a legacy schedule。
错误修复
| 错误 | 问题 | 修复 |
|---|---|---|
| 缺少选项 | “规则时间表”标签页灰显或缺少选项。 | 验证该规则是否为多事件自定义规则,以及匹配窗口期是否为 48 小时或更短。精选规则和单事件规则无法自定义。 |
| 不支持的间隔 | 无法选择近乎实时的流式传输。 | 需要跨事件进行关联的多事件规则或使用聚合函数(例如 count 或 sum)的规则需要使用预定的批处理查询引擎。 |
| 延迟提醒 | 检测结果到达时间晚于预定间隔。 | 检查确保丰富化完整性切换开关是否处于开启状态;系统可能正在等待元数据处理。 |
| 仅限结算提醒 | 检测结果永远不会出现在主要运行 (T) 中。 | 验证日志注入延迟时间。如果日志延迟 15 分钟到达,但结算延迟时间为 10 分钟,请增加结算延迟时间。 |
验证和测试
如需验证时间表是否按预期运行,请按以下步骤操作:
- 在 Google SecOps 中,依次前往检测 > 规则和检测,然后选择规则信息中心。
- 选择相应规则,然后查看检测结果标签页。
- 检查检测类型列,按 进行过滤,以验证补全运行是否捕获了主运行遗漏的数据,然后相应地调整结算延迟时间。
后续步骤
如需了解相关的调度概念和配置工作流,请参阅以下文档:
- 了解规则运行调度:了解 Google SecOps 如何将规则配置映射到持续流式传输和预定批处理查询引擎。
- 了解规则重放和 MTTD:了解自动化数据校正运行如何处理迟到的数据和上下文更新,从而影响平均检测时间 (MTTD) 指标。
- 了解规则检测延迟:诊断并解决提取和处理流水线中预期和未预料到的延迟。
- 使用规则编辑器管理规则:在 Google SecOps 中创建、修改和管理自定义检测规则。