1. 程式人生 > 其它 >帶你讀頂會論文丨基於溯源圖的APT攻擊檢測

帶你讀頂會論文丨基於溯源圖的APT攻擊檢測

摘要:本次分享主要是作者對APT攻擊部分頂會論文閱讀的階段性總結,將從四個方面開展。

本文分享自華為雲社群《[論文閱讀] (10)基於溯源圖的APT攻擊檢測安全頂會總結》,作者:eastmount 。

一.背景知識

1.什麼是APT攻擊?

APT攻擊(Advanced Persistent Threat,高階持續性威脅) 是利用先進的攻擊手段對特定目標進行長期持續性網路攻擊的攻擊形式。APT攻擊也稱為定向威脅攻擊,指某組織對特定物件展開的持續有效的攻擊活動。這種攻擊活動具有極強的隱蔽性和針對性,通常會運用受感染的各種介質、供應鏈和社會工程學等多種手段實施先進的、持久的且有效的威脅和攻擊。

2.APT攻擊的特點

上圖的表格展示了APT攻擊和普通攻擊的區別。可以簡單地將APT攻擊特點總結為:

  • 隱蔽性
    0-day漏洞、needle in a haystack(通常不到0.01%)、無檔案攻擊、加密流量
  • 持續性
    low-and-slow(潛伏時間長)、攻擊時間跨度大
  • 針對性
    Stuxnet、SolarWinds
  • 模組化(自適應)
    Stuxnet、WannaCry

3.APT攻擊檢測存在的困難

下圖展示了2016到2020年,亞太地區AP攻擊事件的停留時間,可以看到其潛伏期很長,想要發現一起APT攻擊極為困難。同時,傳統APT攻擊檢測存在一定的缺陷,包括:

  • 無法捕獲長期執行的系統行為
  • 0-day漏洞導致攻擊艱難檢測
  • 實時攻擊檢測、真實場景檢測效果不佳
  • 容易遭受投毒攻擊
    注意,這裡的投毒攻擊是指因APT攻擊持續時間長,導致ML模型學習攻擊特徵時,會將惡意行為逐漸訓練學習為正常行為

接著補充下兩個輔助APT攻擊的經典知識框架,它們分別是 kill-chain Model 和 ATT&CK Model。它們既能幫助我們理解、檢測和溯源APT攻擊流程,又在論文中作了相應的貢獻,現已被廣泛用於APT攻擊檢測領域研究,後面會詳細介紹。

  • kill-chain Model

洛克希德·馬丁公司開發的“網路殺傷鏈”模型描述了網路攻擊的各階段流程,具體包括七個階段,即目標偵查、武器構建、載荷投遞、漏洞利用、安裝植入、命令與控制、任務執行。

  • ATT&CK Model

ATT&CK(Adversarial Tactics, Techniques, and Common Knowledge )是一個攻擊行為知識庫和模型,主要應用於評估攻防能力覆蓋、APT情報分析、威脅狩獵及攻擊模擬等領域。網址:https://attack.mitre.org/

最後展示了常見APT組織。

二.APT攻擊檢測研究

該部分從APT攻擊檢測相關研究、基於異常檢測的方法和基於溯源圖的方法三個方面介紹,重點以基於溯源圖的方法為主。

1.APT攻擊檢測相關研究

APT攻擊檢測研究方法的分類很多,作者這裡僅將其分成了兩大塊(不一定合適),主要和作者閱讀的論文相關,也歡迎大家交流分類方法。即:

  • Anomaly-based detectors for APTs
    – 主機日誌(審計日誌)
    – 系統呼叫
    – 網路流量 | 警報資訊
    – 惡意行為
  • Provenance graph-based detectors for APTs
    – 溯源圖
    – +引入外部知識
    – +融合ATT&CK框架
    – 因果關係圖+NLP

