MS Sentinel analytics的威脅偵測

Microsoft Sentinel Analytics 提供智慧解決方案,可用於偵測組織中的潛在威脅和漏洞。

假設組織使用一堆 Microsoft 產品和服務為其資源實施資料安全和威脅保護。這些產品是:

  • Microsoft 365
  • Microsoft Entra ID
  • Microsoft Entra ID Protection
  • Microsoft Defender for Cloud Apps
  • Microsoft Defender for Identity
  • Microsoft Defender for Endpoint
  • Microsoft Defender for Office 365
  • System Center Endpoint Protection
  • Microsoft Azure Information Protection

組織透過使用付費版本的 Microsoft Defender for Cloud 為其基於 Azure 的資源和本機資源提供威脅防護。我們可能還監控和保護其他非微軟資產。 資安人員面臨巨大的分類負擔。他們處理來自多個產品的大量告警。它們透過以下方式關聯告警:

  • 從不同的專案儀表板人工作業
  • 透過使用傳統的關聯引擎

此外,建立和維護 IT 基礎架構所花費的時間使 SOC 團隊無法完成安全任務。

大長官相信 Microsoft Sentinel Analytics 將協助資安人員更快地執行複雜的調查並改善他們的SOC。我們需要在在 Microsoft Sentinel 中設定分析規則,以便 SecOps 團隊可以識別和分析對 雲端資源的攻擊。

實作 — 使用 Microsoft Sentinel 分析偵測威脅

若要實作的先決條件,執行下列作業。

作業一:使用 ARM 範本部署 Microsoft Sentinel

  1. 連結Azure portal。登入之後會看到Custom deployment頁面
  2. 進到Basic頁面,輸入以下的設定值:

3. 選擇“Review + create”。驗證通過後,選擇“Create”。

作業二: 檢查創建的資源

  1. In the Azure portal, search for Resource groups.
  2. Select azure-sentinel-rg.
  3. Sort the list of resources by Type.
    Resource group應包含下表中所列的資源。

作業三: 設定Microsoft Sentinel Data connectors

部署 Microsoft Sentinel 資料連接器來偵測 Azure 活動。

  1. 在 Azure 網站中,選擇“Home”,然後搜尋並選擇“Microsoft Sentinel”。
  2. 在 Sentinel 工作區清單中,選擇在作業 2 中建立的 Microsoft Sentinel 工作區。
  3. 在功能表窗格中的Content management中,選擇Content hub。將出現「Content hub」窗格。
  4. 在搜尋框中,搜尋並選擇 Azure Activity解決方案。在 Azure Activity窗格中,選擇Install。
  5. 等待安裝完成,然後選擇「Manage」。
  6. 在搜尋框中,搜尋並選擇Azure Activity Data connector。
  7. 在 Azure Activity詳細資料窗格中,選擇Open connector page。
  8. 在「Instructions」頁籤的「Configuration」區域中,向下捲動並在「2. Connect your subscriptions…」下選擇「Launch Azure Policy Assignment Wizard>。
  9. 在“Basic”標籤中,選擇“Scope”下的省略號按鈕 (…),從下拉清單中選擇“Azure subscription”,然後選擇“Select”。
  10. 選擇「Parameters」選項,從「Primary Log Analytics workspace」下拉清單中選擇 yourName-sentinel 工作區。
  11. 選擇Remediation頁籤並選取Create a remediation task checkbox。此操作會套用訂閱配置以將資訊傳送至 Log Analytics 工作區。
  12. 選擇“Review + Create”按鈕以查看配置。
  13. 選擇“Create”以完成。
  14. 部署完成後,在Configuration/Data connectors窗格中看到 Azure Activity connector的已連線狀態(綠色條)。

Microsoft Sentinel Analytics

Microsoft Sentinel Analytics 可協助偵測、調查和修復網路安全威脅。 SOC 團隊可以使用 Microsoft Sentinel Analytics 設定分析規則和查詢來偵測環境中的問題。

Microsoft Sentinel Analytics 提供了多種功能,可用於實現資料和資源的安全性。

可以分析從工作站、伺服器、網路設備、防火牆、入侵防禦、感測器等收集的歷史資料。 Microsoft Sentinel Analytics 分析來自各種來源的資料以識別相關性和異常情況。

透過使用分析規則,可以根據已知惡意行為者使用的攻擊技術觸發告警。我們可以設定這些規則來幫助確保 SOC 及時收到環境中潛在安全事件的告警。

