教程:在 Microsoft Sentinel 中使用 playbook 和自动化规则响应威胁

本教程演示如何结合使用 playbook 和自动化规则,自动执行事件响应并修正 Microsoft Sentinel 检测到的安全威胁。 完成本教程之后,能够:

  • 创建自动化规则
  • 创建 playbook
  • 向 playbook 添加操作
  • 将 playbook 附加到自动化规则或分析规则以自动执行威胁响应

注意

本教程提供了首要客户任务的基本指导:创建自动化来会审事件。 有关详细信息,请参阅“操作说明”部分,例如在 Microsoft Sentinel 中使用 playbook 实现威胁响应自动化在 Microsoft Sentinel playbook 中使用触发器和操作

什么是自动化规则和 playbook?

自动化规则可帮助你在 Microsoft Sentinel 中会审事件。 你可以使用它们自动将事件分配给适当的人员、关闭有干扰的事件或已知误报、更改其严重性并添加标记。 它们也是可用于为响应事件或警报而运行 playbook 的机制。

playbook 是可在 Microsoft Sentinel 中运行以响应整个事件、单个警报或特定实体的一个流程集合。 playbook 可帮助自动处理和编排响应,通过附加到自动化规则,可设置为在生成特定警报时或者在创建或更新事件时自动运行。 还可以针对特定事件、警报或实体按需手动运行。

Microsoft Sentinel 中的 playbook 基于 Azure 逻辑应用内置的工作流,这意味着你可获得逻辑应用的所有功能、自定义能力和内置模板。 每个 playbook 都是针对其所属的特定订阅创建的,但 Playbook 显示了所有选定订阅可以提供的所有 playbook。

注意

由于 playbook 使用 Azure 逻辑应用,因此可能要额外收费。 有关更多详细信息,请访问 Azure 逻辑应用定价页。

例如,如果想要阻止可能被入侵的用户进入你的网络并偷窃信息,可以针对检测被入侵用户的规则所生成的事件创建自动、多面的响应。 首先,创建一个执行以下操作的 playbook:

  1. 如果 playbook 由自动化规则向其传递事件而受到调用,playbook 将在 ServiceNow 或任何其他 IT 票证系统中打开一个票证。

  2. 它将事件中的所有信息通过电子邮件发送给高级网络管理员和安全管理员。该电子邮件中会包含“阻止”和“忽略”用户选项按钮。

  3. playbook 将等待,直到从管理员收到响应,然后继续执行后续步骤。

  4. 如果管理员选择“阻止”,它会将命令发送到 Microsoft Entra ID 以禁用该用户,并将一个命令发送到防火墙以阻止 IP 地址。

  5. 如果管理员选择“忽略”,playbook 会关闭 Microsoft Sentinel 中的事件,并关闭 ServiceNow 中的票证。

为了触发 playbook,你将创建一个自动化规则,在这些事件生成时运行。 该规则将执行以下步骤:

  1. 规则将事件状态更改为“活动”。

  2. 它将事件分配给负责管理此类事件的分析人员。

  3. 它添加“被入侵用户”标记。

  4. 最后,它调用刚创建的 playbook。 (此步骤需要特殊权限。)

可以通过创建调用 playbook 的自动化规则来响应事件自动运行 playbook,如上例所示。 还可以通过指示分析规则在警报生成时自动运行一个或多个 playbook 来响应警报自动运行。

也可以选择按需手动运行 playbook,作为对所选警报的响应。

获取更完整和更详细的介绍,了解在 Microsoft Sentinel 中使用自动化规则playbook 自动执行威胁响应。

创建 playbook

按照以下步骤在 Microsoft Sentinel 中创建新的 playbook:

Screenshot of the menu selection for adding a new playbook in the Automation screen.

  1. 从 Microsoft Sentinel 导航菜单中,选择“自动化” 。

  2. 在顶部菜单中选择“创建”。

  3. “创建”下面的下拉菜单提供了用于创建 playbook 的选项:

    选择“空白 playbook”,然后按照以下步骤操作。

准备逻辑应用和工作流

需要完成三个步骤才能开始创建逻辑应用标准 playbook:

  1. 创建逻辑应用
  2. 创建工作流(这是实际的 playbook)。
  3. 选择触发器

创建逻辑应用

由于选择了“空白 playbook”,因此会打开一个新的浏览器标签页,并且你会转到“创建逻辑应用”向导。