我們先看看圖中下半部分基於 溯源圖(Provenance Graph) 的APT檢測方法。主要包括:

  • 伊利諾伊大學芝加哥分校團隊
    首先,USENIX’17提出的 SLEUTH,將溯源圖應用於APT攻擊檢測領域。然後,該團隊緊接著在2019年CCS會議上提出 Poirot,在S&P’19上提出 Holmes,該方法融合了Kill Chain和ATT&CK框架。此外,在2021年EurS&P提出 Extrator,並引入外部知識。
  • 伊利諾伊大學香檳分校團隊
    另一個研究溯源圖的團隊來自伊利諾伊大學香檳分校,他們分別在NDSS’20提出了 UNICORN 和 ProvDetector,同時在2020年的S&P上提出 RapSheet,它融合了ATT&CK框架。
  • 普渡大學團隊
    第三個團隊是來自普渡大學,當然各團隊之間有很多合作團隊。他們的核心成果包括NDSS’13提出的 BEEP,NDSS’16提出的 ProTracer 和USENIX’21提出的 ATLAS

整個基於溯源圖的APT檢測方法是在Baseline的基礎上不斷優化,包括溯源圖+引入外部知識、溯源圖+融合ATT&CK框架、因果關係圖+NLP等。後面的論文和框架圖作者會更詳細的介紹,從而梳理出溯源圖方法的研究路線。另外,基於異常檢測的方法圖中也列舉了部分方法。

2.基於異常檢測的方法

基於異常檢測的方法這裡簡單例舉了利用C&C域名、數學模型、惡意流量和惡意行為實現APT攻擊檢測的框架圖,如下圖所示。

上述傳統APT攻擊檢測方法主要存在的缺陷包括:

  • APT攻擊時間跨度長,缺乏方法或工具有效將資訊進行關聯,還原攻擊鏈
  • 實時檢測困難,較難高效地從百萬條日誌中篩選資料,並檢測出最可能的攻擊行為
  • 較難讓分析人員通過資料有效地進行推理,從而檢測未知攻擊
  • 缺乏對真實場景的APT攻擊進行檢測,並且IDS和SIEM會產生大量的資訊,傳統方法識別真實的攻擊更加困難
  • 無法有效解決投毒攻擊,即由於APT攻擊時間跨度較長,深度學習會將惡意特徵訓練為正常特徵

結合上述原因,產生了改進方法,即:

  • 基於溯源圖的APT攻擊檢測(Provenance graph-based detector for APTs)

接下來開始詳細介紹基於溯源圖的APT攻擊檢測方法。

3.基於溯源圖的方法

SLEUTH [USENIX’17]

第一篇論文是USENIX’17的 SLEUTH

Md Nahid Hossain, et al. SLEUTH: Real-time Attack Scenario Reconstruction from COTS Audit Data. USENIX’17

這篇文章的主要貢獻如下:

  • 首次利用溯源圖重構APT攻擊,即利用因果關係跟蹤和溯源圖構造模型
  • 提出一種可以在企業主機上實時重構攻擊場景的方法和系統
  • 開發一種平臺無關、基於主存的審計日誌資料依賴圖抽象

整個SLEUTH的框架圖如下圖所示,核心內容如下:

  • (1) 輸入的是Linux、Windows和FreeBSD平臺的審計日誌資訊
  • (2) 構建並標記依賴關係圖,標籤將提供重要的上下文資訊,對應論文中良性可信、良性和未知三種類型
  • (3) 實現基於標籤和策略的攻擊檢測,並定製的策略,根據審計日誌的祕密性分為公開、隱私、敏感和祕密,通過引入標籤和策略實現對依賴關係圖賦予不同的權重
  • (4) 經過依賴圖反覆構建後,會到達警報計算階段,通過定義規則來匹配更高的威脅攻擊,生成對應的分數,基於標籤的分析後會生成並還原場景圖(Scenario Graph)

同時,依賴關係圖中的節點和關係表示如下:

  • 節點:表示subjects(程序)和objects(檔案、sockets)
  • 關係:表示審計事件(讀、寫、執行、連線等操作)

接著介紹它的警報(Alarms)計算策略,以下四個會引發警報,包括:

  • 不受信任的程式碼執行:高等級標籤去執行低等級時觸發
  • 被低等級標籤修改:修改檔案許可權時產生
  • 祕密檔案洩露:不可信物件執行寫的操作
  • 執行不可信的資料:比如執行command等指令操作

下圖是攻擊場景的重構,它是對FireFox瀏覽器漏洞的場景還原。

  • 審計資料還原fireFox後門攻擊場景
    – Backdoor insertion
    – Clean-up

