天天看點

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

開源最大的特征就是開放性,雲生态則讓開源技術更具開放性與創造性,Elastic 與阿裡雲的合作正是開源與雲生态共生共榮的典範。值此合作三周年之際,我們邀請業界資深人士相聚雲端,共話雲上Elasticsearch生态與技術的未來。
Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

本篇内容是Elastic社群布道師劉征帶來的如何規劃和執行威脅狩獵的方法

分享人:Elastic社群布道師劉征

視訊位址:

https://developer.aliyun.com/live/246151

關于如何規劃和執行威脅狩獵,本文将通過三個部分展開介紹:

  • 流行的攻擊生命周期架構
  • 規劃可重複的威脅狩獵流程
  • 安全威脅檢測規則的管理

一、流行的攻擊生命周期架構

首先看一下目前企業可能面臨的安全威脅和一些風險。目前,不管企業規模大小,幾乎所有的員工都使用着各種各樣的IT基礎設施和服務,是以我們的攻擊面就充滿了各種各樣的安全盲點。每一個服務,甚至每一個人都可能是被攻擊的目标和被黑客襲擊的對象。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

我們組織裡面的安全分析師也早已是四面楚歌,不堪重負。在Elastic Stack這樣一個技術創新發展的演進過程當中,Elastic stack逐漸形成了一個日臻完備的威脅狩獵平台。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

在目前最新版的Elastic Stack技術棧中,我們内置了在威脅狩獵方面非常重要的一個核心元件,這個元件包括了檢測規則和檢測引擎。檢測規則和檢測引擎将利用大量的ESC相容的各種安全的告警和事件,這些安全告警事件都是通過我們現有的Beats,Logstash和elastic endpoint子產品采集和內建過來的。除了具有檢測規則和檢測引擎之外,我們還在右側這邊內建了很多自動化的工作流,包括檢測的告警,基于時間線的案例研究,外部的安全事故管理,和流程平台的一些對接。在Elastic Stack技術堆棧中,我們可以使用它來做一些安全事件管理,并基于安全事件管理的資料基礎做比較可行和完備的威脅狩獵安全管理工作。

二、規劃可重複的威脅狩獵流程

【安全威脅模組化步驟】

如果我們想做威脅狩獵,就需要對安全威脅進行模組化。在一個紛繁複雜的IT環境中,我們首先要有威脅的假設,然後基于這些假設做管理。有如下四個步驟:

  • 誰是你的敵人?
  • 敵人的動機?
  • 敵人的目标?
  • 攻擊成功後會有什麼影響和損失?

基于這個初步思索,我們會再用到一些比較缜密的業内流行的安全威脅攻擊的生命周期的架構。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

我們推薦使用Mitre ATT&CK的企業矩陣,Mitre ATT&CK的企業矩陣,将所有的安全威脅攻擊都通過戰術,技術和流程等方式有條理地進行梳理。比如在這個表格中,表頭包括初始的入侵,入侵後的執行,提權操作。在你的網絡中發現,網絡中資訊往外的滲透,并執行一些指令和控制。上面都是一些戰術,這些戰術可以分階段地組合成對我們企業IT資産和服務人員不同的攻擊行為。在每一個戰術中,也就是每一列,都分别列出了不同使用的技術,這些攻擊技術中都是使用這種字母排序的形式給我們做梳理和展示。是以當企業在做威脅狩獵的時候,我們就非常推薦參考Mitre ATT&CK的企業矩陣模型。

【典型事例】

我們從中找出一個非常典型的事例,來看一下這個矩陣模型告訴了我們什麼。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

下面有一個網址,這個網址中非常詳細地叙述了魚叉式釣魚攻擊這樣一個攻擊的技術。在這個網頁上我們可以看見這個攻擊的技術還可以和其他三個技術相關聯,比如這個網頁是基于郵件附件的魚叉式釣魚攻擊,這個魚叉式釣魚攻擊還可以和郵件的連結相關,還可以跟釣魚的服務相關。我們可以看到在這樣一個非常詳盡的說明當中,有關于這個戰術的所處階段,也就是Mitre ATT&CK的的企業矩陣的表頭部分,每一種特定的攻擊有一個具體的ID,這些資訊将讓我們的安全管理人員互相之間的溝通更加專業一緻。 在這個案例中, 我們可能就以安全威脅ID t1566.01這樣一個ID來做文檔中溝通的一個核心資訊。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