Create a Standard logic app.

  1. 在“基本信息”选项卡中:

    1. 从相应的下拉列表中选择“订阅”和“资源组”。

    2. 输入逻辑应用的名称。 选择要在其中部署逻辑应用的区域。

    3. 对于“计划类型”,请选择“标准”。

    4. 选择一个 Windows 计划。

    5. 选择“下一步: 托管 >”。

  2. 在“托管”选项卡中:

    1. 对于“存储类型”,请选择“Azure 存储”,然后选择或创建存储帐户。
  3. 选择“下一步: 监视 >”。

  4. 在“监视”选项卡中:

    1. 若要在 Azure Monitor 中为此应用程序启用性能监视,请将切换开关保留为“是”。 否则,将其切换为“否”。

      注意

      Microsoft Sentinel 不需要这种监视,因此不会产生额外的费用。

    2. 如果需要,可以选择“下一步: 标记 >”以将标记应用于此逻辑应用,以进行资源分类和计费。 否则请选择“查看 + 创建”。

  5. 在“查看 + 创建”选项卡中:

    查看所做的配置选择,然后选择“创建”。

  6. 创建和部署 playbook 需要几分钟时间,在此过程中会出现一些部署消息。 完成此过程后,你将转到最后一个部署屏幕,其中会显示“部署已完成”消息。

    选择“转到资源”。 你将转到新逻辑应用的主页。

    现在必须创建工作流。

创建工作流 (playbook)

  1. 在逻辑应用页面的导航菜单中选择“工作流”。

  2. 在顶部按钮栏中选择“+ 添加”(该按钮可能需要在几秒钟后才处于活动状态)。

  3. 此时将显示“新建工作流”面板。 输入工作流的名称。

  4. 在“状态类型”下,选择“有状态”。

    注意

    Microsoft Sentinel 目前不支持将无状态工作流用作 playbook。

  5. 选择“创建”。 工作流将会保存并显示在逻辑应用的工作流列表中。 选择该工作流以继续操作。

  6. 你将进入该工作流的页面。 可在此处查看有关该工作流的所有信息,包括它的每次运行记录。 在导航菜单中选择“设计器”。

  7. 此时会打开“设计器”屏幕,并且系统会立即提示你添加触发器并继续设计工作流。

    Screenshot of Logic App Standard designer.

选择触发器

  1. 在“搜索”行中输入“Sentinel”。

  2. 在下面的“触发器”选项卡中,你会看到 Microsoft Sentinel 提供的三个触发器:

    • Microsoft Sentinel 警报(预览版)
    • Microsoft Sentinel 实体(预览版)
    • Microsoft Sentinel 事件(预览版)

    选择与要创建的 playbook 类型匹配的触发器。

    Choose a trigger for your playbook

    如果选择了“Microsoft Sentinel 实体(预览版)”触发器,请选择希望此 playbook 作为输入接收的实体类型。

    Screenshot of drop-down list of entity types to choose from to set playbook schema.

注意

选择触发器或任何后续操作时,系统将要求你对要交互的任何资源提供程序进行身份验证。 在这种情况下,提供程序为 Microsoft Sentinel。 可以采用几种不同方法进行身份验证。 有关详细信息和说明,请参阅向 Microsoft Sentinel 验证 playbook

有关要使用哪个触发器,请参阅在 Microsoft Sentinel playbook 中使用触发器和操作

添加操作

现在可以定义调用 playbook 时的响应。 通过选择新建步骤,可以添加操作、逻辑条件、循环或 switch case 条件。 此选择会在设计器中打开新框架,可在此处选择要交互的系统或应用程序或要设置的条件。 在框架顶部的搜索栏中输入系统或应用程序的名称,然后从可用结果中选择。

在上述每个步骤中,单击任意字段都将显示一个有两个菜单的面板:动态内容表达式。 从“动态内容”菜单中,可以对传递给 playbook 的警报或事件的属性添加引用,包括警报或事件中所含的所有映射实体自定义详细信息的值和属性。 从表达式菜单中,可以在大型函数库中选择,将其他逻辑添加到步骤。

此屏幕截图显示了在创建本文档开头的示例中描述的 playbook 时要添加的操作和条件。 详细了解如何将操作添加到 playbook

Screenshot showing the Logic App designer with an incident trigger workflow.

请参阅在 Microsoft Sentinel playbook 中使用触发器和操作,了解可添加到 playbook 以用于不同目的的操作的详细信息。

特别是,请注意有关非事件上下文中基于实体触发器的 playbook 的重要信息。

自动响应威胁

创建了 playbook 并定义了触发器,设置了条件,规定了要执行的操作以及将生成的输出。 现在,需要确定其运行的条件,并设置在满足这些条件时使其运行的自动化机制。