整個場景還原如下:它的入口點是在firefox.exe位置,首先它會去接收IP地址,然後fork下載器(dropper),接著它會發送請求到443埠;接下來會多次呼叫cmd執行命令,如whoami、netstat、hostname等,並將資料寫入到指定路徑的thumbs.db檔案中;然後執行git.exe實現資料過濾操作;最後執行burnout.bat批處理檔案清除場景的痕跡。

整個實驗採用 DARPA TC 資料集實驗,它有8個攻擊場景重構及攻擊階段對映,該論文對每個場景進行了圖還原,涉及階段如下圖所示:

實驗統計了APT攻擊場景每個階段的實體數量:關鍵檔案、網路連線、執行程式等,如下圖所示。

其他實驗效果如下,建議讀者閱讀原文。

最後,簡單總結SLEUTH與傳統方法的區別:

  • Sleuth方法
    – Sleuth實時檢測、執行效率更高
    – Sleuth基於標籤的檢測方法更精確(規則+策略+警報)
  • 傳統方法,如Bactracker [SOSP’03]
    – 無法實時且效率低
    – Bactracker依賴外部工具生成警報,無法剪枝和溯源

補充:DARPA TC是經典的APT攻擊檢測資料集

美國國防高階研究計劃局(Defense Advanced Research Projects Agency, DARPA)運營了多個重量級的網路空間安全研究專案,召集了諸多美國頂級研究機構參與,可謂是集中力量辦大事。其中,透明計算(Transparent Computing, TC)專案正是期望通過基於終端資料的採集與分析增強終端上系統細粒度行為的可視能力,以實現企業級網路空間APT檢測、取證等關鍵任務。

現代作業系統的功能邏輯越來越複雜,計算系統的低透明度成為精細化記錄、分析、預測系統級別行為的重要限制,而封閉的系統黑盒為具有高隱蔽性、高對抗性的APT攻擊者提供了絕佳的潛伏場所。為了開啟系統行為黑盒,實現在較低開銷下提供系統各層級軟體模組行為可見性,DAPRA組織了Transparent Computing專案。該專案的目標技術及系統需實現:

  • 採集、儲存系統元件(輸入、軟體模組、程序等)的溯源資料;
  • 動態追蹤網路系統元件的互動與因果依賴關係;
  • 整合資料依賴,測繪端到端的系統行為;
  • 從取證和實時檢測的角度,實現對系統行為的推理。

基於以上能力的實現,TC專案旨在完成細粒度系統級行為的關聯,實現在大規模行為中識別異常與惡意意圖,發現潛在的APT或其他高階威脅,並提供完整的溯源分析與相關損失評估。同時,TC專案能夠實現網路推理能力與企業規模網路監控和管控系統的整合,以增強關鍵節點的安全策略有效性。

從2016年10月到2019年5月,DARPA TC專案共組織了5次較大規模的紅藍對抗交戰演習(Engagement)。在每次對抗中,TC總共劃分為5個技術域(Technical Areas, TAs),其時間跨度超過20天。TA5.1實現了包括Carbanak、Uroburos、DustySky、OceanLotus、njRAT、HawkEye、DeputyDog等多種惡意軟體在攻防平臺中的投放。DARPA TC的攻擊模擬展現了參與團隊在APT技戰術的深厚積累。

Poirot [CCS’19]

第二篇論文是來自CCS’19的 Poirot

Sadegh M, et al. Poirot: Aligning Attack Behavior with Kernel Audit Records for Cyber Threat Hunting. CCS’19

這篇文章的主要貢獻如下:

  • 利用網路威脅情報(CTI)關聯性檢測APT攻擊
  • 使用審計日誌,將威脅檢測建模為一個非精確的圖模式匹配(Graph Pattern Matching, GPM)問題
    – 在大圖中搜索與某個特定圖相匹配的子圖
  • 相似性度量,攻擊行為與核心審計日誌對齊
    – 核心審計日誌構建溯源圖(provenance graph)
    – CTI關聯構建查詢圖(query graph)

整個Poirot的框架圖如下圖所示,核心內容如下:

  • (1) 該圖右邊部分是上篇論文的基本流程,即從三個作業系統(BSD、Linux、Windows)審計日誌資訊中構建 溯源圖(Provenance Graph),然後還原攻擊場景
  • (2) 左邊引入了外部IOC關係資訊,提取並構建攻擊行為的查詢圖(Query Graph),這裡引入了圖對齊或圖匹配
  • (3) 最後通過對齊和閾值計算演算法生成對應的分數,實現最終的分析取證並生成警報
    – 圖中頂點表示實體,邊表示資訊流和因果關係

