添加和管理例外

编辑

您可以从规则详情页、告警表、告警详情浮窗或共享例外列表页向规则添加例外。添加例外时,您还可以关闭所有符合例外标准的告警。

  • 为确保例外成功应用,请确保为查询定义的字段在其各自的索引中正确且一致地映射。请参阅 ECS,了解有关受支持映射的更多信息。
  • 事件关联规则添加例外时要小心。例外会针对序列中的每个事件进行评估,如果例外匹配到完成序列所必需的任何事件,则不会创建告警。

    要从序列中的特定事件中排除值,请更新规则的 EQL 语句。例如

    `sequence
      [file where file.extension == "exe"
      and file.name != "app-name.exe"]
      [process where true
      and process.name != "process-name.exe"]`
  • 指标匹配规则添加例外时要小心。例外会针对源和指标索引进行评估,因此如果例外匹配到任一索引中的事件,则不会生成告警。

向规则添加例外

编辑
  1. 执行下列操作之一

    • 从规则详情页添加例外

      1. 在导航菜单中或使用全局搜索字段查找 检测规则 (SIEM)
      2. 在规则表中,搜索要添加例外的规则,然后单击其名称以打开规则详情。
      3. 向下滚动规则详情页,选择规则例外选项卡,然后单击添加规则例外

        Detail of rule exceptions tab
    • 从告警表添加例外

      1. 在导航菜单中或使用全局搜索字段查找 告警
      2. 向下滚动到告警表,转到要为其创建例外的告警,单击更多操作菜单 (…​),然后选择添加规则例外
    • 从告警详情浮窗添加例外

      1. 在导航菜单中或使用全局搜索字段查找 告警
      2. 从告警表中,单击查看详情按钮。
      3. 在告警详情浮窗中,单击采取操作 → 添加规则例外
    • 从共享例外列表页添加例外

      1. 在导航菜单中或使用全局搜索字段查找 共享例外列表页。
      2. 单击创建共享例外列表创建例外项
  2. 添加规则例外浮窗中,命名例外。
  3. 添加定义例外的条件。当例外的查询评估为 true 时,即使满足规则的标准,规则也不会生成告警。

    规则例外区分大小写,这意味着任何输入为大写或小写字母的字符都将按原样处理。如果您希望将字段评估为区分大小写,某些 ECS 字段具有您可以使用的 .caseless 版本。

    当您从告警创建新例外时,例外条件会自动填充相关的告警数据。自定义突出显示字段的数据会先列出。添加评论部分还会添加描述自动生成的例外条件的评论。

    1. 字段:选择一个字段以识别要筛选的事件。

      对于存在冲突的字段,会显示警告。使用这些字段可能会导致意外的例外行为。有关更多信息,请参阅 排查类型冲突和未映射字段

    2. 运算符:选择一个运算符以定义条件

      • | 不是 — 必须与定义的值完全匹配。
      • 是其中之一 | 不是其中之一 — 匹配任何定义的值。
      • 存在 | 不存在 — 该字段存在。
      • 在列表中 | 不在列表中 — 匹配值列表中的值。

        • 由值列表定义的例外必须在所有条件中使用 在列表中不在列表中
        • 值列表中不支持通配符。
        • 如果由于大小或数据类型而无法使用值列表,则该列表在菜单中不可用。
      • 匹配 | 不匹配 — 允许您在中使用通配符,例如 C:\\path\\*\\app.exe。可用的通配符为 ?(匹配一个字符)和 *(匹配零个或多个字符)。所选的字段数据类型必须是keywordtextwildcard

        某些字符必须使用反斜杠进行转义,例如,\\ 用于表示文字反斜杠,\* 用于表示星号,\? 用于表示问号。Windows 路径必须使用双反斜杠分隔(例如,C:\\Windows\\explorer.exe),并且已经包含双反斜杠的路径可能需要每个分隔符使用四个反斜杠。

        使用通配符可能会影响性能。要使用通配符创建更高效的例外,请使用多个条件并使它们尽可能具体。例如,使用 process.namefile.name 添加条件可以帮助限制通配符匹配的范围。

    3. :输入与字段关联的值。要输入多个值(当使用 是其中之一不是其中之一 时),输入每个值,然后按 Return

      是其中之一不是其中之一 运算符支持相同且区分大小写的值。例如,如果您想要匹配值 Windowswindows,请将这两个值添加到字段。

      在以下示例中,例外是从“规则”页创建的,当 svchost.exe 进程在主机名 siem-kibana 上运行时,该例外会阻止规则生成告警。

      add exception ui
  4. 单击ANDOR 创建多个条件并定义它们之间的关系。
  5. 单击添加嵌套条件以使用嵌套字段创建条件。这仅对这些嵌套字段是必需的。对于所有其他字段,不应使用嵌套条件。
  6. 选择将例外添加到规则还是共享例外列表。

    如果您从共享例外列表页创建例外,则可以将例外添加到多个规则。

    如果共享例外列表不存在,您可以从共享例外列表页创建一个

  7. (可选)输入描述例外的评论。
  8. (可选)输入例外的未来到期日期和时间。
  9. 选择以下告警操作之一

    • 关闭此告警:添加例外时关闭告警。此选项仅在从告警表添加例外时可用。
    • 关闭所有匹配此例外且由该规则生成的告警:关闭所有匹配例外条件且仅由当前规则生成的告警。
  10. 单击添加规则例外

添加 Elastic Endpoint 例外

编辑

