在搜索和信息中心内使用去重功能

支持的语言:

本文档介绍了在 Google Security Operations 中搜索数据时会发生什么情况。有时,结果可能包含重复内容。之所以经常出现这种情况,是因为企业基础架构会从多个系统为同一事件生成日志。例如,身份验证系统和安全系统可能会同时记录一次登录事件。

如需减少重复结果,请在 YARA-L 语法的 dedup 部分中使用 UDM 字段。向此部分添加 UDM 字段,以便为每个不同的值组合返回单个结果。。

查询中的去重

去重适用于以下类型的搜索查询和信息中心查询:

  • 汇总的搜索查询:包括 matchmatchoutcomeaggregated outcome 部分。去重是在确定结果后进行的。

    对于聚合搜索查询,请在 dedup 部分中添加以下字段:

    • match 部分中的字段
    • outcome 部分中的字段
  • UDM 搜索查询:排除 matchoutcomeaggregated outcome 部分。请注意,UDM 搜索查询可以包含 outcome 部分,前提是没有汇总和 match 部分。

    对于 UDM 查询,请将以下字段添加到 dedup 部分:

    • 任何非重复、非数组和非分组的事件字段
    • events 部分中的占位符字段
    • outcome 部分中的结果变量

本部分展示了 YARA-L 语法,可在搜索中运行。

示例:简单搜索唯一 IP 地址

以下搜索示例显示了事件之间的网络连接,其中企业内部的唯一 IP 地址 (principal.ip) 连接到企业外部的唯一外部 IP 地址 (target.ip)。系统会根据 principal.ip 对事件进行去重。

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.ip != ""
   principal.ip != ""
match:
   target.ip, principal.ip
dedup:
   principal.ip

示例:唯一 IP 地址

与上一个示例类似,以下示例搜索会显示具有唯一 IP 地址的网络连接事件。将 dedup 应用于 principal.ip 可将结果范围缩小到与唯一 IP 相关联的事件。outcome 部分显示了 principal.iptarget.ip 之间发送的总字节数,并按流量从高到低的顺序显示结果。

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.ip != ""
   principal.ip != ""
match:
   target.ip, principal.ip
outcome:
   $total_bytes = sum(network.sent_bytes)
dedup:
   principal.ip
order:
   $total_bytes desc

示例:简单搜索唯一主机名

以下示例会搜索企业中访问的每个唯一主机名。将 dedup 应用于 target.hostname 可将结果范围缩小到与唯一外部主机名相关联的事件。

metadata.log_type != ""
dedup:
    target.hostname

以下是不含 dedup 选项的等效示例。它通常会返回更多事件。

metadata.log_type != "" AND target.hostname != ""

示例:唯一主机名

与上一个示例类似,此搜索会显示具有唯一主机名的网络连接事件。将 dedup 选项应用于 principal.hostname 可将结果范围缩小到与唯一主机相关联的事件:

events:
   metadata.event_type = "NETWORK_CONNECTION"
   target.hostname != ""
   principal.hostname != ""
match:
   target.hostname, principal.hostname
outcome:
   $total_bytes = sum(network.sent_bytes)
dedup:
   principal.hostname
order:
   $total_bytes desc

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。