使用 Microsoft Sentinel 中的劇本將威脅回應自動化

本文說明什麼是 Microsoft Sentinel 劇本,以及如何使用它們來實作安全性協調流程、自動化和回應 (SOAR) 作業,同時節省時間和資源,以取得更好的結果。

重要

Microsoft Sentinel 是 Microsoft Defender 入口網站中統一安全性作業平臺公開預覽的一部分。 如需詳細資訊,請參閱 Microsoft Defender 入口網站中的 Microsoft Sentinel。

什麼是劇本?

SOC 分析師通常會定期被安全性警示和事件淹沒,數量如此之大,以至於可用的人員不堪重負。 在許多警示經常遭到忽略且不少事件未經調查的情況下,使得組織更容易面臨未察覺的攻擊。

這些警示和事件中有許多符合特定和已定義補救動作集可解決的週期性模式。 分析師也負責處理其所處理事件的基本補救和調查。 在這些活動可以自動化的程度,SOC 可以更有生產力且更有效率,讓分析師投入更多時間和精力來調查活動。

劇本是一組從 Microsoft Sentinel 執行的補救動作集合,以協助 自動化及協調您的威脅回應。 它可以以兩種方式執行:

  • 手動 隨選、特定實體或警示
  • 在自動化規則觸發時,自動回應特定警示或事件。

例如,如果帳戶和計算機遭到入侵,劇本可以在SOC小組收到事件通知時隔離計算機與網路,並封鎖帳戶。

雖然 [自動化] 頁面上的 [作用中劇本] 索引標籤會顯示任何所選訂用帳戶中可用的所有使用中劇本,但根據預設,劇本只能用於其所屬的訂用帳戶內,除非您特別將 Microsoft Sentinel 許可權授與劇本的資源群組。

上線至統一安全性作業平台之後,[ 作用中劇本] 索引 卷標會顯示預先定義的篩選,其中包含已上線工作區的訂用帳戶。 在 Azure 入口網站 中,使用 Azure 訂用帳戶篩選來新增其他訂用帳戶的數據。

劇本範本

劇本範本是預先建置、測試和現成可用的工作流程,可自定義以符合您的需求。 從頭開始開發劇本或作為新自動化案例靈感時,範本也可以作為最佳做法的參考。

劇本範本無法作為劇本本身使用。 您可以從劇本建立劇本(範本的可編輯複本)。

您可以從下列來源取得劇本範本:

  • 在 [自動化] 頁面上,[劇本範本] 索引標籤會列出已安裝的劇本範本。 您可以從相同的範本建立多個作用中的劇本。

    發行新版本的範本時,從該範本建立的作用中劇本會顯示在 [使用中的劇本] 索引卷標中,顯示指出有更新可用標籤。

  • 劇本範本是產品解決方案或從 Microsoft Sentinel 中的內容中樞頁面安裝的獨立內容的一部分。 如需詳細資訊,請參閱 Microsoft Sentinel 內容和解決方案 ,以及 探索及管理現用的 Microsoft Sentinel 內容

  • Microsoft Sentinel GitHub 存放 包含許多劇本範本。 您可以選取 [部署至 Azure] 按鈕,將他們部署至 Azure 訂 用帳戶。

從技術上來說,劇本範本是由數個 資源所組成的ARM範本 :涉及的每個連線的 Azure Logic Apps 工作流程和 API 連線。

重要

劇本範本目前處於預覽狀態。 請參閱 Microsoft Azure Preview 補充使用規定,了解適用於搶鮮版 (Beta)、預覽版或尚未正式發行 Azure 功能的其他法律條款。

Azure Logic Apps 基本概念

Microsoft Sentinel 中的劇本是以 Azure Logic Apps 內建的工作流程為基礎,該雲端服務可協助您跨整個企業的系統排程、自動化,以及協調工作和工作流程。 這表示劇本可以充分運用 Azure Logic Apps 中內建範本的所有功能。

注意

Azure Logic Apps 會建立個別的資源,因此可能會產生額外費用。 如需詳細資訊,請流覽 Azure Logic Apps 定價頁面