為什麼要使用分析規則進行安全維運?

儘管 組織實施的一些其他產品可以幫助我們識別威脅,但 Microsoft Sentinel Analytics 透過關聯和匹配(correlating and matching)影響網路安全威脅存在的資料,在安全威脅的整體偵測中發揮重要作用。透過適當的分析規則,可以深入了解攻擊的來源、哪些資源受到攻擊、潛在的資料遺失以及事故的時間表。

常見的安全分析用例包括:

  • Identification of compromised accounts
  • User behavior analysis to detect potentially suspicious patterns
  • Network traffic analysis to locate trends indicating potential attacks
  • Detection of data exfiltration by attackers
  • Detection of insider threats
  • Investigation of incidents
  • Threat hunting

我們可能無法使用傳統的防護工具(例如防火牆或antimalware)來偵測某些威脅。某些威脅可能幾個月都未被發現。將多種工具和產品收集的資料與威脅情報的強大功能相結合,可以幫助我們偵測、分析和緩解內部威脅。

也可以使用分析規則來建立使用攻擊指標的自訂告警。這些指標可以即時識別正在進行的潛在攻擊。

分析可幫助 SOC 團隊提高複雜調查的效率並更快地偵測威脅。

從 Analytics 主頁建立分析規則。從導覽窗格存取 Microsoft Sentinel 中的分析頁面。

上面的Home page分為三個部分:

  • header bar包含有關目前正在使用的規則數量的資訊。
  • rules and templates清單包含 Microsoft 從 Microsoft Sentinel GitHub repository預先載入的所有規則範本。
  • 詳細資訊窗格包含附加資訊,解釋可以在偵測中使用的每個範本和規則。

篩選規則範本(rule templates)

目前,Microsoft 已從 Microsoft Sentinel GitHub repository預先載入了 150 多個範本規則。要搜尋這些模板並存取適當的規則,需要套用篩選器(filter)。例如,我們可能只想查看偵測具有高嚴重性等級的威脅的範本規則或來自特定資料來源的規則。

若要使用篩選器,請在header bar中選擇要使用的篩選器。

Analytics 主頁提供以下篩選器:

  • Severity。用於按嚴重等級過濾規則。
  • Rule type。目前有四種類型的規則:Scheduled、 Fusion、Microsoft Security、Machine Learning Behavior Analytics。
  • Tactics。用於根據 ATT&CK 模型中的 14 種特定方法過濾規則。
  • Data Source。用於按產生告警的資料來源連接器過濾規則。

分析規則的類型

透過使用 Microsoft Sentinel Analytics 規則,可以根據連接到 Microsoft Sentinel 的來源的資料設定通知和告警。這些告警有助於確保 SOC 團隊了解威脅何時發生,然後團隊可以做出適當反應,以防止威脅影響組織的資產。

我們可以使用 Microsoft Sentinel Analytics 提供的內建分析規則來搜尋潛在威脅,包括以下類型:

  • Anomaly
  • Fusion
  • Microsoft security
  • Machine learning (ML) behavior analytics
  • Scheduled alerts
  • NRT (Near Real Time) rules
  • Threat Intelligence

Anomaly

異常告警是資訊性的(informational),可以識別異常行為。

Fusion

Microsoft Sentinel 使用 Fusion 關聯引擎及其可擴展的機器學習演算法來偵測高階的多階段攻擊。該引擎將多個產品中的許多低可信度告警和事件關聯成高可信且可行動的事件。預設情況下啟用融合(Fusion)。由於邏輯是隱藏的,因此不可自訂,只能使用此範本建立一條規則。

Fusion 引擎還可以將來自預定分析規則的告警與來自其他系統的告警關聯起來,從而產生高可信度的事故。

預設情況下,Microsoft Sentinel 中啟用 Fusion 偵測。 Microsoft 不斷更新用於威脅偵測的 Fusion 偵測方案。對於異常和融合偵測,必須配置以下資料連接器:

  • Out-of-the-box anomaly detections
  • Alerts from Microsoft Products
    — Microsoft Entra ID Protection
    — Microsoft Defender for Cloud
    — Microsoft Defender for IoT
    — Microsoft Defender XDR-Microsoft Defender for Cloud Apps
    — Microsoft Defender for Endpoint
    — Microsoft Defender for Identity
    — Microsoft Defender for Office 365
  • 來自預定分析規則的告警,包括內建的和由資安分析師建立的。分析規則必須包含kill-chain (tactics)和實體映射資訊才能供 Fusion 使用

