跳轉到主要內容
Beplay体育安卓版本平台的博客

建立一個網絡安全Lakehouse CrowdStrike獵鷹事件的第二部分

分享這篇文章

可見性是至關重要的網絡防禦時——你不能保護你不能看到的東西。在現代企業環境中,可見性指的是監測和占所有端點設備能力,網絡通信,和關鍵資產。事件日誌允許安全團隊建立一個基線的正常預期行為和建立規則,識別異常活動。當然,這是假定這些日誌收集和可搜索的放在第一位。這個重要的部分是經常被忽視。幸運的是,與磚Lakehouse平台的力量,很容易建立一個可伸縮的、健壯的、且經濟有效的網絡安全分析程序。Beplay体育安卓版本

第一部分本係列中,我們經曆的過程建立一個網絡安全Lakehouse,允許我們收集和實施CrowdStrike獵鷹日誌數據。在這個博客(第二部分)中,我們將探索特定的用例,包括數據探索、自動濃縮,和分析的發展。這個博客年底你會配備一些示例筆記本,將為您提供總體指導和例子來幫助啟動你的威脅檢測和調查程序。

我們將調查的數據是一組CrowdStrike獵鷹日誌組成的生產數據收集從企業網絡端點。由於這些信息的敏感性質,某些細節被蒙麵保護數據的安全性和保密性。這些數據收集持續幾周的時間,是反映典型工作日使用模式。

為什麼磚CrowdStrike數據?

磚我們可以很容易地攝取、牧師和大規模分析CrowdStrike日誌。和磚的健壯的集成框架,我們可以進一步豐富與上下文附加來源這些日誌,將原始數據轉換成更有意義的見解。濃縮更容易讓我們相關安全事件優先級事件,降低誤判率,預測未來的安全威脅。

利用為CrowdStrike日誌數據磚的另一個好處是,它支持大規模曆史分析。傳統上,構建、管理和維護日誌數據一直是低效和昂貴的過程。便宜的對象存儲和開放格式的模型數據磚Lakehouse架構,組織有能力保留這些數據集的時間更長時間。訪問高安全曆史數據使組織能夠評估他們的安全狀況隨著時間的推移,構建增強檢測和響應能力和執行更精通威脅亨特操作。此外,磚平台配備先進的開箱即用的工具,可以幫助建立一個先Beplay体育安卓版本進的安全lakehouse劃算的和有效的方法。

方法

數據收集和攝入僅僅是開始在我們尋求建立一個有效的網絡安全分析平台。Beplay体育安卓版本一旦我們有了數據,我們的下一步是探索數據,以發現模式,特點,和其他物品。這個過程中,通常被稱為用戶和實體行為分析(UEBA),包括監測人類用戶的行為和實體在一個組織。

我們開始通過執行一些基本的探索性數據分析以確定關鍵變量和關係。跨端點CrowdStrike捕獲數以百計的事件類型。我們這些事件分為以下類型的活動:

  1. 用戶活動
  2. 網絡活動
  3. 端點信息&活動活動和過程管理(包括文件)

我們分配給每個活動一組相應的事件類型。這是我們抽樣的映射:

活動 事件類型 活動內容
用戶活動 Useridentity 身份的事件,包括係統身份,在設備上運行的進程。
userlogon 用戶登錄——從哪個設備,什麼時候,IP信息等。我們將使用這些信息後顯示如何檢測可疑的登錄。
網絡活動 NetworkListenIP4 & NetworkListenIP6 聽港口與CrowdStrike代理安裝在設備上。執行一些軟件可以增加攻擊表麵接受傳入的連接。
NetworkConnectIP4 & NetworkConnectIP6 來自設備的連接到一個遠程端點——本地和遠程IP地址、端口和協議。我們可以使用這些信息來匹配關係對國際石油公司。
端點的活動 Fileopeninfo 打開文件,打開文件的過程
hostinfo 特定的主機端點獵鷹上運行的信息
Processrollup2 流程細節正在運行或已經完成了一個主機上運行和包含。