Azure Logic Apps 會使用連接器與其他系統和服務通訊。 以下是連接器及其一些重要屬性的簡短說明:

  • 受控連接器: 一組動作和觸發程式,包裝對特定產品或服務的 API 呼叫。 Azure Logic Apps 提供數百個連接器來與 Microsoft 和非 Microsoft 服務 通訊。 如需詳細資訊,請參閱 Azure Logic Apps 連接器及其檔

  • 自訂連接器: 您可能想要與未做為預先建置連接器的服務通訊。 自定義連接器可讓您建立連接器,並定義自己的觸發程式和動作,藉此解決這項需求。 如需詳細資訊,請參閱 建立您自己的自定義 Azure Logic Apps 連接器

  • Microsoft Sentinel 連接器: 若要建立與 Microsoft Sentinel 互動的劇本,請使用 Microsoft Sentinel 連接器。 如需詳細資訊,請參閱 Microsoft Sentinel 連接器檔

  • 觸發程式: 啟動工作流程的連接器元件,在此案例中為劇本。 Microsoft Sentinel 觸發程式會定義劇本預期在觸發時接收的架構。 Microsoft Sentinel 連接器目前有三個觸發程式:

  • 動作: 動作是觸發程序之後發生的所有步驟。 它們可以循序排列、平行或複雜條件的矩陣。

  • 動態欄位: 暫存欄位,由觸發程式和動作的輸出架構決定,並填入其實際輸出,可用於後續動作。

邏輯應用程式類型

Microsoft Sentinel 現在支援下列邏輯應用程式資源類型:

  • 用,其會在多租使用者 Azure Logic Apps 中執行,並使用傳統原始的 Azure Logic Apps 引擎。
  • 標準,可在單一租使用者 Azure Logic Apps 中執行,並使用重新設計的 Azure Logic Apps 引擎。

標準邏輯應用程式類型提供更高的效能、固定定價、多個工作流程功能、更容易的 API 連線管理、原生網路功能,例如支援虛擬網路和私人端點(請參閱下方附註)、內建 CI/CD 功能、更好的 Visual Studio Code 整合、更新的工作流程設計工具等等。

若要使用此邏輯應用程式版本,請在 Microsoft Sentinel 中建立新的標準劇本(請參閱下面的附註)。 您可以使用使用取用劇本的相同方式使用這些劇本:

  • 將它們附加至自動化規則和/或分析規則。
  • 視需要從事件和警示執行它們。
  • 在 [使用中的劇本] 索引標籤中管理它們。

注意

  • 標準工作流程目前不支援劇本範本,這表示您無法直接在 Microsoft Sentinel 中建立標準工作流程型劇本。 相反地,您必須在 Azure Logic Apps 中建立工作流程。 建立工作流程之後,它會顯示為 Microsoft Sentinel 中的劇本。

  • Logic Apps 的標準工作流程支援上述的私人端點,但 Microsoft Sentinel 需要在 Logic Apps 中定義存取限制原則,才能支援根據標準工作流程在劇本中使用私人端點。

    如果未定義存取限制原則,當您從 Microsoft Sentinel 的清單中選擇劇本時,仍可能會顯示並選取具有私人端點的工作流程(無論是手動執行、新增至自動化規則或在劇本資源庫中),而且您可以選取它們,但執行將會失敗。

  • 指標會將標準工作流程識別為 狀態或 狀態。 Microsoft Sentinel 目前不支持無狀態工作流程。 瞭解具狀態和無狀態工作流程之間的差異

這兩種資源類型之間有許多差異,其中有些會影響在 Microsoft Sentinel 劇本中使用的一些方式。 在這種情況下,檔會指出您需要知道的內容。 如需詳細資訊,請參閱 Azure Logic Apps 檔中的資源類型和主機環境差異

需要的權限

若要讓您的 SecOps 小組能夠使用 Azure Logic Apps 在 Microsoft Sentinel 中建立和執行劇本,請將 Azure 角色指派給安全性作業小組或小組中的特定使用者。 下列描述不同的可用角色,以及應為其指派的工作:

Azure Logic Apps 的 Azure 角色

  • 邏輯應用程式參與者 可讓您管理邏輯應用程式和執行劇本,但您無法變更其存取權(您需要 擁有者 角色)。
  • 邏輯應用程式操作員 可讓您讀取、啟用和停用邏輯應用程式,但無法編輯或更新邏輯應用程式。

Microsoft Sentinel 的 Azure 角色

  • Microsoft Sentinel 參與者 角色可讓您將劇本附加至分析或自動化規則。

  • Microsoft Sentinel 回應程式 角色可讓您存取事件,以便手動執行劇本。 但是,若要實際執行劇本,您也需要...

    • Microsoft Sentinel 劇本操作員 角色可讓您手動執行劇本。
    • Microsoft Sentinel 自動化參與者 允許自動化規則執行劇本。 它不會用於任何其他用途。

深入了解

建立劇本的步驟

劇本的使用案例

Azure Logic Apps 平臺提供數百個動作和觸發程式,因此幾乎可以建立任何自動化案例。 Microsoft Sentinel 建議從下列 SOC 案例開始,立即提供現成的劇本範本:

擴充

收集數據並附加至事件,以便做出更明智的決策。

例如:

由產生IP位址實體的分析規則從警示建立 Microsoft Sentinel 事件。

此事件會觸發自動化規則,其會使用下列步驟執行劇本:

  • 建立新的 Microsoft Sentinel 事件開始。 事件中代表的實體會儲存在事件觸發程式的動態欄位中。

  • 針對每個IP位址,查詢外部威脅情報提供者,例如 病毒總計,以擷取更多數據。

  • 將傳回的數據和深入解析新增為事件的批注。

雙向同步處理

劇本可用來同步處理您的 Microsoft Sentinel 事件與其他票證系統。

例如:

建立所有事件建立的自動化規則,並附加在 ServiceNow 中開啟票證的劇本:

  • 建立新的 Microsoft Sentinel 事件開始。

  • 在 ServiceNow建立新的票證。

  • 在票證中包含事件名稱、重要字段,以及 Microsoft Sentinel 事件的 URL,以方便樞紐分析。

協調流程

使用SOC聊天平臺更妥善地控制事件佇列。

例如:

由產生使用者名稱和IP位址實體的分析規則從警示建立 Microsoft Sentinel 事件。

此事件會觸發自動化規則,其會使用下列步驟執行劇本:

  • 建立新的 Microsoft Sentinel 事件開始。

  • 在 Microsoft TeamsSlack 中將訊息傳送至安全性作業通道,以確保安全性分析師知道該事件。

  • 透過電子郵件將警示中的所有資訊傳送給資深網路管理員和安全性系統管理員。電子郵件訊息會包含 [封鎖 ] 和 [忽略 使用者] 選項按鈕。

  • 等到收到來自系統管理員的回應,然後繼續執行。

  • 如果系統管理員已選擇 [封鎖],請將命令傳送至防火牆以封鎖警示中的IP位址,另一個傳送給 Microsoft Entra ID 以停用使用者。

回應

以最少的人相依性立即回應威脅。

兩個範例:

範例 1:回應分析規則,指出遭入侵的使用者,如 Microsoft Entra ID Protection探索:

  • 建立新的 Microsoft Sentinel 事件開始。

  • 針對可疑為遭入侵事件中的每個用戶實體:

    • 傳送 Teams 訊息給使用者,要求確認使用者採取可疑動作。

    • 請洽詢 Microsoft Entra ID Protection,以確認 使用者的狀態為遭入侵。 Microsoft Entra ID Protection 會將用戶標示為 風險,並套用任何已設定的強制執行原則,例如,要求使用者在下次登入時使用 MFA。

      注意

      這個特定的 Microsoft Entra 動作不會對使用者起始任何強制活動,也不會起始任何強制執行原則的設定。 它只會告知 Microsoft Entra ID Protection 適當地套用任何已定義的原則。 任何強制執行完全取決於 Microsoft Entra ID Protection 中定義的適當原則。

範例 2:回應分析規則,指出遭入侵的計算機,如 適用於端點的 Microsoft Defender 所探索

  • 建立新的 Microsoft Sentinel 事件開始。

  • 使用 Microsoft Sentinel 中的 [實體 - 取得主機] 動作來剖析事件實體中包含的可疑機器。

  • 發出命令來 適用於端點的 Microsoft Defender 隔離警示中的機器

調查期間或搜捕時手動回應

在主動調查活動過程中回應威脅,而不需偏離內容。

由於新的 實體觸發程式(現在為預覽版),您可以立即對您在調查期間探索到的個別威脅執行者採取動作,一次一次地從調查中立即採取行動。 此選項也可在威脅搜捕內容中取得,與任何特定事件無關。 您可以在內容中選取實體,並在該處執行動作,以節省時間並降低複雜度。

您可以使用此劇本類型對實體採取的動作包括:

  • 封鎖遭入侵的使用者。
  • 封鎖來自防火牆中惡意IP位址的流量。
  • 隔離網路上遭入侵的主機。
  • 將IP位址新增至安全/不安全的位址監看清單,或新增至外部 CMDB。
  • 從外部威脅情報來源取得檔案哈希報告,並將其新增至事件作為批注。

如何執行劇本

劇本可以手動自動執行

它們的設計目的是要自動執行,而且最好是在正常作業過程中執行它們的方式。 您可以在分析規則中將劇本定義為自動化回應(適用於警示),或在自動化規則中將腳本定義為動作(適用於事件)。

不過,在某些情況下,需要手動執行劇本。 例如:

設定自動化回應

安全性作業小組可以藉由將週期性事件和警示類型的例行響應自動化,大幅降低其工作負載,讓您更專注於獨特的事件和警示、分析模式、威脅搜捕等等。