如果我們想應對這樣的安全威脅,我們也要去利用到現有的一些檢測的資料源。 安全威脅攻擊的流程大緻是像上圖表格中的步驟, Mitre ATT&CK中不僅描述了某一個特定的安全攻擊行為的特征,而且還提出了相應的防禦技術,以及預防緩解的方法。比如在這個魚叉式攻擊當中,我們可以使用防病毒軟體,防惡意軟體,IDS,網絡的防入侵檢測系統等等幫我們做抵禦。 另外,我們檢測這種安全威脅的發生也有一些特定的政策,比如這裡使用網絡的入侵檢測系統,IDS,或者是防病毒的一些實踐,報告檢測,和相應的威脅風險的迹象。 在Mitre ATT&CK的官網上一共描述了大概有兩百多種典型的攻擊行為的特征,有些是像這種魚叉式釣魚攻擊比較詳細的描述,有些就描述地比較概要。 是以Mitre ATT&CK是一個非常可信的參考架構,讓我們來對威脅狩獵的這種工作進行組織,可以作為一個參考的源頭。

【經典案例分析】

再舉一個更詳細的案例,剛才講到的是魚叉式釣魚攻擊,我們用一個可能更普遍的一種攻擊為案例來看一下我們如何在Elastic Stack當中去實施bits Jobs的安全風險的狩獵過程。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

首先,我們需要利用Mitre ATT&CK給我們提供的TTP語言去描述BITS Jobs。 BITS Jobs本身是Windows作業系統背景的一個智能資料,是非常底層的傳輸服務,它有它底層的一個可執行檔案,就是bitsadmin.exe這樣一個程式,但它的戰術是通過濫用這個可執行的下載下傳或執行惡意的代碼,通過HTTP的方式去解釋在我們這個工作環境中BITS Jobs的安全威脅。

為了防範和防禦安全威脅,我們就要進行威脅狩獵,這也是基于一個威脅狩獵假設的。我們的假設可以描述成在我們的工作環境當中,或者說IT環境當中,可能潛在的敵方或者黑客濫用名為bitsadmin.exe的程式建立BITS Jobs相關的作業。 這個BITS Jobs相關的作業在環境當中的發生和存在可能會執行相關的惡意程式和代碼,這就是我們對這個安全威脅工作的描述。對這樣一個安全威脅的狩獵過程,我們會用文檔做詳細的記錄,在這個文檔中要非常具體地記錄時間或資源的規劃,比如我們會計劃兩名安全管理團隊人員在五個工作日之内完成對以上安全威脅假設的狩獵過程,可以利用到的資料源有Windows作業系統的事件日志。我們是沒有例外的系統或資料源的,希望對我們工作範圍内所有的主機都去分析它Windows的事件日志。 最後,這一次威脅狩獵的工作過程以及結果會記錄在我們安全團隊所使用的Wiki上,這就是我們對整個具體的威脅狩獵工作的描述。

接下來,在執行階段當中,首先我們要使用Winlogbeats去采集每一個Windows作業系統中的每一個端點的所有日志。這個采集和歸集的時間限度我們希望是最近一年的時間,分析的對象就是這個程序的名字,名為bitsadmins.exe 的可執行程式的執行次數。我們可以首先在這一年的Windowslog日志當中進行一個快速的搜尋。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

