创建和使用 Microsoft Sentinel 自动化规则来管理响应

重要

自动化规则的某些功能目前处于预览状态。 请参阅 Azure 预览版的补充使用条款,了解适用于 beta 版、预览版或其他尚未正式发布的 Azure 功能的其他法律条款。

预览版中的功能将在本文通篇提及时予以说明。

本文介绍如何在 Microsoft Sentinel 中创建和使用自动化规则来管理和协调威胁响应,以便最大限度地提高 SOC 的效率和有效性。

在本文中,你将了解如何定义触发器和条件,这些触发器和条件将确定自动化规则的运行时间、可以让规则执行的各种操作以及其余特性和功能。

设计自动化规则

确定范围

设计和定义自动化规则的第一步是确定要将规则应用于哪些事件或警报。 此决定将直接影响创建规则的方式。

此外,还需要确定用例。 你尝试通过此自动化完成哪些任务? 请考虑以下选项:

  • 为分析人员创建在会审、调查和修正事件时要遵循的任务。
  • 抑制干扰事件(请参阅这篇关于处理误报的文章
  • 通过将新事件的状态从“新建”更改为“活动”并分配所有者,对新事件进行分类。
  • 标记事件以对其进行分类。
  • 通过分配新的所有者来升级事件。
  • 关闭已解决的事件,指定原因并添加注释。
  • 分析事件的内容(警报、实体和其他属性),并通过调用 playbook 采取进一步的操作。
  • 处理或响应没有相关事件的警报。

确定触发器

是否希望在创建新事件或警报时激活此自动化? 或者在任何时间更新事件?

创建或更新事件时或创建警报时将触发自动化规则。 复习一下,事件包括警报,并且警报和事件都由分析规则创建,分析规则有多种类型,如使用 Microsoft Sentinel 中的内置分析规则检测威胁中所述。

下表显示了将会导致自动化规则运行的不同可能场景。

触发器类型 导致规则运行的事件
创建事件时 - 分析规则创建新事件。
- 手动创建新事件。
更新事件时
- 更改事件的状态(关闭/重新打开/会审)。
- 分配或更改事件的所有者。
- 增加或降低事件的严重性。
- 将警报添加到事件中。
- 将注释、标记或策略添加到事件中。
创建警报时
- 警报由计划分析规则创建。

创建自动化规则

以下大多数说明适用于要为其创建自动化规则的任何和所有用例。

  1. 从 Microsoft Sentinel 导航菜单的“自动化”边栏选项卡中,从顶部菜单中选择“创建”,然后选择“自动化规则”。

    Screenshot of creating a new automation rule in the Automation blade.

  2. 创建新自动化规则面板开启。 输入规则的名称。

    Screenshot of Create new automation rule wizard.

选择触发器

从“触发器”下拉列表中,根据要为其创建自动化规则的情形选择适当的触发器—创建事件时更新事件时创建警报时

Screenshot of selecting the incident create or incident update trigger.

添加条件(仅限事件)

添加想要此自动化规则的激活依赖的任何其他条件。 现在,可以通过两种方式添加条件:

  • AND 条件:将评估为组的单个条件。 如果满足此类型的全部条件,则将执行该规则。 这种条件将在下面解释。

  • OR 条件(也称为条件组):条件组,每个条件组都将独立评估。 如果一组或多组条件为真,则将执行该规则。 若要了解如何使用这些复杂类型的条件,请参阅向自动化规则添加高级条件

选择“+ 添加”扩展器,然后从下拉列表中选择“条件(And)”。 条件列表由事件属性和实体属性字段填充。

Screenshot of conditions section of automation rule wizard.Screenshot of menu with types of conditions to add to automation rules.

  1. 从左侧的第一个下拉列表框中选择一个属性。 可以开始在搜索框中键入属性名称的任何部分以动态筛选列表,以便可以快速找到要查找的内容。 Screenshot of typing in a search box to filter the list of choices.

  2. 从右侧的下一个下拉列表框中选择一个运算符。 Screenshot of selecting a condition operator for automation rules.

    可以选择的运算符列表因所选触发器和属性而异。 以下是可用内容的概述:

    创建触发器可用的条件
    属性 运算符集
    - 标题
    - 说明
    - 标记
    - 所有列出的实体属性
    - 等于/不等于
    - 包含/不包含
    - 开头为/开头不为
    - 结尾为/结尾不为
    - 严重性
    - 状态
    - 事件提供程序
    - 自定义详细信息密钥(预览版)
    - 等于/不等于
    - 技巧
    - 警报产品名称
    - 自定义详细信息值(预览版)
    - 包含/不包含
    更新触发器可用的条件
    属性 运算符集
    - 标题
    - 说明
    - 标记
    - 所有列出的实体属性
    - 等于/不等于
    - 包含/不包含
    - 开头为/开头不为
    - 结尾为/结尾不为
    - 标记(除上述标记外)
    - 警报
    - 注释
    - 已添加
    - 严重性
    - 状态
    - 等于/不等于
    - 已更改
    - 更改自
    - 更改为
    - 所有者 - 已更改
    - 事件提供程序
    - 更新者
    - 自定义详细信息密钥(预览版)
    - 等于/不等于
    - 技巧 - 包含/不包含
    - 已添加
    - 警报产品名称
    - 自定义详细信息值(预览版)
    - 包含/不包含
  3. 在右侧的文本框中输入一个值。 根据你选择的属性,这可能是一个下拉列表,可以从中选择所选值。 还可以通过选择文本框右侧的图标(由下面的红色箭头突出显示)来添加多个值。

    Screenshot of adding values to your condition in automation rules.

同样,若要设置具有不同字段的复杂 Or 条件,请参阅将高级条件添加到自动化规则

基于自定义详细信息的条件

可以将事件中显示的自定义详细信息的值设置为自动化规则的条件。 回想一下,自定义详细信息是原始事件日志记录中的数据点,可以在警报和从中生成的事件中显示。 通过自定义详细信息,可以获取警报中的实际相关内容,而无需挖掘查询结果。

若要基于自定义详细信息添加条件,请执行以下步骤:

  1. 如上所述创建新的自动化规则。

  2. 添加条件或条件组。

  3. 从属性下拉列表中选择“自定义详细信息键”。 从运算符下拉列表中选择“等于”或“不等于”。

    对于自定义详细信息条件,最后一个下拉列表中的值来自第一个条件中列出的所有分析规则中显示的自定义详细信息。 选择要用作条件的自定义详细信息。

    Screenshot of adding a custom detail key as a condition.

  4. 你已选择要针对此条件进行评估的字段。 现在,必须指定该字段中出现的值,使此条件的计算结果为 true。
    选择“+ 添加项目条件”。

    Screenshot of selecting add item condition for automation rules.

    值条件行如下所示。

    Screenshot of the custom detail value field appearing.

  5. 从运算符下拉列表中选择“包含”或“不包含”。 在右侧的文本框中,输入希望条件计算结果为 true 的值。

    Screenshot of the custom detail value field filled in.

在此示例中,如果事件具有自定义详细信息 DestinationEmail,并且该详细信息的值为 pwned@bad-botnet.com,则自动化规则中定义的操作将运行。

添加操作

选择希望此自动化规则执行的操作。 可用操作包括分配所有者更改状态更改严重性添加标记运行 playbook。 可添加任意数量的操作。

注意

只有“运行 playbook”操作才在使用警报触发器的自动化规则中可用。

Screenshot of list of actions to select in automation rule.

无论选择哪种操作,都根据要执行的操作填写该操作显示的字段。

如果添加运行 playbook 操作,系统将提示从可用 playbook 下拉列表中选择。

  • 只有以“事件触发器”开头的 playbook 才能由使用某个事件触发器的自动化规则运行,因此只有这类 playbook 会出现在列表中。 同样,只有以“警报触发器”开头的 playbook 才在使用警报触发器的自动化规则中可用。

  • Microsoft Sentinel 必须被授予显式权限才能运行 playbook。 如果 playbook 在下拉列表中为"灰显"状态,则表示 Sentinel 无权访问该 playbook 的资源组。 单击管理 playbook 权限链接以分配权限。

    在打开的管理权限面板中,标记包含要运行的 playbook 的资源组的复选框,然后单击 应用Manage permissions

    你本身必须对要授予 Microsoft Sentinel 权限的任何资源组拥有所有者权限,并且必须对包含要运行的 playbook 的任何资源组具有逻辑应用参与者角色。

  • 如果还没有将采取你考虑的操作的 playbook,请创建新的 playbook。 创建 playbook 后,必须退出自动化规则创建过程并重启。

移动操作

即使已添加操作,也可以更改规则中的操作顺序。 选择每个操作旁边的蓝色向上或向下箭头,以向上或向下移动一步。

Screenshot showing how to move actions up or down.

完成规则创建

  1. 在“规则到期”下,如果你希望自动化规则到期,请设置到期日期(以及(可选)时间)。 否则,请将其保留为“无限期”

  2. “顺序”字段中预填入了规则触发器类型的下一个可用编号。 此编号确定该规则在自动化规则(相同触发器类型)序列中的运行位置。 如果希望此规则在现有规则之前运行,可以更改该编号。

    有关详细信息,请参阅有关执行顺序和优先级的说明

  3. 单击“应用”。 大功告成!

Screenshot of final steps of creating automation rule.

审核自动化规则活动

了解自动化规则可能对给定事件执行的操作。 在“日志”边栏选项卡的“SecurityIncident”表中,可以找到完整的事件历史记录。 使用以下查询可查看所有自动化规则活动:

SecurityIncident
| where ModifiedBy contains "Automation"

执行自动化规则

自动化规则可以按确定的顺序连续运行。 每个自动化规则在前一规则运行完成后执行。 在自动化规则中,所有操作都按其定义的顺序连续运行。 有关详细信息,请参阅有关执行顺序和优先级的说明

在某些情况下,可能会根据以下条件以不同方式处理自动化规则中的 playbook 操作:

Playbook 运行时 自动化规则前进到下一个操作...
不到 1 秒 Playbook 完成后立即
不到 2 分钟 在 playbook 开始运行后最多 2 分钟,
但在 playbook 完成后不超过 10 秒
超过 2 分钟 Playbook 开始运行 2 分钟后,
无论其是否已完成

后续步骤

在本文档中,你了解了如何使用自动化规则集中管理 Microsoft Sentinel 事件和警报的响应自动化。