設定自動化回應表示每次觸發分析規則時,除了建立警示之外,規則還會執行劇本,以作為規則所建立警示的輸入。

如果警示建立事件,事件將會觸發自動化規則,而該規則可能會接著執行劇本,而劇本將會接收警示所建立事件的輸入。

警示建立自動化回應

針對由警示建立觸發並接收警示作為輸入的劇本(其第一個步驟是「Microsoft Sentinel 警示」),將劇本附加至分析規則:

  1. 編輯分析規則,以產生您想要為其定義自動化回應的警示。

  2. [自動化回應] 索引標籤的 [警示自動化] 下,選取建立警示時,此分析規則將觸發的劇本或劇本。

事件建立自動化回應

對於事件建立和接收事件所觸發的劇本作為其輸入(其第一個步驟是「Microsoft Sentinel 事件」),請建立自動化規則,並在其中定義 Run 劇本 動作。 這可以透過 2 種方式來完成:

  • 編輯可產生您想要為其定義自動化回應之事件的分析規則。 在 [自動化回應] 索引標籤中的 [事件自動化] 底下,建立自動化規則。 這隻會為此分析規則建立自動化回應。

  • 從 [自動化] 頁面中的 [自動化規則] 索引標籤,建立新的自動化規則,並指定適當的條件和所需的動作。 此自動化規則會套用至任何符合指定條件的分析規則。

    注意

    Microsoft Sentinel 需要執行事件觸發程式劇本的許可權。

    若要根據事件觸發程式執行劇本,無論是手動還是從自動化規則執行,Microsoft Sentinel 會使用特別獲授權的服務帳戶來執行此動作。 使用此帳戶(與用戶帳戶相反)會增加服務的安全性層級,並讓自動化規則 API 支援 CI/CD 使用案例。

    此帳戶必須在劇本所在的資源群組上授與明確許可權(採用 Microsoft Sentinel 自動化參與者角色的形式)。 此時,您將能夠手動或從任何自動化規則,在該資源群組中執行任何劇本。

    當您將 執行劇本 動作新增至自動化規則時,將會針對您的選取項目顯示劇本下拉式清單。 Microsoft Sentinel 沒有許可權的劇本會顯示為無法使用(「灰色」)。 您可以選取 [管理劇本許可權] 連結,在現場授與 Microsoft Sentinel 的許可權

    在多租使用者 (Lighthouse) 案例中,您必須定義劇本所在的租用戶許可權,即使呼叫劇本的自動化規則位於不同的租使用者中也一樣。 若要這樣做,您必須擁有 劇本資源群組的擁有者 許可權。

    受控安全性服務提供者(MSSP)一個獨特的案例,服務提供者在登入自己的租使用者時,使用 Azure Lighthouse 在客戶的工作區上建立自動化規則。 此自動化規則接著會呼叫屬於客戶租用戶的劇本。 在此情況下,必須將這兩個租用戶的許可權授與 Microsoft Sentinel。 在客戶租使用者中,您會在 [ 管理劇本許可權 ] 面板中授與他們,就像在一般多租使用者案例中一樣。 若要授與服務提供者租使用者中相關許可權,您必須在劇本所在的資源群組上新增額外的 Azure Lighthouse 委派,以 Microsoft Sentinel 自動化參與者角色,將存取權授與 Azure Security Insights 應用程式。 瞭解如何新增此委派

請參閱建立自動化規則的完整指示。

手動執行劇本