上圖就可以清晰地展示出哪些天的執行次數,是怎樣的趨勢。搜尋出這樣一個具體的程序結果之後,我們對需要的結果做可視化分析,要用到Kibana裡面的可視化分析工具。首先,我們可以對這個分析的結果做一個排序和排名,可以排出這些貌似比較異常的作業,我們會去聚焦在bitsadmins這個執行參數中包含外部網址的事件當中,也就是說某些機器可能會被濫用,去執行外部的一些網站上下載下傳的惡意代碼,是以我們就進一步鎖定到了在一年的事件中有一次這樣的行為。 因為這個行為是被具體到了某一次或幾次事件當中,是以我們就從大量的實踐當中更進一步地縮小了範圍,這個事件也給我們帶來了更豐富的上下文,我們可以将這次事件具體到哪一個使用者所使用的哪一台什麼樣的裝置,那天整個工作當中還有哪些相關的事件。是以這整個事件的結果,一個事件詳情的揭露,可能會為本次的威脅狩獵帶來一個非常大的收獲,這就是我們一個階段性的成果。

三、安全威脅檢測規則的管理

基于這樣一個非常具體的Kibana探測的規則,我們可以編寫出Kibana裡面查詢的威脅探測規則的語句。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

這個威脅探讨規則語句就如上圖中顯示的Process.name=bitsadmin.exe,并且它這個程序是需要帶有五個标志性的參數,這些參數往往就是可疑事件的一些發生。是以,由于我們前期的工作已經探測到這個環境當中确實曾經發生過這種安全入侵的事件,雖然隻有一例,但是我們也證明了這個安全威脅在環境當中是存在的。我們在以後就希望通過一個自動化的方式能夠通知或提醒到BITS Jobs安全威脅事故的複發,是以我們可以基于剛才分析的結果建立一條自定義的探測規則,可以使用Kibana當中的SIEM這個app進入到探測規則的管理界面當中,建立一條叫自定義的查詢規則。 這個自定義的查詢規則一旦建立之後, 就可以在背景持續運作。

我們針對BITS Jobs的威脅狩獵的階段性成果就形成了兩個重要的成果:

第一、我們剛才所描述的整個過程都會形成文檔,記錄在安全管理團隊的Wiki上,這個文檔也會公布給所有的幹系方,告訴大家我們這個環境當中确實是有這樣一個安全事故發生的。

第二、我們會去建立一條自動化的安全威脅風險的檢測規則,這個規則在後期會被持續地在Elastic Stack這個技術平台上去運作,通過它來預防後續可能發生的BITS Jobs濫用的安全風險。這個規則一旦建立之後,還是需要有些維護的,包括安全管理人員可能會多次對這個規則進行測試,確定規則的靈敏性。更重要的是,維護測試也確定了這個規則在今後的安全威脅防護的過程當中是一個長效的存在。

接下來,我們再回顧一下狩獵的基礎是什麼。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

狩獵的基礎還是安全事件的資料源,我們可以使用Elastic Stack當中各種各樣的beats, 包括 Packetbeat, Filebeat, Winlogbeat, 還有Auditbeat這些工具,讓我們從網絡應用,雲平台,主機和網絡活動當中收集到這些資料。有了這些資料之後,我們就可以對這些資料進行更進一步的優化。我們希望将任何一條收集上來的裸的安全事件進行處理,這些處理包括了跟威脅情報的關聯,IP地理資訊的豐富,以及其他外圍系統的查詢。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

經過豐富之後的這些的資料就更具有意義,就是一條安全的情報資料。原資料不具備情報的價值,我們把它豐富之後,每一條資料都變成一個安全管理的情報資料了。這些情報資料裡面标明了一些非常重要的,基于地理的一些資訊系統,來自哪些國家和城市的連結或者網絡活動,IP位址是不是一個已知的非法的IP位址,或者已知的惡意的IP位址。

有了這些資料之後,我們就可以開展安全分析之旅了。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

