复合检测概览
本文档介绍了复合检测,以及如何通过关联多个规则的输出结果来增强威胁检测工作流。
复合检测使用复合规则,这些规则会使用其他规则的输出(检测结果)(全部或部分),并结合事件、指标或实体风险信号。这些规则可检测出单个规则可能会错过的复杂多阶段威胁。
复合检测功能可通过定义的规则互动和触发条件来帮助分析事件。通过关联来自不同来源和攻击阶段的数据,可以提高准确性、减少误报,并全面了解安全威胁。
以下概念定义了复合规则的构建块,并有助于阐明它们在检测工作流中的运作方式:
复合规则:使用检测结果或提醒作为输入,以及可选的事件、指标或实体风险。这些规则必须始终包含 match
部分,并且可以引用输入规则中的 meta
字段、match
标签和 outcome
变量。
检测:规则的结果。也可以称为提醒。
仅检测规则:仅使用检测或提醒作为输入的复合规则。这些规则不会影响实体的风险得分。为仅检测规则设置的任何风险得分仅适用于该规则生成的检测结果。
复合检测的优势
复合检测具有以下优势:
揭示多阶段攻击:网络攻击通常是多方面且相互关联的。复合检测通过关联看似孤立的突发事件,揭示更广泛的攻击叙事。例如,复合检测可以识别完整的攻击序列,例如初始入侵,然后是权限升级和数据渗漏。
缓解提醒疲劳:复合规则可整合并过滤嘈杂的提醒,从而让您更专注于响应。这种方法有助于优先处理高影响事件,并减少总体提醒疲劳。
提高检测准确性:将来自统一数据模型 (UDM) 事件、规则检测、实体上下文、用户和实体行为分析 (UEBA) 结果以及数据表的洞见相结合,以构建更准确的检测逻辑。
简化复杂逻辑:将复杂的检测场景分解为可管理、相互关联且可重用的规则,从而简化开发和维护。
复合规则的输入源
复合规则以集合作为输入类型来注入数据,这些集合用于存储之前运行的规则的输出。
限制
在设计和实现复合检测时,请考虑以下限制:
复合规则 - Google Security Operations 最多支持 10 级的复合规则深度。 深度是指从基本规则到最终复合规则的规则数量。
仅检测规则 - 最长匹配窗口为 14 天。不过,以下情况除外:
- 如果规则使用提取的事件、实体图数据或参考列表,匹配窗口将限制为 48 小时。
- 仅检测规则每天的检测次数上限为每条规则 10,000 次。
结果变量 - 每条规则最多只能有 20 个结果变量。此外,每个重复的结果变量最多只能有 25 个值。
事件样本 - 一条规则中的每个事件变量仅存储 10 个事件样本(例如,
$e1
和$e2
各存储 10 个)。
如需详细了解检测限值,请参阅 检测限值。
复合检测的工作原理
当单事件规则或多事件规则满足预定义条件时,它们会生成检测结果。这些检测可以有选择性地包含结果变量,用于捕获特定数据或事件状态。
复合规则会使用来自其他规则的这些检测结果作为其输入的一部分。评估可以基于最初生成检测结果的规则的以下因素:
- 规则的
meta
部分中定义的内容 - 由结果变量中的规则设置的状态或数据属性集
- 原始检测中的字段
根据此评估,复合规则可以触发提醒并记录新的状态信息。这有助于关联不同检测中的多种因素,从而识别复杂的威胁。
最佳做法
我们建议您在构建复合规则时遵循以下做法。
针对延迟时间进行优化
为了最大限度地减少检测流水线的延迟,请先使用单事件规则,然后再使用复合规则来启动规则序列。单事件规则的执行速度和频率高于多事件规则,这有助于缩短复合规则的总体延迟时间。
使用结果变量、元标签和匹配变量
我们建议使用结果变量、meta
标签和 match
变量来联接复合规则中的检测结果。与使用来自输入检测的事件样本或引用相比,这些方法具有以下优势:
可靠性更高 - 提供更确定、更可靠的结果,尤其是在检测涉及许多促成事件时。
结构化数据提取 - 可让您从活动中提取特定字段和数据点,从而帮助您创建一个结构化系统来整理活动数据。
灵活的相关性 - 您可以使用
meta
标签对规则进行分类,从而更灵活地关联检测结果。例如,如果多个规则共享同一meta
标签tactic: exfiltration
,您可以创建一个复合规则,该规则以tactic
标签的值为exfiltration
的任何检测结果为目标。
测试或运行回溯分析
当您测试或回溯搜索复合规则时,系统会使用现有检测结果仅运行您选择的特定规则。如需运行整个复合规则,您需要手动从序列中的第一个规则开始运行 Retrohunt,等待其完成,然后继续运行下一个规则。
更新规则
当您更新一条用于一条或多条复合规则的规则时,系统会自动创建该规则的新版本。复合规则会自动使用新版本。建议您测试更新后的规则,以验证其预期行为。
后续步骤
如需了解如何构建复合检测规则,请参阅复合检测规则。
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。