响应事件和警报

若要使用 playbook 自动响应整个事件或单个警报,请创建一个自动化规则,该规则会在创建或更新事件时,或者在生成警报时运行。 此自动化规则将包含调用要使用的 playbook 的步骤。

创建自动化规则:

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

    Screenshot showing how to add a new automation rule.

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

    Screenshot showing the automation rule creation wizard.

  3. 触发器:根据要为其创建自动化规则的情形(创建事件时、更新事件时或创建警报时)选择适当的触发器。

  4. 条件:添加要用于确定此自动化规则是否运行的任何其他条件。 选择“+ 添加”,然后从下拉列表中选择条件或条件组。 条件列表由警报详细信息和实体标识符字段填充。

  5. 操作:

    1. 由于是使用此自动化规则运行 playbook,因此请从下拉列表中选择“运行 playbook”操作。 然后,系统会提示你从显示可用 playbook 的第二个下拉列表中进行选择。 自动化规则只能运行那些以与规则中定义的触发器相同的触发器(事件或警报)开头的 playbook,因此列表中只会显示这些 playbook。

      重要

      必须向 Microsoft Sentinel 授予显式权限以运行 playbook(无论是手动还是通过自动化规则运行)。 如果 playbook 在下拉列表中为"灰显"状态,则表示 Sentinel 无权访问该 playbook 的资源组。 单击管理 playbook 权限链接以分配权限。

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

      Screenshot that shows the actions section with run playbook selected.

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

      • 在多租户部署中,如果要运行的 playbook 在不同的租户中,必须授予 Microsoft Sentinel 权限,才能在 playbook 的租户中运行 playbook。

        1. 从 playbook 的租户中的 Microsoft Sentinel 导航菜单中,选择“设置”。
        2. 设置边栏选项卡中,选择设置选项卡,然后选择 playbook 权限扩展器。
        3. 单击配置权限按钮以打开上面提到的管理权限面板,并按上所述继续操作。
      • 如果在 MSSP 方案中,你想要通过某个自动化规则在客户租户中运行 playbook,而该规则是在登录到服务提供商租户后创建的,则必须授予 Microsoft Sentinel 权限才能在这两个租户中运行 playbook。在客户租户中,请按照前面的要点中适用于多租户部署的说明进行操作。 在客户租户中,请按照前面的要点中适用于多租户部署的说明进行操作。 在服务提供商租户中,必须在 Azure Lighthouse 加入模板中添加 Azure Security Insights 应用:

        1. 在 Azure 门户中,转到 Microsoft Entra ID
        2. 单击“企业应用程序”。
        3. 选择“应用程序类型”,并根据“Microsoft 应用程序”进行筛选。
        4. 在搜索框中,键入 Azure Security Insights。
        5. 复制“对象 ID”字段。 需要将此附加授权添加到现有的 Azure Lighthouse 委派。

        “Microsoft Sentinel 自动化参与者”角色具有固定的 GUID,即 f4c81013-99ee-4d62-a7ee-b3f1f648599a。 参数模板中的示例 Azure Lighthouse 授权如下所示:

        {
             "principalId": "<Enter the Azure Security Insights app Object ID>", 
             "roleDefinitionId": "f4c81013-99ee-4d62-a7ee-b3f1f648599a",
             "principalIdDisplayName": "Microsoft Sentinel Automation Contributors" 
        }
        
    2. 为此规则添加所需的任何其他操作。 可以通过选择任何操作右侧的向上或向下箭头来更改操作的执行顺序。

  6. 如果想自动化规则有到期日期,可以设置一个。

  7. 顺序下输入一个数字,以确定此规则在自动化规则序列中运行的位置。

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

发现其他方法来创建自动化规则。

响应警报 - 旧方法

自动运行 playbook 以响应警报的另一种方法是通过分析规则调用它们。 该规则生成警报时,playbook 将运行。

此方法将于 2026 年 3 月弃用。

从 2023 年 6 月开始,你将无法再以这种方式将 playbook 添加到分析规则。 但是,你仍可以查看从分析规则调用的现有 playbook,这些 playbook 在 2026 年 3 月前仍将运行。 强烈建议在那之前先创建自动化规则来调用这些 playbook

按需运行 playbook

还可以按需手动运行 playbook,以响应警报、事件(预览版)或者实体(也是预览版)。 这在需要更多人工输入和控制业务流程和响应过程的情况下非常有用。