講到威脅狩獵這個具體的工作,其實是我們安全分析工作當中一個比較高階的工作,我們基于安全威脅情報對它進行特定的分析。 當然,上文也提到了BITS Jobs本來就是Mitre Att&ck攻擊生命周期架構當中的一條,講述的具體案例隻是通過Elastic Stack裡 SEIM的應用将狩獵的工作進行落地,是以如果想要做這樣一個非常高端的威脅狩獵工作的話,還是需要從最底層開始。通過最底層打通各種資料源,歸集各種資料源,通過ECS的方式統一各種資料源的定義,并且将裸的安全資訊資料進一步的可視化,把分析的結果提供給安全管理的相關的人員。 安全管理的相關人員用SEIM這個應用和SOC工作流程的其他工具來執行他們安全運維方面的一些日常工作,比如說安全巡檢,威脅狩獵等。這些工作的結果,每日工作内容知識的沉澱,可以彙聚成我們SEIM應用當中的一些檢測規則。我們比較樂觀的一個推測是我們的檢測規則可以和實際企業的IT環境基礎設施更加地比對,我們在這個環境設施當中會有意去收集更多的資料源,進而達到最後的威脅情報內建或使用者分析的效果。

所謂的威脅狩獵其實就是在安全分析之旅當中一個比較高階,最頂層的威脅情報內建和管理的工作。其實檢測規則以及上文所提到的所有内容都還是基于人為對已知攻擊模式的檢測和判斷。除此之外,我們其實也可以利用Elastic Stack當中内置的機器學習功能,對于我們現有的所有的安全資料進行異常檢測,通過它來幫我們探測到那些未知的安全事件的隐患,這些安全事件的隐患通常會存在于一些異常的使用者行為、主機行為、網絡行為或應用行為當中。我們通過人工加機器學習的方式,更加強化了我們安全運維的能力,可以将威脅狩獵的工作做得更好。

假如要做威脅狩獵這樣一個工作的話,我們還是非常推薦使用這個MITRE ATT&CK的這樣一個全方位的攻擊生命周期的架構,因為這個攻擊生命周期架構當中已經涵蓋了兩百多種比較流行的,已知的,黑客所慣用的一些攻擊的政策和手段,而且這些攻擊的模式已經變成一個可用的檢測規則,内置在了我們的Elastic Stack這個技術站當中,也就是說安裝了Elastic Stack這個技術站後就可以進入我們的SEIM應用,在規則管理當中啟用這些兩百多條内置的基于MITRE ATT&CK的檢測規則。你可以基于這些檢查規則去檢測現在企業當中已有的資料,也可以用它來做未來威脅狩獵的規劃的基礎。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

基于Elastic Stack進行威脅狩獵的工作,我們首先會聚焦在多資料源的關聯分析上,将黑客的一些攻擊的模式通過已知的安全情報或者模式比對的方式把它暴露出來,并且通過人工的方式對已有資料元的關聯分析,把它所有發生過的一些安全隐患的事故都暴露出來。我們可以基于機器學習,對于一些人無法分析到的,或者我們未知的一些潛在威脅做一個基于機器學習的判斷。機器學習不僅是可以按需去調用的,而且它也可以把我們的一些安全規則内置到到它探測檢測的過程當中,進而為我們檢測出我們可能不知道的一些潛在風險和威脅。

最後總結一下,Elastic是一家專注于搜尋的公司,今天講到的這個威脅狩獵它的核心能力還是和搜尋能力相關。我們希望達到在非常大量的資料源中做近實時的一個安全狩獵的工作。在Elastic Stack當中已經内置了SEIM應用,這個應用也内置了很多的安全檢測的規則,可以非常友善地幫助我們去規劃和執行企業當中所需要的這種,針對任意IT環境或已有資料的威脅狩獵的工作。Elastic stack這個技術站的話是一個快速發展技術站,它安全管理方面的探測規則也是在社群裡面以開源的方式開放出來的。

Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

阿裡雲Elastic Stack

】100%相容開源ES,獨有9大能力,提供免費 X-pack服務(單節點價值$6000)

相關活動

更多折扣活動,請

通路阿裡雲 Elasticsearch 官網 阿裡雲 Elasticsearch 商業通用版,1核2G ,SSD 20G首月免費 阿裡雲 Logstash 2核4G首月免費 下載下傳白皮書:Elasticsearch 八大經典場景應用
Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵
Elasticsearch生态&技術峰會 | 如何規劃和執行威脅狩獵

繼續閱讀