數據規範化和濃縮

在我們深入分析我們首先需要執行一些初步規範化和濃縮。在這種情況下,數據的規範化是指重組限製冗餘,數據條目的格式,和改進的整體凝聚力條目類型。這是重要的一步——適當的數據清理和歸一化導致更有效地使用數據。例如,我們要有正確的數據類型上執行範圍查詢和比較時間戳,港口和其他對象。

CrowdStrike獵鷹日誌是json格式。此外,有時間戳編碼之間的方差;一些編碼為長,雙。也有超過300個不同的事件類型,每個都有不同的模式和領域。為了輕鬆地管理正常化過程我們編寫一個簡單的分析器,識別數據類型和編程生成的代碼執行正常化non-string字段。

利用磚在這種情況下的另一大優點是,我們可以很容易地豐富數據和來自內部和外部的信息來源。對於這一分析,我們包括地理位置信息和網絡使用MaxMind的GeoIP和自治係統(AS)數據庫。這可能進一步擴大到包括其他來源的數據。同樣,我們添加了用戶定義的函數來計算網絡社區id允許我們在多個表之間關聯數據以及識別“穩定”網絡通信模式(即相同的設備定期達到相同的網絡端點)。

網絡和地理信息的例子從IP地址的設備中提取CrowdStrike代理在哪裏運行。

地理濃縮為我們提供了可見性的地理位置的人登錄。我們也有增加的能力選擇不同的粒度級別(如國家和城市):

選擇aip_geo.country_code作為的國家,(1)作為crowdstrike_enriched.userlogon在哪裏to_date (時間戳)=當前日期()集團通過aip_geo.country_code

當前用戶登錄的例子

在這個例子中,我們使用第三方庫情節看更細粒度的數據:

當前用戶登錄的例子

數據布局

pb CrowdStrike獵鷹日誌很容易生長,有一個適當的數據布局和數據壓縮得到更快的查詢響應時間是至關重要的。我們可以使磚optimizeWrite自動緊湊鋪三角洲表中創建的文件。

δ表可以進一步優化數據不z值。數據不依賴於正確的數據類型,比如,int和時間戳,可以顯著減少數據讀取時間。與z順序來提高數據布局的優化,將進一步幫助跳過掃描和讀取數據不相關的我們正在運行的查詢。

建立一個基線

一旦我們確定了我們感興趣的數據,下一步是建立一個基線數據作為比較基準。我們可以很容易地生成一個數據概要文件直接在我們的筆記本使用磚總結命令:

磚筆記本總結UI

這包括幾個有用的統計和總結為每個屬性值分布。在上麵的例子中,我們為processrollup2生成彙總統計。
我們也有興趣學習最常用的遠程端口(“標準”以外的港口,比如HTTPS)。這是一個簡單的查詢:

選擇*NetworkConnectIP4在哪裏RemoteAddressIP4_is_global=真正的RemotePort(443年,80年,53,22,43)

上麵的查詢的結果可以可視化在磚這樣的筆記本。

跨組織的遠程使用的端口

從豐富的數據獲得的見解

與我們的數據攝入和濃縮管道,接下來是什麼?我們有很多的選擇取決於我們的目標,從攻擊模式分析、預測分析、威脅檢測、係統監控、風險評分,分析各種安全事件。下麵我們將介紹網絡安全分析的一些示例。

在我們開始之前,我們需要了解如何將不同的事件鏈接在一起。例如大多數事件類型傳感器id(援助)標識安裝代理端點和ContextProcessId的引用TargetProcessId ProcessRollup2表中的列。

1。發現有潛在的脆弱的服務運行的節點

服務實現脆弱的版本的微軟遠程桌麵協議(RDP), Citrix服務和NetBios通常由攻擊者想要獲得目標端點。有很多記錄病毒利用NetBios進程上運行端口445。同樣,一個開放的RDP端口3389可能會導致拒絕服務攻擊。

