使用MS Sentinel的威脅搜尋
使用 Microsoft Sentinel 透過互動式查詢和其他工具跨地端和雲端環境尋找安全威脅。 資安人員可以使用 Microsoft Sentinel 識別Azure 環境中的安全威脅。
如果組織使用了以下的微軟服務:
- 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
- Endpoint Protection
- Azure Information Protection
威脅搜尋查詢(threat-hunting queries)的建立與管理
我們可以使用 Microsoft Sentinel 中的搜尋和查詢工具來尋找整個環境中的安全威脅。這些工具可過濾大量事件和安全資料來源,以識別潛在威脅或追蹤已知或預期的威脅。
Microsoft Sentinel 中的Hunting頁面具有內建查詢,可引導我們的搜尋流程並協助尋求適當的搜尋路徑來發現環境中的問題。搜尋查詢(Hunting queries)可能會暴露出一些問題,這些問題本身不足以產生告警,但隨著時間的推移經常發生,足以值得調查。
Hunting頁面提供所有搜尋查詢的清單。可以按名稱、提供者、資料來源、結果和戰術對查詢進行篩選和排序。透過選擇清單中查詢的「Favorites」星形圖示來儲存查詢。
當從清單中選擇查詢(Query)時,查詢詳細資訊將顯示在新窗格中,其中包含有關查詢的說明、代碼和其他資訊。這些資訊包括相關實體和已確定的戰術。可以透過選擇詳細資料窗格上的「Run Query」以互動方式執行查詢。
使用 MITRE ATT&CK 框架尋找威脅
Microsoft Sentinel 使用 MITRE ATT&CK 框架按戰術對查詢進行分類和排序。 ATT&CK 是全球威脅環境中使用和觀察的戰術和技術的知識庫。我們可以使用 MITRE ATT&CK 在 Microsoft Sentinel 中開發並告知我們的威脅搜尋模型和方法。當我們在 Microsoft Sentinel 中搜尋威脅時,可以使用 ATT&CK 框架透過 MITRE ATT&CK 戰術時間軸進行分類和執行查詢。
選擇任何戰術都會按所選戰術過濾(tactic filters)可用查詢。以下搜尋戰術(Hunting tactics)來自 ATT&CK Enterprise 和 ICS(工業控制系統)矩陣:
- Reconnaissance.
攻擊者用來尋找可用於規劃未來行動的資訊的策略。 - Resource development.
攻擊者用來建立可用於支持行動的資源的戰術。資源包括基礎設施、帳戶或能力。 - Initial access.
攻擊者透過利用外部系統中的漏洞或配置弱點來進入網路的戰術。一個例子是有針對性的魚叉式網路釣魚(spear-phishing)。 - Execution.
讓攻擊者在目標系統上運行其代碼的戰術。例如,駭客可能會執行 PowerShell 腳本來下載更多攻擊工具和(或)掃描其他系統。 - Persistence.
即使在重新啟動和憑證變更後,攻擊者也可以保持對目標系統的存取。持久性技術的一個範例是攻擊者建立一個scheduled task,該作業在特定時間或重新啟動時運行其代碼。 - Privilege escalation.
攻擊者用來取得系統更高層級權限的戰術,例如本機管理員或 root。 - Defense evasion.
攻擊者用來避免偵測的戰術。規避戰術包括將惡意代碼隱藏在受信任的process和資料夾中、加密或混淆對手代碼,或停用安全軟體。 - Credential access.
在系統和網路上部署的戰術,用於竊取使用者名稱和憑證以供重複使用。 - Discovery.
攻擊者用來獲取有關他們想要利用或用於其戰術優勢的系統和網路的資訊的戰術。 - Lateral movement.
允許攻擊者從網路中的一個系統移動到另一個系統的戰術。常見技術包括驗證使用者身分的pass-the-hash methods和使用遠端桌面協定。 - Collection.
攻擊者用來收集和整合他們的目標資訊的戰術。 - Command and control.
攻擊者用來與其控制下的系統進行通訊的戰術。一個例子是攻擊者透過不常見或高編號連接埠與系統通訊,以逃避安全設備或proxies的偵測。 - Exfiltration.
用於將資料從受感染網路移至完全受攻擊者控制的系統或網路的戰術。 - Impact.
攻擊者用來影響系統、網路和資料可用性的策略。此類方法包括denial-of-service attacks和磁碟清除或資料抹除軟體。 - Impair Process Control.
攻擊者用來操縱、停用或破壞物理控制過程的戰術。 - Inhibit Response Function.
攻擊者用來阻止我們的安全、保護、品質保證和維運人員介入功能回應故障、危險或不安全狀態的策略。 - None.
建立自訂查詢以完善威脅搜尋
所有 Microsoft Sentinel 搜尋查詢都使用 Log Analytics 中使用的 KQL語法。我們可以在詳細資料窗格中修改查詢並執行新查詢。或者,可以將其另存為在 Microsoft Sentinel 工作區中重複使用的新查詢。
您也可以使用 KQL 代碼建立自己的自訂查詢來尋找威脅。
自訂查詢可定義以下內容:
Microsoft Sentinel repository包含開箱即用的偵測、探索查詢、搜尋查詢、工作簿、playbooks等,可協助我們保護IT環境並尋找威脅。 Microsoft 和 Microsoft Sentinel 社群對此儲存庫做出了貢獻。
此儲存庫包含包含 Microsoft Sentinel 功能多個領域(包括搜尋查詢)貢獻內容的資料夾。我們可以使用這些查詢中的代碼在 Microsoft Sentinel 工作區中建立自訂查詢。
用Bookmarks儲存主要發現
要尋找對組織IT環境的威脅,我們必須檢查大量日誌資料以尋找惡意行為的證據。在此過程中,我們可能會發現想要記住、重溫和分析的事件,作為驗證潛在假設和理解攻擊的完整故事的一部分。
Microsoft Sentinel 中的Bookmarks可以透過保留已執行的查詢(Query)以及我們認為相關的查詢結果來尋找威脅。也可以透過新增註釋和標籤來記錄我們的整體脈絡觀察並參考我們的發現。團隊成員都可以看到添加Bookmark的資料,以便輕鬆協作。
我們可以隨時在「Hunting」頁面的「Bookmarks」頁籤上重新存取新增bookmakr的資料。可以使用篩選和搜尋選項快速尋找目前調查的特定資料。或者,可以直接在 Log Analytics 工作區的 HuntingBookmark table中查看新增bookmark的資料。
用Bookmarks建立或加入事故(Incidents)
我們可以使用bookmark建立新事故或將新增bookmark的查詢結果新增至現有事故。透過工具列上的Incident actions按鈕,可以在選擇bookmark時執行其中任一任務。
您可以從「Incidents」頁面管理從bookmark建立的事故以及在 Microsoft Sentinel 中建立的其他事故。
使用investigation graph探索Bookmarks
我們可以像調查 Microsoft Sentinel 中的事故一樣調查bookmarks。從「Hunting」頁面中,選擇「Investigate」以開啟事故的調查圖。調查圖是一種視覺化工具,有助於識別參與攻擊的實體以及這些實體之間的關係。如果事故在一段時間內涉及多個告警,我們還可以查看告警時間軸以及告警之間的相關性。
我們可以選擇圖表上的每個實體來觀察有關它的完整脈絡資訊。此資訊包括與其他實體的關係、帳號使用情況和資料流資訊。對於每個資訊區域,可以前往 Log Analytics 中的相關事故並將相關告警資料新增至圖表。
我們可以選擇圖表上的bookmarks項目來觀察與bookmark的安全性和環境脈絡相關的重要bookmark metadata。
透過livestream觀察一段時間內的威脅
我們可以使用hunting livestream來測試針對即時事件發生的查詢。 Livestream 提供互動式對話,當 Microsoft Sentinel 找到與我們的Query相符的事件時,這些Session可以通知我們。
Livestream始終基於Query。通常,我們會使用查詢(Query)來縮小流程日誌事件的範圍,因此只顯示與威脅搜尋工作相關的事件。我們可以使用Livestream來:
- 針對即時事件測試新查詢。
- 產生威脅通知。
- 展開調查。
即時串流查詢每 30 秒刷新一次,並針對查詢的任何新結果產生 Azure notifications。
若要從 Microsoft Sentinel 中的「Hunting」頁面建立Livestream,請選擇「Livestream」選項卡,然後從工具列中選擇「New livestream」。
在新的Livestream頁面上,指定livestream session的名稱以及為session提供結果的查詢。livestream events的通知顯示在 Azure 網站通知中。
我們可以播放livestream以查看結果或儲存livestream以供以後參考。可以從「Hunting」頁面上的Livestream」頁籤查看已儲存的livestream session。我們也可以透過選擇事件,然後從命令列中選擇"Elevate to alert",將事件從livestream session提升為告警。
使用Livestream來追蹤 Azure 資源刪除的基準活動,並確定應追蹤的其他 Azure 資源。例如,下列查詢傳回記錄已刪除資源的任何 Azure 活動事件:
AzureActivity
| where OperationName has 'delete'
| where ActivityStatus == 'Accepted'
| extend AccountCustomEntity = Caller
| extend IPCustomEntity = CallerIpAddress
如果查詢(Query)傳回重要結果,可以從命令列中選擇「Create analytics rule」以根據查詢建立分析規則。規則細化查詢以識別特定資源後,可以在刪除資源時產生告警或事故。