接下來補充查詢圖(Query Graph)構建的過程。相當於給你一篇APT分析報告,它會自動生成對應的查詢圖,如下圖所示,A執行B的exe程式,並寫入C,然後寫入D登錄檔,再想E傳送請求。

  • 橢圓-程序
  • 菱形-套接字
  • 矩形-檔案
  • 五邊形-登錄檔

對應的匹配過程如下圖所示,Gq表示查詢圖,Gp表示溯源圖。個人理解,DARPA TC資料會生成溯源圖,然後和查詢圖匹配出來兩個對應的結果子圖,如最右邊所示。從而更好地發現那部分子圖是在實施APT攻擊。

該方法還包括兩種型別的對齊:node alignment和graph alignment。

由於作者能力有限且理解不夠,一些細節未能很好地表達,還請見諒。建議大家去閱讀原文,這些公式及演算法非常重要,當然我也會繼續努力提升自己的閱讀能力,多向這些大佬學習併力爭撰寫好的論文,共勉。

實驗結果如下圖所示,比如不同惡意軟體(如海蓮花OcenLotus)對應的查詢圖以及對其過程。

其他的實驗結果如下,比如選擇閾值的對比結果,這也將決定對齊演算法的分數。

實驗結果表明:

  • CTI相關性可用於威脅獵殺,並且具有較好的魯棒性和可靠性
  • Poirot方法能有效從溯源圖中實現APT組織查詢圖(攻擊鏈)匹配及對齊

本文方法與傳統方法對比如下:

  • 不同於基於符號執行的方法,Poirot不依賴於符號表達式,而是尋找系統的相關性和資訊流
  • 傳統方法的網路威脅情報相關性被完全忽視,未被用於威脅檢測
  • 本文方法引入圖匹配演算法,這與之前的方法不同

HOLMES [S&P’19]

第三篇論文是S&P’19經典的 HOLMES

Sadegh M. Milajerdi, et al. HOLMES: Real-time APT Detection through Correlation of Suspicious Information Flows. S&P’19

  • 伊利諾伊大學芝加哥分校、密歇根大學迪爾伯恩分校、石溪大學

這篇文章的主要貢獻如下:

  • 構建一種可以實時檢測APT攻擊的系統,有效利用攻擊活動可疑資訊流的相關性
  • 將APT活動資訊對映到殺傷鏈,設計高階場景圖(high-level scenario graph,HSG)實現低層次(日誌、警報)資訊到高層次的對映(語義鴻溝),從而使得HOLMES能有檢測良性或攻擊場景
  • 系統和實驗完整性:虛假依賴關係剪枝、降噪處理(緊密性)、HSG排序

其框架圖如下所示,前面基本類似,但右端增加了一個高階場景圖(high-level scenario graph,HSG),從而實現低層次(日誌、警報)資訊到高層次的對映,解決論文中提到的語義鴻溝。該方法能夠實時檢測系統,產生APT報警;並能實時產生高級別的攻擊圖來描述攻擊者的行為,協助防禦者進行實時地安全響應。

HSG對應如下圖所示,傳統比如是審計日誌資訊,直接到上層的APT攻擊階段(殺傷鏈)會存在語義損失,即:低級別審計資料與攻擊目標意圖與高階殺傷鏈(kill-chain)視角之間存在巨大的語義差距。因此引入TTPs和HSG,通過ATT&CK框架對映的中間層來提升實驗效果。

APT攻擊檢測存在的難點可以概括如下三點,該方法能有效解決這些困難。

  • 攻擊隱蔽(Stealthy Attacks)
  • 大海撈針(Needle in a haystack)
  • 實時檢測(Real-time detection)

下面簡單介紹一個執行時APT攻擊溯源圖(Provenance Graph)示例。如下圖所示,可以看到攻擊行為是從初始入侵到C&C通訊,再到內部偵查、資料讀取、許可權提升,以及內部偵查、清除痕跡、竊取資訊等。這其實就是一個溯源圖,通過資料之間的因果關係生成這樣的圖,比如C&C通訊、提權、檔案操作等進行關聯。而上面是正常操作行為。

  • 橢圓、菱形、 矩形、五邊形、七邊形、圓柱