CrowdStrike獵鷹代理日誌信息過程監聽端口NetworkListenIP4NetworkListenIP6事件。我們可以使用這些信息來確定進程監聽端口通常歸因於服務潛在的脆弱。讓我們先檢查事件歸因於這些特定的端口數量每天在過去30天內使用以下查詢:

all_data作為((選擇LocalPort to_date (時間戳)作為日期,aip_is_globalNetworkListenIP4)聯盟所有(選擇LocalPort to_date (時間戳)作為日期,aip_is_globalNetworkListenIP6))選擇日期LocalPort,(1)作為all_data在哪裏LocalPort(3389年,139年,445年,135年,593年)——RDP Netbiosaip_is_global=真正的日期>當前日期()- - - - - -30.集團通過LocalPort,日期訂單通過日期asc

在圖上我們可以看到,大多數聽事件歸因於NetBios(盡管我們有一大塊RDP-related事件):

數一數脆弱監聽端口的過程在過去的30天

在這一點上我們可以了解到更詳細的數據監聽這些端口的過程中通過加入processrollup2表。我們可以利用TargetProcessId場活動鏈接到一個端點的過程和使用進程ID鏈接和其他事件。最終,我們可以構建一個層次結構的過程中通過加入ParentProcessId列。

all_data作為((選擇LocalPort,時間戳、ContextProcessId aip_is_globalNetworkListenIP4)聯盟所有(選擇LocalPort,時間戳、ContextProcessId aip_is_globalNetworkListenIP6))選擇d。LocalPort pr.CommandLine,援助,aip_asall_data d加入processrollup2公關d.ContextProcessId=pr.TargetProcessId在哪裏LocalPort(3389年,139年,445年,593年,135年)——RDP Netbios & Windows RPCd.aip_is_global=真正的to_date (d.timestamp)>當前日期()- - - - - -30.訂單通過d.timestampdesc

流程端口監聽脆弱

2。執行應用程序的信息

信息記錄程序執行processrollup2事件。這些事件包含詳細的執行概要文件,包括程序可執行文件的絕對路徑,命令行參數,執行開始時間,應用程序的SHA256二進製、平台架構,等等。我們將從一個簡單的查詢,統計每個特定平台上執行的應用程序數量:Beplay体育安卓版本

選擇event_Beplay体育安卓版本platform,(1)作為processrollup2集團通過event_Beplay体育安卓版本platform訂單通過desc

通過操作係統流程相關事件的數量

一些關於應Beplay体育安卓版本用程序的平台類型包括額外的數據類型(我等一個控製台應用程序或一個GUI應用程序,等等)。讓我們檢查我們看到的應用程序類型用於Windows女士:

選擇情況下ImageSubsystem1然後“本地”2然後“Windows的GUI”3然後“Windows控製台”7然後“Posix控製台”256年然後WSL的其他的“未知”結束作為AppType,(1)作為processrollup2在哪裏event_Beplay体育安卓版本platform=“贏”集團通過ImageSubsystem訂單通過desc

正如預期的那樣,大多數GUI應用程序執行:

類型的應用程序上執行Windows女士的端點。

我們可以更深的挖掘到一個特定的類別。讓我們確定最受歡迎的控製台應用程序在Windows上:

選擇^ regexp_extract (ImageFileName。”* \ \ \ \ ([^ \ \ \ \] + $)”,1)作為文件名,(1)作為Processrollup2在哪裏event_Beplay体育安卓版本platform=“贏”ImageSubsystem=3集團通過文件名訂單通過desc

最受歡迎的窗口控製台程序上執行的端點。

3所示。用戶登錄到Windows怎麼樣?

有多種方式來登錄到Windows工作站上——互動、遠程交互(通過RDP),等等。每個登錄事件記錄CrowdStrike獵鷹的數字LogonType國旗中描述包含一個值微軟的文檔。讓我們檢查和他們的登錄類型頻率:

