创建和使用 Microsoft Sentinel 自动化规则来管理响应
本文介绍如何在 Microsoft Sentinel 中创建和使用自动化规则来管理和协调威胁响应,以便最大限度地提高 SOC 的效率和有效性。
本文介绍如何定义触发器和条件,用于确定自动化规则在哪种情况下运行、可以让规则执行的各种操作,以及其余特性和功能。
重要
注意,自动化规则的功能目前为预览版。 请参阅 Azure 预览版的补充使用条款,了解适用于 beta 版、预览版或其他尚未正式发布的 Azure 功能的其他法律条款。
设计自动化规则
在创建自动化规则之前,建议先确定其范围和设计,包括构成规则的触发器、条件和操作。
确定范围
设计和定义自动化规则的第一步是确定要将规则应用于哪些事件或警报。 你做出的决定将直接影响规则的创建方式。
此外,还需要确定用例。 你尝试通过此自动化完成哪些任务? 请考虑以下选项:
- 为分析人员创建在会审、调查和修正事件时要遵循的任务。
- 抑制干扰事件。 (或者,使用其他方法来处理 Microsoft Sentinel 中的误报。)
- 通过将新事件的状态从“新建”更改为“活动”并分配所有者,对新事件进行分类。
- 标记事件以对其进行分类。
- 通过分配新的所有者来升级事件。
- 关闭已解决的事件,指定原因并添加注释。
- 分析事件的内容(警报、实体和其他属性),并通过调用 playbook 采取进一步的操作。
- 处理或响应没有相关事件的警报。
确定触发器
是否希望在创建新事件或警报时激活此自动化? 或者在任何时间更新事件?
创建或更新事件时或创建警报时将触发自动化规则。 回想一下,事件包括警报,并且警报和事件都由分析规则创建,分析规则有多种类型,如 Microsoft Sentinel 中的威胁检测中所述。
下表显示了会导致自动化规则运行的各种可能情况。
触发器类型 | 导致规则运行的事件 |
---|---|
创建事件时 | |
更新事件时 | |
创建警报时 |
创建自动化规则
以下大多数说明适用于要为其创建自动化规则的任何和所有用例。
若要抑制干扰事件,请尝试处理误报。
若要创建要应用于特定分析规则的自动化规则,请参阅设置自动响应并创建规则。
若要创建自动化规则,请执行以下操作:
转到 Azure 门户,选择“配置”>“自动化”页面。
从 Microsoft Sentinel 导航菜单的“自动化”页面中,从顶部菜单中选择“创建”,然后选择“自动化规则”。
创建新自动化规则面板开启。 在“自动化规则名称”字段中,输入规则的名称。
选择触发器
从“触发器”下拉列表中,根据要为其创建自动化规则的情形选择适当的触发器—创建事件时、更新事件时或创建警报时。
定义条件
使用“条件”区域中的选项来定义自动化规则的条件。
创建警报时创建的规则仅支持条件中的“如果分析规则名称”属性。 选择是希望规则为非独占(包含)还是独占(不包含),然后从下拉列表中选择分析规则名称。
分析规则名称值仅包括分析规则,不包括其他类型的规则,例如威胁情报。
创建或更新事件时创建的规则支持各种条件,具体取决于环境。 这些选项从工作区是否载入到统一安全运营平台开始:
首先定义以下条件属性:
事件提供程序:事件可以具有可能的来源:可以在 Microsoft Sentinel 内部进行创建。
如果选择了事件触发器之一,并且希望自动化规则仅对 Microsoft Sentinel 中创建的事件生效,请在“如果事件提供程序等于”条件中指定源。 (仅当选择了事件触发器时,才会显示此条件。)
分析规则名称:对于所有触发器类型,如果希望自动化规则仅对某些分析规则生效,可通过修改“如果分析规则名称包含”条件来指定。
然后,通过选择下面其中一个运算符继续操作:
AND:评估为组的单个条件。 如果满足此类型的所有条件,则将执行该规则。
若要使用 AND 运算符,请选择“+ 添加”扩展器,然后从下拉列表中选择“条件(And)”。 条件列表由事件属性和实体属性字段填充。
OR(也称为条件组):条件组,每个条件组都会独立评估。 如果一组或多组条件为 true,则将执行该规则。 若要了解如何使用这些复杂类型的条件,请参阅向自动化规则添加高级条件。
例如:
如果选择了“更新事件时”为触发器,请首先定义条件,然后根据需要添加额外的运算符和值。
若要定义条件,请执行以下操作:
从左侧的第一个下拉列表框中选择一个属性。 可以开始在搜索框中键入属性名称的任何部分以动态筛选列表,以便可以快速找到要查找的内容。
从右侧的下一个下拉列表框中选择一个运算符。
可以选择的运算符列表因所选触发器和属性而异。
创建触发器可用的条件
属性 运算符集 - 标题
- 描述
- 所有列出的实体属性- 等于/不等于
- 包含/不包含
- 开头为/开头不为
- 结尾为/结尾不为- 标记(请参阅单个与集合) 任何单个标记:
- 等于/不等于
- 包含/不包含
- 开头为/开头不为
- 结尾为/结尾不为
所有标记的集合:
- 包含/不包含- 严重性
- Status
- 自定义详细信息密钥- 等于/不等于 - 策略
- 警报产品名称
- 自定义详细信息值
- 分析规则名称- 包含/不包含 更新触发器可用的条件
属性 运算符集 - 标题
- 描述
- 所有列出的实体属性- 等于/不等于
- 包含/不包含
- 开头为/开头不为
- 结尾为/结尾不为- 标记(请参阅单个与集合) 任何单个标记:
- 等于/不等于
- 包含/不包含
- 开头为/开头不为
- 结尾为/结尾不为
所有标记的集合:
- 包含/不包含- 标记(除上述标记外)
- 警报
- 注释- 已添加 - 严重性
- Status- 等于/不等于
- 已更改
- 更改自
- 更改为- 所有者 - 已更改 - 更新者
- 自定义详细信息密钥- 等于/不等于 - 策略 - 包含/不包含
- 已添加- 警报产品名称
- 自定义详细信息值
- 分析规则名称- 包含/不包含 警报触发器可用的条件
基于警报创建触发器的规则可评估的唯一条件是哪个 Microsoft Sentinel 分析规则创建了警报。
基于警报触发器的自动化规则只会针对 Microsoft Sentinel 创建的警报运行。
在右侧的字段中输入值。 根据所选属性,这可能是一个文本框或下拉框(在其中可以从值的封闭列表中进行选择)。 还可以通过选择文本框右侧的骰子图标来添加多个值。
同样,若要设置具有不同字段的复杂 Or 条件,请参阅将高级条件添加到自动化规则。
基于标记的条件
可以根据标记创建两种类型的条件:
- 具有“任何单个标记”运算符的条件根据集合中的每个标记评估指定的值。 当“至少一个标记”满足条件时,评估结果为 true。
- 具有“所有标记的集合”运算符的条件针对作为一个整体的标记集合评估指定值。 仅当“整个集合”满足条件时,评估结果才 true。
若要根据事件的标记添加以下条件之一,请执行以下步骤:
如上所述创建新的自动化规则。
添加条件或条件组。
从属性下拉列表中选择“标记”。
选择运算符下拉列表,以显示可供选择的可用运算符。
请参阅前面所述的运算符如何划分为两个类别。 根据期望的标记评估方式,仔细选择运算符。
有关详细信息,请参阅标记属性:单个与集合。
基于自定义详细信息的条件
可以将事件中显示的自定义详细信息的值设置为自动化规则的条件。 回想一下,自定义详细信息是原始事件日志记录中的数据点,可以在警报和从中生成的事件中显示。 使用自定义详细信息获取警报中的实际相关内容,而无需挖掘查询结果。
若要根据自定义详细信息添加条件,请执行以下操作:
如前面所述创建新的自动化规则。
添加条件或条件组。
从属性下拉列表中选择“自定义详细信息键”。 从运算符下拉列表中选择“等于”或“不等于”。
对于自定义详细信息条件,最后一个下拉列表中的值来自第一个条件中列出的所有分析规则中显示的自定义详细信息。 选择要用作条件的自定义详细信息。
你已选择要针对此条件进行评估的字段。 现在,请指定该字段中出现的值,使此条件的计算结果为 true。
选择“+ 添加项目条件”。值条件行如下所示。
从运算符下拉列表中选择“包含”或“不包含”。 在右侧的文本框中,输入希望条件计算结果为 true 的值。
在此示例中,如果事件具有自定义详细信息 DestinationEmail,并且该详细信息的值为 pwned@bad-botnet.com
,则自动化规则中定义的操作将运行。
添加操作
选择希望此自动化规则执行的操作。 可用操作包括分配所有者、更改状态、更改严重性、添加标记和运行 playbook。 可添加任意数量的操作。
注意
只有“运行 playbook”操作才在使用警报触发器的自动化规则中可用。
无论选择哪种操作,都根据要执行的操作填写该操作显示的字段。
如果添加“运行 playbook”操作,系统将提示你从可用 playbook 下拉列表中选择。
只有以“事件触发器”开头的 playbook 才能由使用某个事件触发器的自动化规则运行,因此只有这类 playbook 会出现在列表中。 同样,只有以“警报触发器”开头的 playbook 才在使用警报触发器的自动化规则中可用。
Microsoft Sentinel 必须被授予显式权限才能运行 playbook。 如果某个 playbook 在下拉列表中显示为不可用,则表示 Sentinel 无权访问该 playbook 的资源组。 若要分配权限,请选择“管理 playbook 权限”链接。
在打开的“管理权限”面板中,勾选包含要运行的 playbook 的资源组的复选框,然后选择“应用”。
你本身必须对要授予 Microsoft Sentinel 权限的任何资源组拥有所有者权限,并且必须对包含要运行的 playbook 的任何资源组具有 Microsoft Sentinel 自动化参与者角色。
如果你尚未创建用于执行所需操作的 playbook,请创建新的 playbook。 创建 playbook 后,必须退出自动化规则创建过程并重启。
移动操作
即使已添加操作,也可以更改规则中的操作顺序。 选择每个操作旁边的蓝色向上或向下箭头,以向上或向下移动一步。
完成规则创建
在“规则过期时间”下,如果你希望自动化规则在某个时间后过期,请设置过期日期(以及可选的时间)。 否则,请将其保留为“无限期”。
“顺序”字段中预填入了规则触发器类型的下一个可用编号。 此编号确定了此规则在自动化规则(触发器类型相同)序列中的运行位置。 如果希望此规则在现有规则之前运行,可以更改该编号。
有关详细信息,请参阅有关执行顺序和优先级的说明。
选择“应用”。 大功告成!
审核自动化规则活动
了解自动化规则可能对给定事件执行的操作。 在“日志”页面的“SecurityIncident”表中,可以找到完整的事件历史记录。 使用以下查询可查看所有自动化规则活动:
SecurityIncident
| where ModifiedBy contains "Automation"
执行自动化规则
自动化规则将根据你确定的顺序依序运行。 每个自动化规则在前一个自动化规则完成运行后执行。 在自动化规则中,所有操作将按定义的顺序依序运行。 有关详细信息,请参阅有关执行顺序和优先级的说明。
在某些情况下,可能会根据以下条件以不同方式处理自动化规则中的 playbook 操作:
Playbook 运行时 | 自动化规则前进到下一个操作... |
---|---|
不到 1 秒 | Playbook 完成后立即 |
不到 2 分钟 | 在 playbook 开始运行后最多 2 分钟, 但在 playbook 完成后不超过 10 秒 |
超过 2 分钟 | Playbook 开始运行 2 分钟后, 无论其是否已完成 |
后续步骤
在本文档中,你了解了如何使用自动化规则集中管理 Microsoft Sentinel 事件和警报的响应自动化。
- 若要了解如何使用
OR
运算符将高级条件添加到自动化规则,请参阅向 Microsoft Sentinel 自动化规则添加高级条件。 - 若要了解有关自动化规则的详细信息,请参阅在 Microsoft Sentinel 中使用自动化规则自动处理事件
- 有关高级自动化选项的详细信息,请参阅在 Microsoft Sentinel 中利用 playbook 自动执行威胁响应。
- 若要了解如何使用自动化规则向事件添加任务,请参阅使用自动化规则在 Microsoft Sentinel 中创建事件任务。
- 若要迁移要由自动化规则调用的警报触发器 playbook,请参阅将 Microsoft Sentinel 警报触发器 playbook 迁移到自动化规则
- 有关实施自动化规则和 playbook 方面的帮助,请参阅教程:在 Microsoft Sentinel 中使用 playbook 自动完成威胁响应。