与检测规则例外类似,您可以通过编辑 Endpoint Security 规则或通过将它们作为 Endpoint Security 规则生成的告警的操作来添加 Endpoint Agent 例外。Elastic Endpoint 告警具有以下字段

  • kibana.alert.original_event.module determined:endpoint
  • kibana.alert.original_event.kind:alert

您还可以将 Endpoint 例外添加到与 Elastic Endpoint 规则例外关联的规则。要在创建或编辑规则时关联规则,请选择Elastic Endpoint 例外选项。

添加到 Endpoint Security 规则的例外以及添加到您主机上的 Elastic Endpoint。

添加到 Endpoint Security 规则的例外会影响从 Endpoint Agent 发送的所有告警。注意不要无意中阻止有用的 Endpoint 告警。

此外,要将 Endpoint 例外添加到 Endpoint Security 规则,系统中必须至少生成一个 Endpoint Security 告警。对于非生产用途,如果不存在告警,您可以使用恶意软件模拟技术或工具(例如来自 European Institute for Computer Anti-Virus Research (EICAR) 的反恶意软件测试文件)触发测试告警。

检测规则例外中不支持二进制字段

  1. 执行下列操作之一

    • 从规则详情页添加 Endpoint 例外

      1. 在导航菜单中或使用全局搜索字段查找 检测规则 (SIEM)
      2. 在规则表中,搜索并选择 Elastic Endpoint Security 规则。
      3. 向下滚动规则详情页,选择Endpoint 例外选项卡,然后单击添加 Endpoint 例外
    • 从告警表添加 Endpoint 例外

      1. 在导航菜单中或使用全局搜索字段查找 告警
      2. 向下滚动到告警表,然后从 Elastic Endpoint 告警中,单击更多操作菜单 (…​),然后选择添加 Endpoint 例外
    • 从共享例外列表页添加 Endpoint 例外

      1. 在导航菜单中或使用全局搜索字段查找 共享例外列表页。
      2. 展开 Endpoint Security 例外列表或单击列表名称以打开列表的详细信息页。接下来,单击添加 Endpoint 例外

        Endpoint Security 例外列表会自动创建。默认情况下,它与 Endpoint Security 规则以及任何选择了Elastic Endpoint 例外选项的规则关联。

    将打开添加 Endpoint 例外浮窗。

    endpoint add exp
  2. 如果需要,请修改条件。

    规则例外区分大小写,这意味着任何输入为大写或小写字母的字符都将按原样处理。如果您希望将字段评估为区分大小写,某些 ECS 字段具有您可以使用的 .caseless 版本。

    • 存在冲突的字段会用警告图标标记 (字段冲突警告图标)。使用这些字段可能会导致意外的异常行为。有关详细信息,请参阅排查类型冲突和未映射字段
    • 是其中之一不是其中之一 运算符支持相同且区分大小写的值。例如,如果您想要匹配值 Windowswindows,请将这两个值添加到字段。
  3. (可选)为异常添加注释。
  4. 您可以选择以下任何选项

    • 关闭此告警:添加例外时关闭告警。此选项仅在从告警表添加例外时可用。
    • 关闭所有与此异常匹配且由此规则生成的警报:关闭所有与异常条件匹配的警报。
  5. 单击添加端点异常。将为检测规则和 Elastic Endpoint 创建一个异常。

    在大型部署中,异常可能需要更长时间才能应用于主机。

具有嵌套条件的异常

编辑

某些 Endpoint 对象包含嵌套字段,确保您排除正确字段的唯一方法是使用嵌套条件。一个示例是 process.Ext 对象

{
  "ancestry": [],
  "code_signature": {
    "trusted": true,
    "subject_name": "LFC",
    "exists": true,
    "status": "trusted"
  },
  "user": "WDAGUtilityAccount",
  "token": {
    "elevation": true,
    "integrity_level_name": "high",
    "domain": "27FB305D-3838-4",
    "user": "WDAGUtilityAccount",
    "elevation_type": "default",
    "sid": "S-1-5-21-2047949552-857980807-821054962-504"
  }
}

只有这些对象需要嵌套条件来确保异常正常运行

  • Endpoint.policy.applied.artifacts.global.identifiers
  • Endpoint.policy.applied.artifacts.user.identifiers
  • Target.dll.Ext.code_signature
  • Target.process.Ext.code_signature
  • Target.process.Ext.token.privileges
  • Target.process.parent.Ext.code_signature
  • Target.process.thread.Ext.token.privileges
  • dll.Ext.code_signature
  • file.Ext.code_signature
  • file.Ext.macro.errors
  • file.Ext.macro.stream
  • process.Ext.code_signature
  • process.Ext.token.privileges
  • process.parent.Ext.code_signature
  • process.thread.Ext.token.privileges
嵌套条件示例
编辑

创建一个异常,排除所有 LFC 签名的受信任进程

nested exp

查看和管理异常

编辑

要查看规则的异常

  1. 打开规则的详细信息页面。为此,请在导航菜单中找到检测规则 (SIEM),或使用全局搜索字段搜索“检测规则 (SIEM)”,搜索您要检查的规则,然后单击规则的名称以打开其详细信息。
  2. 向下滚动并选择规则异常端点异常选项卡。属于该规则的所有异常将显示在列表中。

    在列表中,您可以筛选、编辑和删除异常。您还可以在活动异常过期异常之间切换。

    A default rule list

查找使用相同异常的规则

编辑

要了解异常是否被其他规则使用,请选择规则异常端点异常选项卡,导航到异常列表项,然后单击影响 X 个规则

您对异常所做的更改也会应用于使用该异常的其他规则。

Exception that affects multiple rules