實驗結果表明,HOLMES能有效區分良性場景和攻擊場景。下圖是攻擊場景所涉及流程(七維對應殺傷鏈)及閾值分數,能有效識別APT攻擊。

下圖展示了APT攻擊和良性事件的有效區分。

傳統方法存在的缺點如下:

  • 基於統計特徵的方法對時間跨度長、執行緩慢攻擊的檢測不佳
  • 基於系統呼叫日誌的方法對實時攻擊檢測效果不佳
  • 對比方法:ProTracer[NDSS’16]、MPI[USENIX’17]、SLEUTH [USENIX’17]、PrioTracker[NDSS’18]

本文HOLMES的優點如下:

  • 攻擊粒度更細
  • 從溯源圖到攻擊鏈的對映引入了HSG解決語義鴻溝問題
  • 能有效檢測長期潛伏實時的APT攻擊
  • 通過引入降噪演算法解決HSG緊密性問題

正是綜合各種優點,論文的故事敘述非常棒,並結合之前的成果,所以他們能發到S&P,非常值得我學習。

Extrator [EurS&P’21]

第四篇論文是EurS&P’21的 Extrator

Kiavash Satvat, et al. EXTRACTOR: Extracting Attack Behavior from Threat Reports. EurS&P’21

  • 伊利諾伊大學芝加哥分校

由於CTI報告海量且非結構化,安全人員很難從文字中提取出真正有效的資訊,本文提出了融合自然語言處理的Extrator方法。其主要貢獻如下:

  • 提出一個自動化工具Extrator,用於自動從網路威脅情報(CTI)報告中提取出攻擊行為資訊
  • 利用自然語言處理(NLP)從CTI報告中精確地提取攻擊行為
  • 使用語義角色標註(SRL)進行語義分析,理解攻擊行為關係,並將非結構化文字轉化為溯源圖

其框架圖如下圖所示,包括:

  • 標準化
    拆分、同義詞、主動語態
  • 消歧
    主語省略句消除或補齊、帶刺消除、同義詞消除
  • 文字歸納
    ​去除語句冗餘、去掉單詞冗餘
  • 溯源圖構建
    語義角色標註、溯源圖構建

實體識別和實體消歧示例如下圖所示:

實驗表明Extrator可以有效提取CTI報告的攻擊資訊,並以溯源圖形式展現。同時,生成的溯源圖與人工生成的溯源圖能夠進行匹配,驗證了方法的有效性,並且溯源圖可以進一步作為威脅情報檢測系統的輸入。下圖展示了不同攻擊場景的精確率、召回率和F1值。

方法對比:

  • 與iACE等方法不同,本文專注於提取攻擊行為,並以溯源圖的形式捕獲系統級因果關係

本文仍然存在一些缺陷。

  • 由於NLP複雜性,提取精度會損失,某些未知實體無法有效識別
  • 受到CTI報告作者的風格影響,需要專家協作
  • 審計日誌提取的資訊限制了細粒度攻擊建模

簡單總結

寫到這裡,作者簡單總結下伊利諾伊大學芝加哥分校的五個工作,可以很好地看到他們逐年的優化和改進。分別對應:SLEUTH[USENIX’17]、NODOZE[NDSS’19]、Poirot[CCS’19]、HOLMES[S&P’19]、Extrator[EurS&P’21]。

  • SLEUTH[USENIX’17]
    引入溯源圖檢測APT攻擊
  • NODOZE[NDSS’19]
    增加了威脅檢測和異構圖構建
  • Poirot[CCS’19]
    融合IOC資訊,增加了查詢圖和溯源圖的對齊演算法
  • HOLMES[S&P’19]
    融合HSG和ATT&CK框架解決語義損失問題,增加去噪剪枝等操作
  • Extrator[EurS&P’21]
    結合NLP方法(消歧)和外部APT分析報告抽取知識,並構建溯源圖