对警报手动运行 playbook

  1. 在“事件”页中,选择一个事件。

  2. 在“事件详细信息”窗格的底部选择“查看完整详细信息”。

  3. 在事件详细信息页上的“事件时间线”小组件中,选择要运行 playbook 的警报。 选择警报行末尾的三个点,然后从弹出菜单中选择“运行 playbook”。

    Screenshot of running a playbook on an alert on-demand.

  4. “警报 playbook”窗格随即打开。 你将看到一个列表,其中列出了配置了你有权访问的“Microsoft Sentinel 警报”逻辑应用触发器的所有 playbook。

  5. 在特定 playbook 行上选择“运行”可立即运行该 playbook。

可以通过选择“警报 playbook”窗格上的“运行”选项卡来查看警报 playbook 的运行历史记录。 任何刚完成的运行都可能需要几秒钟才会出现在列表中。 选择特定的运行会在逻辑应用中打开完整运行日志。

对事件手动运行 playbook(预览版)

  1. 在“事件”页中,选择一个事件。

  2. 在右侧显示的“事件详细信息”窗格中,选择“操作”>“运行 playbook (预览)”。
    (若选择网格上事件行末尾的三个点或右键单击事件,将显示与使用“操作”按钮相同的列表。)

  3. “对事件运行 playbook”面板在右侧打开。 你将看到一个列表,其中列出了配置了你有权访问的“Microsoft Sentinel 事件”逻辑应用触发器的所有 playbook。

    注意

    如果在列表中看不到要运行的 playbook,这意味着 Microsoft Sentinel 无权运行该资源组中的 playbook(参阅上面的说明)。 若要授予这些权限,请从主菜单中选择“设置”,选择“设置”选项卡,展开“Playbook 权限”扩展器,然后选择“配置权限”。 在打开的“管理权限”面板中,勾选包含要运行的 playbook 的资源组的复选框,然后选择“应用”。

  4. 在特定 playbook 行上选择“运行”可立即运行该 playbook。

可以通过选择“对事件运行 playbook”面板上的“运行”选项卡来查看事件 playbook 的运行历史记录。 任何刚完成的运行都可能需要几秒钟才会出现在列表中。 选择特定的运行会在逻辑应用中打开完整运行日志。

对实体手动运行 playbook(预览版)

  1. 根据原始上下文,使用以下方式之一选择实体:

    如果你在事件的详细信息页面中(新版本):

    1. 在“概述”选项卡的“实体”小组件中,从列表中找到一个实体(不要选择它)。
    2. 选择该实体右侧的三个点。
    3. 从弹出菜单中选择“运行 playbook (预览版)”,然后继续执行下面的步骤 2。
      如果你选择了实体并进入了事件详细信息页的“实体”选项卡,请继续执行下面的下一行。
    4. 从列表中查找实体(不要选择它)。
    5. 选择该实体右侧的三个点。
    6. 从弹出菜单中选择“运行 playbook (预览版)”。
      如果选择了实体并进入了其实体页,请选择左侧面板中的“运行 playbook (预览版)”按钮。

    如果你处于事件的详细信息页中(旧版本):

    1. 选择事件的“实体”选项卡。
    2. 从列表中查找实体(不要选择它)。
    3. 选择列表中其行末尾的“运行 playbook (预览版)”链接。
      如果选择了实体并进入了其实体页,请选择左侧面板中的“运行 playbook (预览版)”按钮。

    如果你位于“调查图”中:

    1. 在图中选择一个实体。
    2. 在实体侧面板中选择“运行 playbook (预览版)”按钮。
      对于某些实体类型,可能需要选择“实体操作”按钮,并从生成的菜单中选择“运行 playbook (预览版)”。

    如果你主动搜寻威胁:

    1. 在“实体行为”屏幕中,从页面上的列表中选择一个实体,或搜索并选择另一个实体。
    2. 实体页中,选择左侧面板中的“运行 playbook (预览版)”按钮。
  2. 无论你来自哪种上下文,上述说明都将打开“对<实体类型>运行 playbook”面板。 你将看到你有权访问的所有 playbook 的列表,这些 playbook 针对所选实体类型配置了“Microsoft Sentinel 实体”逻辑应用触发器。

  3. 在特定 playbook 行上选择“运行”可立即运行该 playbook。

可以通过选择“对<实体类型>运行 playbook”面板上的“运行”选项卡来查看给定实体 playbook 的运行历史记录。 任何刚完成的运行都可能需要几秒钟才会出现在列表中。 选择特定的运行会在逻辑应用中打开完整运行日志。

后续步骤

在本教程中,你学习了如何在 Microsoft Sentinel 中使用 playbook 和自动化规则来应对威胁。