選擇情況下LogonType0然後“係統”2然後“互動”3然後“網絡”4然後“批”5然後“服務”7然後“解鎖”8然後“NetworkCleartext”9然後“NewCredentials”10然後“RemoteInteractive”11然後“CachedInteractive”其他的concat (“無名:”LogonType)結束作為LogonTypeName,(1)作為userlogon在哪裏event_Beplay体育安卓版本platform=“贏”集團通過LogonType排序通過desc

登錄類型數

現在讓我們看看更多細節,通過RDP哪些用戶登錄,通過網絡或係統用戶?我們將從係統用戶——讓我們看看流程是與這些登錄相關事件:

選擇ul。UserSid、LogonTime pr.CommandLine, ul。援助,ul.aip_asuserlogon ul加入processrollup2公關ul.ContextProcessId=pr.TargetProcessId在哪裏LogonType=0訂單通過LogonTimedesc

係統用戶正在運行的進程。

同樣的,我們可以通過網絡查看用戶登錄:

選擇ul。UserSid、LogonTime pr.CommandLine, ul。援助,ul.aip_asuserlogon ul加入processrollup2公關ul.ContextProcessId=pr.TargetProcessId在哪裏LogonType=3訂單通過LogonTimedesc

通過網絡執行登錄過程。

4所示。妥協的匹配連接數據與已知指標(國際石油公司)

以前提取的信息查詢很有趣,但是我們真的很想看看我們的端點是解決任何已知的指揮與控製(C2)的名稱服務器。這些服務器的信息可以從不同的來源獲得,外星人實驗室®開放威脅交換®(第一項™),或ThreatFox。對於本例,我們使用的數據特定的威脅飼料——數據導出為CSV,並導入到三角洲湖。這個數據集包含多種類型的條目,主機名指定的主機名,或“域”任何主機名注冊域名,我們可以利用這些信息對表跟蹤DNS請求(DnsRequest事件類型)。查詢相對比較簡單,我們隻需要為不同類型的條目:使用不同的列

  • 國際奧委會條目類型的主機名應該匹配的域名DNS請求表的列。
  • 國際奧委會“域”類型的條目應該匹配“DomainName_psl。registered_domain列那是說的濃縮,使用公共後綴列表提取注冊域名。

當我們找到任何匹配國際石油公司,我們提取信息客戶端機器(援助、航…)和過程使DNS請求(命令行、ProcessStartTime…)

domain_matches作為(選擇域名、援助、aip、ContextProcessId aip_geo aip_asdnsrequest d加入c2_servers cd.DomainName=c.indicator在哪裏c.indicator_type=的主機名聯盟所有選擇域名、援助、aip、ContextProcessId aip_geo aip_asdnsrequest d加入c2_servers cd.DomainName_psl.registered_domain=c.indicator在哪裏c.indicator_type=“域”)選擇dm.DomainName、dm.aid pr.CommandLine、pr.ProcessStartTime dm.aip, dm.ContextProcessId, dm.aip_geo dm.aip_asdomain_matches dm加入processrollup2公關dm.ContextProcessId=pr.TargetProcessId

我們沒有任何截圖顯示在這裏,因為我們沒有任何匹配:-)

接下來是什麼?

在這個博客,我們演示了如何利用數據磚Lakehouse平台構建可伸縮的、健壯的、且經濟有效的網絡安全分析。Beplay体育安卓版本我們展示了濃縮CrowdStrike獵鷹日誌數據,並提供了示例的結果數據可以使用作為一個威脅檢測和調查過程的一部分。

在以下的博客在本係列中,我們將做事投入到創建的可操作的情報管理漏洞和威脅提供更快、近實時事件反應使用CrowdStrike獵鷹數據。請繼續關注!

我們還提供了一些示例筆記本[1][2]你可以導入到自己的磚工作區。筆記本電腦的各部分的代碼和功能的詳細描述。我們邀請你的電子郵件(電子郵件保護)我們期待著您的問題和建議,使這個筆記本更容易理解和部署。

如果您是磚,請參考文檔詳細說明如何使用磚筆記本。

免費試著磚

相關的帖子

看到所有產品的帖子
Baidu
map