完整自動化是自在自動化時,針對許多事件處理、調查和緩和工作的最佳解決方案。 話雖如此,可能會有一種混合式自動化的充分理由:使用劇本將一系列系統的活動合併成單一命令,但只在您決定時和何處執行劇本。 例如:

  • 您可能偏好 SOC 分析師對某些情況有更多的人力投入和控制。

  • 您可能也希望他們能夠在調查或威脅搜捕過程中,針對特定威脅執行者(實體)視需要採取行動,而不需要轉向另一個畫面。 (這項功能目前處於預覽狀態。

  • 您可能希望 SOC 工程師撰寫劇本來處理特定實體(現在為預覽版),且只能手動執行。

  • 您可能希望工程師能夠在自動化規則中完整部署劇本之前先測試他們撰寫的劇本。

基於這些和其他原因,Microsoft Sentinel 可讓您 針對 實體和事件手動執行劇本(現在為預覽版),以及警示。

  • 若要在特定事件上執行劇本, 請從 [事件] 頁面中的 方格中選取事件 。 在 Azure 入口網站 中,從 [事件詳細數據] 窗格中選取 [動作],然後從操作功能表選擇 [執行劇本][預覽]。 在 Defender 入口網站中,直接從事件詳細數據頁面選取 [ 執行劇本][預覽 ]。

    這會在事件面板上開啟 [執行劇本]。

  • 若要在警示上執行劇本, 請選取事件、輸入事件詳細數據,然後從 [警示 ] 索引卷標選擇警示,然後選取 [ 檢視劇本]。

    這會開啟 [ 警示劇本] 面板。

  • 若要在實體上執行劇本, 請以下列任何方式選取實體:

    • 從事件的 [ 實體 ] 索引標籤中,從清單中選擇實體,然後選取 清單中其行尾的 [執行劇本(預覽] 連結。
    • 從 [ 調查] 圖表中,選取實體,然後選取 實體側面板中的 [執行劇本 ][預覽] 按鈕。
    • [實體行為] 中,選取實體,然後從實體頁面選取 左側面板中的 [執行劇本(預覽] 按鈕。

    這些全都會在實體類型>面板上開啟 [<執行劇本]。

在上述任一面板中,您會看到兩個索引標籤: 劇本執行

  • 在 [ 劇本] 索引 標籤中,您會看到您有權存取的所有劇本清單,以及使用該適當觸發程式 - 無論是 Microsoft Sentinel 事件Microsoft Sentinel 警示Microsoft Sentinel 實體。 清單中的每個劇本都有一個 [執行] 按鈕,您選取要立即執行劇本。
    如果您想要執行清單中未看到的事件觸發程式劇本, 請參閱上述關於 Microsoft Sentinel 許可權的附注。

  • 在 [ 執行] 索引標籤中,您會看到任何劇本在您選取的事件或警示上執行的所有時間清單。 任何剛完成的執行可能需要幾秒鐘的時間才會出現在此清單中。 選取特定回合將會在 Azure Logic Apps 中開啟完整執行記錄檔。

管理您的劇本

在 [作用中 劇本] 索引 標籤中,會出現您有權存取的所有劇本清單,並依目前顯示在 Azure 中的訂用帳戶進行篩選。 訂用帳戶篩選可從全域頁面標題中的 [目錄 + 訂用帳戶] 選單取得

按兩下劇本名稱會引導您前往 Azure Logic Apps 中的劇本主頁面。 [狀態] 資料行會指出它是否已啟用或停用。

[方案] 數據行指出劇本在 Azure Logic Apps 中使用標準用量資源類型。 您可以依計劃類型篩選清單,只查看一種劇本類型。 您會發現標準類型的劇本會使用 LogicApp/Workflow 命名慣例。 此慣例反映標準劇本代表與單一邏輯應用程式中其他工作流程並存 的工作流程

觸發程式種類 代表啟動此劇本的 Azure Logic Apps 觸發程式。

觸發程式種類 指出劇本中的元件類型
Microsoft Sentinel 事件/警示/實體 劇本是從其中一個 Sentinel 觸發程序開始的(事件、警示、實體)
使用 Microsoft Sentinel 動作 劇本是以非 Sentinel 觸發程序啟動,但使用 Microsoft Sentinel 動作
其他 劇本不包含任何 Sentinel 元件
未初始化 劇本已建立,但不包含任何元件(觸發程式或動作)。

在劇本的 Azure Logic Apps 頁面中,您可以看到劇本的詳細資訊,包括執行劇本的所有時間記錄,以及結果(成功或失敗和其他詳細數據)。 如果您擁有適當的許可權,您也可以在 Azure Logic Apps 中開啟工作流程設計工具,並直接編輯劇本。

API 連線

API 連線可用來將 Azure Logic Apps 連線至其他服務。 每次針對 Azure Logic Apps 中的連接器進行新的驗證時,都會建立 API 連線類型的新資源,並包含設定服務存取權時提供的資訊。

若要查看所有 API 連線,請在 Azure 入口網站 的標頭搜尋方塊中輸入 API 連線。 請注意感興趣的資料列:

  • 顯示名稱 - 每次建立連線時提供給連線的「易記」名稱。
  • 狀態 - 指出連線狀態:錯誤,已連線。
  • 資源群組 - API 連線是在劇本 (Azure Logic Apps) 資源的資源群組中建立的。

另一個檢視 API 連線的方式是移至 [所有資源] 頁面,並依 API 連線類型加以篩選。 如此一來,即可一次選取、標記和刪除多個連線。

若要變更現有連線的授權,請輸入連線資源,然後選取 [ 編輯 API 連線]。

下列建議的劇本,以及內容中 Microsoft Sentinel GitHub 存放庫中的類似劇本可供您使用:

下一步