歡迎大家繼續補充作者寫得的不足,因為閱讀有限,也可能漏掉一些重要論文和方法。這裡簡單補充幾個作者分享不足之處和疑惑。

  • 問題1:實驗怎麼評價它的精確率、召回率和F1值呢?是算APT攻擊正確識別數量,還是實體識別數量,還是溯源圖中子圖匹配數量呢?
  • 問題2:如何去鑑別一個APT攻擊,這點也非常重要。是將程序、檔案、通訊等不同物件標註成不同類別,構建相互之間的關聯呢?
  • 問題3:如何生成溯源圖,並且程式碼細節如何實現呢?
  • 問題4:論文中演算法核心實現過程需要秀璋進一步精讀和理解,有機會復現文中的論文。
  • 問題5:DARPA TC資料集是否開源,我們能否繼續優化方法。

PS:下面的論文由於閱讀還存在一些疑惑,作者就進行簡單介紹,還請讀者見諒。

HINTI [RAID’20]

第五篇論文是RAID’20的 HINTI

Jun Zhao, et al. Cyber Threat Intelligence Modeling Based on Heterogeneous Graph Convolutional Network. RAID’20

  • 北京航天航空大學、密西根州立大學

這篇文章的主要貢獻如下:

  • 提出一種基於異構圖卷積網路的威脅情報模型,建模IOC之間的依賴關係
  • 從非結構化威脅描述中自動提取網路威脅物件,多粒度注意力機制學習特徵的重要性
  • 攻擊偏好建模:將具有相同偏好的攻擊聚集(DBSCAN演算法)

與現有的CTI框架不同,HINTI旨在實現一個CTI計算框架,它不僅可以有效提取IOC,而且還可以建模和量化它們之間的關係。下表展示了17種元路徑關係。

HINTI能有效挖掘隱藏在IOCs之間相互依賴關係和安全知識,並應用於威脅模型,其核心四個步驟如下。

  • (1) 首先,通過B-I-O序列標註方法對安全相關帖子進行標註,用於構建IOC提取模型。
  • (2) 然後將標記的訓練樣本輸入我們提出的神經網路,以訓練提出的IOC提取模型。
  • (3) HINTI利用句法依賴性解析器(e.g.,主-謂-賓,定語從句等)提取IOC之間的關聯關係,每個關係都表示為三元組。
  • (4) 最後,HINTI集成了基於異構圖卷積網路的CTI計算框架,以有效量化IOC之間的關係並進行知識發現。

本文提取的13種主要的IOC效能如表3所示。總的來說,我們的IOC提取方法在精確率、召回率、平均F1值都表現出了優異的效能。然而,我們觀察到在識別軟體和惡意軟體時的效能下降,這是因為大多數軟體和惡意軟體是由隨機字串命名,如md5。

圖8顯示了不同型別元路徑下的前3個聚類結果,其中元路徑 AVDPDTVTAT(P17) 在緊湊和分離良好的叢集中效能最好,這表明它比其他元路徑在描述攻擊偏好方面具有更豐富的語義關係。

與之前的方法對比,本文也存在一些缺陷:

  • 未在真實攻擊場景實現
  • 未實現對未知攻擊的預測(知識推理)
  • 未實現執行時檢測及長期潛伏的APT攻擊檢測
  • 沒有和主流的知識框架融合

UNICORN [NDSS’20]

第六篇論文是NDSS’20的 UNICORN

Xueyuan Han, et al. Unicorn: Runtime Provenance-Based Detector for Advanced Persistent Threats. NDSS’20

  • 哈佛大學、布里斯托大學、伊利諾伊大學香檳分校、不列顛哥倫比亞大學

這篇文章的主要貢獻如下:

  • 針對APT特性設計一種基於溯源圖(Provenance Graph)的執行時APT檢測方法(直方圖和概要圖)
  • UNICORN能在沒有先驗攻擊知識的前提下實現APT攻擊檢測,且準確率高和誤報率低
  • 第一個對本地完整系統進行執行分析的APT入侵檢測系統,概要圖能對抗長時間潛伏的投毒攻擊

其框架如下圖所示,包括四個核心步驟:

  • ①構建溯源圖
  • ②建立執行時直方圖
  • ③計算概要圖
  • ④聚類

直方圖生成演算法如下,建議讀者精讀原文。

實驗結果如下圖所示:

同時包括一些詳細的效能對比。