Fusion 告警識別的一些常見攻擊偵測場景包括:

  • Data exfiltration(資料外洩)。可疑登入 Microsoft Entra 帳號後偵測到的可疑活動(例如 Microsoft 365 信箱中的可疑轉發規則)可能表示使用者帳號受到威脅。
  • Data destruction(資料破壞)。可疑登入 Microsoft Entra 帳號後刪除的唯一檔案數量異常,可能表示有惡意攻擊者使用盜來的帳號來破壞資料。
  • Denial of service。可疑登入 Microsoft Entra 帳號後刪除的大量 Azure VM 可能表示使用者帳號已被盜用,可用於破壞組織的資產。
  • 橫向移動(Lateral movement)。可疑登入 Microsoft Entra 帳號後發生的大量模擬操作可能表示使用者帳戶已被用於惡意目的。
  • 勒索軟體。可疑登入 Microsoft Entra 帳號後,用於加密資料的異​​常使用者行為可能會觸發勒索軟體告警。

Microsoft security

我們可以設定連接到 Microsoft Sentinel 的 Microsoft security solutions,以根據連接的服務中產生的所有告警自動建立事故。

例如,可以將 組織設定為在被歸類為高風險威脅的使用者嘗試登入和存取公司資源時收到告警。

可以設定以下安全解決方案以將告警傳遞給 Microsoft Sentinel:

  • Microsoft Defender for Cloud Apps
  • Microsoft Defender for Server
  • Microsoft Defender for IoT
  • Microsoft Defender for Identity
  • Microsoft Defender for Office 365
  • Microsoft Entra ID Protection
  • Microsoft Defender for Endpoint

ML behavior analytics

Microsoft Sentinel Analytics 包含內建的機器學習行為分析規則。我們無法編輯這些內建規則或檢視規則設定。這些規則使用 Microsoft 機器學習演算法來偵測可疑活動。機器學習演算法將多個低可信度事故關聯為一個高可信度安全事件。這種關聯可以節省可能花費的時間來手動分析來自不同產品的大量告警並將它們關聯起來。分析規則使用的機器學習演算法還可以透過快速擷取和連接重要資料來幫助減少不必要的告警。

例如,透過使用機器學習行為分析規則,可以偵測異常SSH登入或RDP登入活動。

排程告警分析規則提供最高級別的客製。可以使用 KQL 定義自己的表達式來篩選安全事件,並且可以設定要執行的規則的計畫。

從範本建立分析規則

Microsoft Sentinel 中的分析部分包含從 Microsoft Sentinel GitHub repository預先載入的規則範本。我們可以使用這些範本建立規則來偵測安全威脅。

我們可以使用一些現有規則範本來建立單一規則,使用其他規則範本來建立具有不同自訂選項的多個規則。正在使用的範本會在範本頁面上顯示「IN USE」標籤,如以下圖示。

透過在Rule Templates標籤上選擇規則之一,可以觀察該規則的屬性。對於每條規則,可以查看:

Severity level。這呈現告警的重要性。有四個嚴重程度:

  • High
  • Medium
  • Low
  • Informational

Name of the rule。這為告警規則的命名。

Tactics。這指定了不同類型的惡意軟體使用的 MITRE ATT&CK 模型中的方法。

當從「Active rules」頁籤或「Rule templates」頁籤上的清單中選擇規則時,詳細資料窗格會提供所選規則的詳細資訊。

從規則範本建立分析規則

當選擇預先定義的規則範本時,詳細資料窗格可能會顯示可用於定義該規則的行為方式的篩選器。對於 Fusion 和 ML 行為分析規則,Microsoft 不給編輯。但是,對於scheduled rules和 Microsoft security,可以檢視或編輯威脅偵測中使用的查詢、篩選器以及包含和排除。透過選擇建立規則按鈕,可以使用精靈定義分析規則邏輯,該Wizard可協助我們從所選範本自訂規則。

對於 Fusion 和 ML 行為分析模板,只能將它們作為活動規則啟用或停用。

您從 Microsoft security template建立的規則包含以下元素:

General tab

下表列出了General tab上的輸入

Automated response

在Automated response頁籤上,可以定義自動化規則。如果選擇Add new,則會開啟Create new automation rule窗格。以下是輸入欄位:

以下圖示展示了根據 Microsoft Defender for Cloud 產生的告警建立事故的範例。

Create an analytics rule from wizard

從scheduled query rule type可以建立完全自訂的規則。可以定義自己的 KQL 代碼、設定執行告警的排程,並透過將規則與 Microsoft Sentinel Playbook 關聯來提供自動回應。

若要建立scheduled query rule,在 Azure 網站中的「Microsoft Sentinel」下,選擇「Analytics」。在標題列中,選擇“+Create”,然後選擇“Scheduled query rule”。

Scheduled query rule包含以下元素:

General Tab

下表列出了「General」窗格中的輸入欄位。

設定 rule logic

在「Set rule logic」頁籤上,可以透過指定針對 Microsoft Sentinel 工作區執行的 KQL 代碼來定義偵測方法。 KQL 查詢篩選用於觸發和建立事故的資料。

當在Rule query欄位中輸入 KQL 查詢字串時,可以使用Results simulation (preview)來查看查詢結果。Results simulation (preview)可協助我們確定查詢是否傳回預期結果。

當 Azure Activity中建立異常數量的資源時,下列範例查詢會發出告警。

AzureActivity
| where OperationName == "MICROSOFT.COMPUTE/VIRTUALMACHINES/WRITE"
| where ActivityStatus == "Succeeded"
| make-series dcount(ResourceId) default=0 on EventSubmissionTimestamp in range(ago(7d), now(), 1d) by Caller

Alert enrichment

告警加料使我們能夠進一步自訂查詢結果。

在Entity mapping,可以根據查詢結果定義達五個實體(Entity),然後使用這些實體執行深入分析。透過選擇"Add new entity"將這些實體新增至查詢規則。這些實體可以幫助我們執行視覺化調查,因為它們將在「Incident」業籤上顯示為一個群組。某些實體包含使用者、主機或 IP 位址的資訊。

在「Custom details」中,可以設定key value pairs,如果它們出現在查詢結果中,則會在結果中顯示事件參數。

在「Alert details」中,可以輸入任何文字作為在每個告警實例中表示的參數;這些也可以包含指派給該告警實例的戰術(tactics)和嚴重性。

在「Query Scheduling」中,可以設定查詢執行的頻率以及查詢應搜尋資料的歷史記錄。重要的是,不要搜尋早於Query運作頻率的資料,因為這可能會建立重複的告警。

在「Alert threshold」中,可以指定規則在產生告警之前可以傳回的確認結果的數量。可以使用下列operators來定義適當的邏輯運算式:

  • Is greater than
  • Is fewer than
  • Is equal to
  • Isn’t equal to

在Event grouping中,可以選擇以下兩個選項之一:

  • 將所有事件分組到單一告警。這是預設選項,如果查詢傳回的結果多於指定的警報閾值,它會建立單一告警。
  • 為每個事件觸發告警。此選項為查詢傳回的每個事件建立唯一的告警。

在「Suppression」中,可以將「Stop running the Query after the alert is generated」選項設定為「開」或「關」。當選擇「開啟」時,如果在我們希望抑制該規則的持續時間內再次觸發該規則,Microsoft Sentinel 將暫停建立其他事故。

Incident settings

使用「Incident settings」頁籤建立事故,這些事故是透過根據觸發器和時間範圍對告警進行分組而產生的。

在「Alert grouping」中,可以透過將多個告警分組為一個事故來減少來自多個個警的干擾。當啟用相關告警分組時,可以從以下選項中進行選擇:

  • 如果所有實體都匹配,則將告警分組為單一事故(建議選項)
  • 將此規則觸發的所有告警分組為單一事故
  • 如果所選實體符合(例如來源或目標 IP 位址),則將告警分組為單一事故。

如果產生的另一個告警屬於先前關閉的事故,也可以點選Reopen closed matching incidents。

自動回應功能

在「Automated Response」頁籤上,選擇現有自動化規則或建立新規則。自動化規則可以根據選擇的觸發器和條件運行playbook。

--

--

運用"雲端服務"加速企業的數位轉型願景
運用"雲端服務"加速企業的數位轉型願景

Written by 運用"雲端服務"加速企業的數位轉型願景

我們協助您駕馭名為"雲端運算"的怪獸,馴服它為您所用。諮詢請來信jason.kao@suros.com.tw. https://facebook.com/jason.kao.for.cloud

No responses yet