UNICORN與之前的方法對比結果如下:

  • Holmes[S&P’19]和Poirot[CCS’19]:需要先驗專家知識(先決條件-結果模式)
  • 基於系統呼叫和日誌事件的檢測方法:由於資料過於密集,難以對長時間的攻擊行為進行建模
  • 由於APT潛伏時間長且持久化,攻擊行為會緩慢改變傳統模型以逃避檢測系統(投毒攻擊)

UNICORN的侷限性和改進如下:

  • 需要定期重新訓練
  • 正常行為改變可能會產生誤報
  • 未考慮異質性行為
  • 更大的實驗評估(IDS資料集)

ProvDetector NDSS’20

第七篇論文是NDSS’20的 ProvDetector

Qi Wang, et al. You Are What You Do: Hunting Stealthy Malware via Data Provenance Analysis. NDSS’20

  • 伊利諾伊大學香檳分校、NEC實驗室、德克薩斯州大學達拉斯分校

首先,我們先介紹下離地攻擊。

  • 只使用預安裝的軟體並且攻擊者沒有在系統上安裝額外的二進位制可執行檔案。帶有巨集、VB指令碼、Powershell指令碼或者使用系統命令(如netsh命令)的文件屬於離地攻擊的範圍。

由於現有反病毒軟體和方法很難檢測到該類攻擊,本文提出一種ProvDetector方法,它需要依賴核心級的溯源監控來捕獲目標程式的動態行為。

這篇文章的主要貢獻如下:

  • 提出一種基於溯源圖的系統,用於檢測偽裝技術的隱蔽惡意軟體(離地攻擊 | 無檔案攻擊)
  • 提出一種新的路徑選擇演算法來識別溯源圖中潛在的惡意部分(惡意行為與底層作業系統互動)
  • 設計一個新的神經嵌入和機器學習管道,自動為每個程式建立一個輪廓並識別異常程序

ProvDetector的核心ProvDetector分為四部分:圖構建、特徵提取、嵌入和異常檢測。部署監控代理,按照定義收集系統資料放入資料庫。定期掃描資料庫檢查是否有新新增的程序被劫持。對於每個程序,先構建起起源圖(圖構建)。然後從源點圖中選擇路徑子集(特徵提取)並將路徑轉換為數值向量(嵌入)使用一個新穎的檢測器來獲得嵌入向量的預測並報告最終決定(異常檢測)。

實驗結果如下圖所示:

你可能會疑惑為什麼分享這篇文章呢?一方面由於它也用到了溯源圖概念,另一方面同樣來自於伊利諾伊大學香檳分校團隊(同UNICORN),並且將溯源圖應用於其他領域,即檢測偽裝技術的隱蔽惡意軟體。這也是我們探索論文idea的一個思路,可能其他領域或方法也會給我們帶來靈感喔。當然,目前作者科研能力太弱,需要不斷提升,學習嘛,一輩子的事情。加油!

RapSheet [S&P’20]

第八篇論文是S&P’20的 RapSheet

Wajih Ul Hassan, et al. Tactical Provenance Analysis for Endpoint Detection and Response Systems. S&P’20

  • 伊利諾伊大學香檳分校、NortonLifeLock

本文首先指出已有的EDR(端點檢測和響應)工具存在的三個主要弊端:

  • (1) EDR工具會產生大量的虛假警報,從而為分析人員積壓了調查任務;
  • (2) 確定這些威脅警報的準確性需要大量的低階系統日誌,人工任務繁瑣;
  • (3) 由於日誌佔用巨大資源,系統日誌通常在進行調查之前就被刪除。

因此,本文提出了戰術源圖(Tactical Provenance Graphs, TPGs)的概念,個人感覺TTPs+溯源圖,並研發了RapSheet系統,直接推理EDR系統生成的威脅警報之間因果關係。其主要貢獻如下:

  • 首次將溯源圖引入商業EDR(Endpoint Detection and Response)
  • 提出戰術溯源圖(Tactical Provenance Graphs, TPGs)表示EDR生成威脅警報間的因果依賴關係
  • 引入一種威脅評分方法:根據TPGs中存在的單個威脅警報之間的時間順序來評估風險

本文是用商業賽門鐵克EDR軟體進行真實檢測和實驗。其實驗結果表明:

  • 提升商業EDR效果,檢測未知攻擊行為
  • 減少系統日誌降低系統儲存開銷
  • 提高賽門鐵克EDR的威脅檢測精確度
  • 保留警報之間的因果關聯性

RapSheet與傳統方法對比:

  • Holmes商業EDR部署複雜(保留100%日誌)
  • holmes16條TTP匹配規則 vs RapSheet增加至67條
  • 實踐中EDR工具會限制日誌緩衝區
  • NoDoze防止投毒攻擊假設(正常行為資料庫)
  • 未跟蹤ALPC訊息(Windows),會斷開溯源圖
  • 利用DTaP高效分散式儲存提高查詢響應時間

ATLAS [USENIX’21]

最後一篇是2021年USENIX的論文,作者僅作了簡單的閱讀。即 ATLAS。該文章來自普度大學團隊,針對APT研究成果還包括NDSS’13的BEEP、NDSS’16的ProTracer等。此外,CCS21也發現了新的溯源圖研究成果,說明基於溯源圖的研究仍然是一個值得探索的方向。

Abdulellah Alsaheel, et al. ATLAS: A Sequence-based Learning Approach for Attack Investigation. USENIX’21

  • 普度大學

本文提出一種基於序列的攻擊調查學習方法ATLAS。其主要觀察結果是:無論所利用的漏洞和執行的有效載荷如何,不同的攻擊可能共享相似的抽象攻擊策略。ATLAS是利用因果關係分析、自然語言處理和機器學習技術的新穎組合來構建基於序列的模型,該模型從因果圖建立攻擊和非攻擊行為的關鍵模式。在推斷時間,給定威脅警報事件,確定因果圖中的攻擊症狀節點。然後,ATLAS構造一組與攻擊症狀節點關聯的候選序列,使用基於序列的模型來識別順序中有助於攻擊的節點,並將識別出的攻擊節點統一起來構建攻擊記錄。

本文的主要貢獻如下:

  • 利用審計日誌生成端到端攻擊故事(end-to-end attack story)的框架
  • 構建一個基於序列的模型:因果關係圖(causal graph)+自然語言處理+深度學習
  • 真實APT攻擊事件(10個)進行實驗,並能恢復攻擊關鍵步驟及還原攻擊故事
  • 研究發現不同的攻擊可能共享相似的抽象攻擊策略

個人感覺生成Attack Story還原攻擊故事是本文的一大亮點。

實驗結果如下圖所示,建議閱讀原文。

ATLAS 主要涉及支援審計日誌溯源追蹤的三個子主題,包括:溯源圖的因果關係分析、基於異常的分析以及 ML 技術在攻擊調查中的應用。當然也存在一定的缺陷,即:

  • 當前工作僅限制於Windows平臺
  • 無法檢測到使用類似正常事件序列的隱藏攻擊行為,比如模擬攻擊
  • 模型效能很大程度上取決於所收集的訓練日誌條目的質量

三.方法對比

寫到這裡,上述方法已經介紹完畢,接下來我們對所有文章進行簡單的研究趨勢梳理和方法對比研究。

1.基於溯源圖的方法研究趨勢分析

研究趨勢如下,還原各位老師和讀者指正及補充。

2.方法優缺點對比

方法對比主要從溯源圖、知識框架、先驗知識和優缺點進行比較,得出如下表所示結果。個人感覺,溯源圖、是否引入知識框架(ATT&CK)、是否有先驗知識、是否融入NLP(消歧 | 對齊 | 去噪合真實場景應用是該方向研究的重要進步補充。

3.資料集對比

資料集的對比如下圖所示,主要以DARPA TC、公開威脅情報文字和真實場景攻擊資料為主。

四.總結

基於溯源圖的APT攻擊檢測是APT檢測領域中一個非常重要的分支,由於APT攻擊的隱蔽性、威脅性、實時性、針對性,傳統的方法艱難檢測,因此提出了溯源圖的方法。當前的研究趨勢主要表現在:

  • 基於溯源圖和知識圖譜的APT攻擊檢測
  • 結合APT攻擊階段特點,融合ATT&CK知識框架進行中間層特徵表示,解決語義損失
  • 全系統真實場景的細粒度APT攻擊檢測
  • 引入外部威脅情報知識(NLP消歧對齊)來輔助APT檢測
  • 無先驗專家知識
  • 對未知APT攻擊實現預測

 

點選關注,第一時間瞭解華為雲新鮮技術~