徐嘉涔,王軼駿,薛 質
(上海交通大學 電子信息與電氣工程學院,上海 200240)
近年來,隨著網絡的普及和信息化水平地不斷提高,越來越多的公司企業把重要信息和機密文件存儲在連接網絡的計算機上。由于計算機性能的不斷提升、操作方式的持續優化以及網絡傳輸速度的大幅提高,公司企業的運作效率得到了進一步地加強,勞動成本大幅度減少。不可否認,穩定、安全的網絡環境是保證公司企業長久發展的基石。然而,正是由于各大商業公司和政府部門內部網絡中存儲著重要信息和核心數據,獲取這類信息帶來的巨大收益使得攻擊和竊取數據的事件層出不窮。更重要的是,由于相關的網絡空間威脅長期潛伏在主機中秘密搜集信息,用戶和管理員難以及時發現,導致攻擊發生時會造生更大的破壞和損失[1]。具體來說,攻擊者通過連接內網與外網的邊緣服務器,找到網絡中存在的安全配置問題或者利用零日漏洞,獲得進入內網的權限。之后通過提權、掃描等手段取得內網的完整信息,進而竊取用戶的敏感數據。在這些網絡空間威脅中,危害最大、波及范圍最廣的一類被定義為高級可持續性威脅(Advanced Persistent Threat,簡稱APT攻擊)[2]。大量研究已經證實,APT攻擊是對國家、政府、企業和個人的網絡權益和信息產生破壞的主要攻擊手段之一[3]。
早在2018年初,印度政府為每個公民提供的12位生物特征身份認證憑證在跨平臺社交媒體WhatsApp上被匿名出售[4]。在2019年10月,俄羅斯發生了一起歷史上最嚴重、泄露信息最多的事件,超過6 000萬條銀行用戶的個人信息在暗網上被公開出售[5]。由此可見,信息泄露與竊取的源頭,也就是這些網絡空間威脅產生的原因,一方面可能是內部不合理的網絡配置和安全設置,另一方面還需要考慮外部的攻擊和威脅手段,這樣才能全方位地發現、處理并解決網絡空間的威脅。
因此,建立網絡空間的威脅狩獵平臺來發現和防御攻擊者的入侵和破壞直接關系到公司企業的發展和未來,具有十分重要的意義,已經成為國內外信息安全研究領域中備受關注的方向。
網絡空間威脅指的是潛在的可以通過利用計算機漏洞產生危害的種種問題[6]。而產生危害的方式包括未授權訪問、數據破壞、機密數據公開、數據修改以及拒絕服務等[7]。由此,可以將網絡空間威脅分為主動型和被動型兩類。被動型威脅是被動地收集系統有意或無意公布或可獲取的信息而不去嘗試修改系統資源,而主動型威脅則是在被動型的基礎上,主動篡改系統控制資源或者影響操作系統的正常運行。
實際上,早在2000年安全研究人員已經確立了網絡空間威脅的標準,如圖1所示[6]。

圖1 網絡空間威脅攻擊流程示意圖
如圖1所示,攻擊主要可以分為三個部分,系統資源(攻擊目標)、安全防御措施以及網絡威脅(攻擊行為)。首先,攻擊者可以通過主動或被動方式獲取攻擊目標的信息。在掌握了足夠信息的基礎上,發現網絡環境中存在的漏洞或者配置問題,選取相應的適用策略實現對目標機器的控制從而達到攻擊者的目的。目前,幾種主流的攻擊鏈模型都有著相似的流程,最先提出攻擊鏈概念的是Lockheed Martin公司,并命名為Lockheed Martin空間攻擊鏈[8]。研究人員通過對攻擊者的戰術進行分析,將網絡空間威脅攻擊鏈分為三大階段,分別是前攻擊階段、攻擊階段和后攻擊階段,如圖2所示。

圖2 Lockheed Martin空間攻擊鏈
其中前攻擊階段是攻擊者收集信息設計攻擊方式的過程,包括偵測、武器化和傳遞三個步驟。攻擊階段是執行攻擊的過程,包括利用和安裝階段。而后攻擊階段包括回連和控制目標的階段。總的來說,通過空間攻擊鏈模型可以較快確定攻擊情況,找到適用的的網絡防御技術,實現一個智能反饋系統從而有效地減少攻擊者實施攻擊成功的概率[8-9]。另外,安全公司FireEye也提出攻擊生命周期[10-11]。、MITRE開發了ATT&CK生命周期[12]。
曾經主流的安全防御軟件是通過等待安全監控程序的警報時再執行緊急防御措施,而這種安全防御系統已經無法適應當前復雜的環境。因此,威脅狩獵防御機制則是在這個背景下被提出的。
網絡空間威脅狩獵指的是主動持續地在網絡中搜索可以繞開安全檢測或產生危害的威脅的過程。目前,一套網絡空間威脅狩獵機制的核心競爭力包含三個方面:威脅攻擊證據的數據質量、獲取和分析數據的工具以及分析數據和使用工具的工作人員的技術[13]。通過使用狩獵成熟度模型(Hunting Maturity Model)來檢驗一個防御機制的優質程度,狩獵成熟度模型定義了五個等級。
起步級:這個階段主要由入侵檢測系統、安全信息和事件管理系統(SIEM)或反病毒軟件等工具偵查惡意行為。該過程主要基于自動報警系統,未實現從系統中收集數據的功能。
簡易級:在初始級的基礎上,會常規性地搜集最近的威脅情報信息來判斷系統是否遭受相關攻擊。
規程級:根據他人或其他更高級的狩獵模型制定的信息分析方法,根據輸入的數據判斷一些簡單的惡意程序的行為或活動。
創新級:該階段威脅狩獵具有制定特有的數據分析過程的能力,并涵蓋了高級有效的技術例如相關數據分析、數據可視化以及機器學習等。
領路級:在創新級的基礎上實現自動化改進現有數據分析方法。這樣可以有效地減少運行相同進程的內存消耗,專注于改進現有的規程和創造新的規程。
狩獵成熟度模型不同階段的最本質區別在于狩獵方式的差異。起步級的狩獵過程中,安全人員只能增加新的安全證書或者惡意文件的特征信息,因此從本質上來說起步級的威脅狩獵不是真正意義上的狩獵。而領路階段的狩獵則是主動嘗試新的方式來找到攻擊者,根據已有信息從不同角度入手分析獲得新的結論[14]。
一次完整的狩獵過程可以進行如下區分。在開始狩獵之前,需要明確網絡結構、運行系統、防御機制可以抵御和偵測的攻擊方式和準確性、潛在的攻擊目標和工具使用的執行戰略。之后則是需要明確相關數據信息的手段和技術。目前來說,攻擊者利用的漏洞、使用的工具和攻擊方式相關的研究是最被重視的部分,大量相關問題被深入研究和詳細記錄,可以在各種最新的APT報告中獲取。而最終的結果是使得每一次狩獵都可以拓展威脅狩獵防御機制的普適性,使得狩獵模式適用于更廣泛更多樣的攻擊[15-16]。目前來看,威脅狩獵主要涉及到的技術可以大致分為取證技術和分析技術[16-17]。
(1)取證技術
由上述內容可知,取證技術是實現威脅狩獵的基礎。優質的指示器(IOC)可以快速定位攻擊者的信息并及時地改進,具體分類如圖3所示。

圖3 取證指示器金字塔模型
其中文件的哈希值是最簡單最基礎的指示器,即通過比對待檢驗的文件哈希值和惡意程序的哈希值來進行判斷。目前仍然有大量殺毒軟件使用哈希值來判斷文件是否是惡意程序。隨著金字塔高度的提高,金字塔模型越上層的信息收集工作越困難,需要對于數據的意義和攻擊的手段有更深入的認識并進行總結概括,使用時的適用范圍也更加廣泛,而對于威脅狩獵來說也越重要。
(2)分析技術
豐富的分析技術可以使得威脅狩獵效果更加明顯,具體可以分為如下幾類。
日志分析技術:由服務或設備中獲取的日志非常重要而且目前已有的安全防御系統并未合理充分地利用。與此同時,威脅狩獵平臺的日志分析能力也直接影響了其抵御和防范攻擊的能力。由于日志是威脅狩獵分析攻擊的重要信息來源之一,因此明確可以獲取日志的程序和出處十分重要。在Unix系統中,日志通常以文本文件的形式保存在/var/log中。Windows日志可以劃分為4類:應用程序日志、安全日志、系統日志和轉發的事件日志。這些日志大部分記錄在%SystemRoot%System32Config下。
網絡分析技術:包括讀取理解捕獲的數據包并判斷網絡流量是否異常的能力和熟悉網絡中的不同設備的特性以及相互如何影響。
攻擊分析技術:清楚攻擊者在各個攻擊階段所使用的技術快速發現問題以及相關行為,了解攻擊工具、惡意軟件、魚叉攻擊以及軟件配置問題可以幫助判斷攻擊者的思路來獲取攻擊行為的證據[18]。
目前,一套完整的威脅狩獵工具并不夠全面,研究人員需要通過利用不同工具的特性來完成整個威脅狩獵的過程,本文將威脅狩獵的工具分為三個類別,分別是準備工具、分析工具和威脅模擬工具。
對于中國共產黨生態文明建設的實踐路徑,學術界從不同角度提出了許多啟發性的思路,但觀點多數大同小異,部分建議空泛化。學者們的觀點歸納起來主要有如下幾點:加強生態文明理念宣傳教育和引導,營造生態文明建設的文化氛圍;推進生態文明體制機制建設,完善制度保障;轉變經濟發展方式,堅持經濟發展和人口、資源、環境相協調,建設資源節約型、環境友好型社會;推動全社會共同參與(企業、非政府組織、社會公眾),加強全球合作。
在準備階段,安全研究人員需要通過還原攻擊現場、保留攻擊證據等方式篩選有價值的數據和信息。目前適用于各種平臺的數據收集及整理工具是Facebook公司研發的Osquery。該工具將操作系統各種相關信息通過類似于SQL的方式匯總成表格方便研究人員快速獲取和比對信息的系統分析工具。其主要優勢是可以像查詢數據庫信息一樣查詢操作系統,以此來查詢錯誤配置、用戶權限甚至文件可讀性審核[19]。此外,其配套用戶管理平臺Doorman支持遠程管理Osquery的節點,使得其支持分布式讀取終端數據,獲取全局信息的功能[20]。
由于絕大多是攻擊者會刪除或毀壞攻擊證據,所以磁盤恢復工具能有效的達到復現攻擊現場和獲取證據的目的。AccessData FTK Imager是一個從硬盤中恢復各種數據的取證工具。該工具通過掃描硬盤驅動器,獲取32位或64位系統的當前硬盤內容和分頁文件信息[21-22]。Bitscout是一款開源的基于Linux的包含一系列分析磁盤映像的工具,其允許用戶創建自定義的磁盤鏡像以及安全研究人員遠程獲取磁盤映像備份,方便研究人員分析。而GetData Forensic Imager是一個基于Windows的可以獲取、轉換、修改取證鏡像文件格式的工具。Magnet ACQUIRE是一個適用于各種主機和移動端操作系統的多類型鏡像恢復工具。該工具擁有一系列可靠快速的數據提取技術,方便用戶快速大量的獲取恢復獲取數據并有詳盡的日志記錄獲取過程。X-Ways Forensics是一個基于Winhex十六進制磁盤編輯器的克隆和鏡像取證工具,主要用于Windows主機和服務器上,相比較其他工具,該工具效率高、速度快硬件要求低且不依賴復雜數據庫,使用較為廣泛[23-24]。
此外,網絡流量的數據也是威脅狩獵的核心,有效地獲取相關信息可以更加準確的進行威脅狩獵。因此,使用網絡流量捕獲工具可以實現對網絡流量的數據的獲取。Stenographer是數據包捕獲程序,旨在快速將所有數據包緩存到磁盤。該工具會在磁盤容量限制時刪除最早的數據,適合在網絡威脅發生之前和期間捕獲流量,而無需明確需要記錄的網絡流量。其缺點是由于處理量大,難以高效處理復雜數據包。網絡可視化工具AOL Moloch是一個開源的大型IPv4數據包捕獲系統,并且可以方便地瀏覽搜索和導出捕獲的數據。該工具按照PCAP的形式存儲所有網絡流量,其優點是該工具強大的靈活性,缺點是配置復雜性較高[25]。
威脅狩獵分析工具根據分析對象的類別,分為日志分析工具、內存分析工具和文件分析工具。
在日志分析工具中,Lorg是一個用于在大文件中提取關鍵日志信息的工具,通過基于簽名的攻擊和機器學習相關技術檢測HTTP流量日志(例如Apache的access_log文件),判斷是否存在可疑請求或異常情況。StreamAlert是由愛彼迎公司開發的基于無服務器的實時日志數據分析框架,能夠使用用戶定義的邏輯提取自定義數據源并觸發警報。其優點是有追蹤溯源日志的能力,便于部署維護且能處理大量數據,自動融合類似警報并建立新的規則[26]。此外,微軟發布的Sysmon是專門為用戶Windows操作系統和服務器設計的,用于記錄詳細日志信息的工具,其中包括進程創建、網絡連接以及文件修改等重要操作[27]。Sigma則是一種方便用戶定義開放簽名格式、描述日志事件的工具,類似于指示器(IOC)和Yara規則用于檢測惡意文件和網絡連接,該工具可以使得研究人員共享、分析日志文件[28-29]。Graylog是一個應用于分布式體系的日志管理系統,可以分析從不同服務器中記錄的日志。該系統的優勢是支持大量數據格式,較好地控制授權和用戶權限,并且能第一時間收到警報。缺點是該系統不能直接讀取信息,需要手動導入,且生成的報告不夠詳細完整。
在三類靜態分析工具中,內存分析工具常用于獲取存儲于內存中攻擊信息。Memoryze是一款用于內存取證的命令行程序,在計算機運行過程中通過分析內存鏡像,幫助用戶檢測惡意事件[30]。Windows SCOPE是用于分析易失性內存的取證和逆向工具,提供分析Windows內核,驅動程序,DLL以及虛擬和物理內存的功能。該工具還可以定期記錄內存快照,跟蹤系統內存的即時變化。Belkasoft Live RAM Capturer相比較之前介紹的工具更為輕量級,在受到主動反調試保護時仍然可以獲取存儲器的數據,提供不同版本減少空間占有。除此之外,還有例如Linux Memory Grabber、Magnet RAM Capture、OS Forensics等內存獲取和分析工具或腳本。
而在文件分析工具方面,目前絕大部分分析工具采用特征比對的方法進行威脅狩獵。采用IOC或Yara規則進行網絡威脅識別的工具包括Fenrir、IOC Finder、rastrea2r、Fidelis Threat Scanner、LOKI等。另外一部分工具則采用自主收集計算機數據信息來進行分析。bulk_extractor是一個通過掃描數字證據文件提取例如電子郵件地址、信用卡號等信息的工具。其優勢是可以處理壓縮文件及部分損壞的數據,支持多線程分析文件內容構成單詞表來進行數據展示[31]。此外,還有開放式計算機取證體系結構框架(Open Computer Forensics Architecture)基于Linux開發的后端平臺并使用PostgreSQL進行數據存儲。該框架集成了多個開源文件取證工具,包括The Sleuth Kit、Photorec等。其中The Sleuth Kit是一款用于Unix和Windows的文件分析工具,具有磁盤鏡像分析、文件系統深度分析等功能,而Photorec則是幫助用戶回復數據的工具。RegRipper是用Perl編寫的開源工具,用于從注冊表中提取或解析信息(鍵,值,數據)并將其分析呈現[32]。另外,專用于Windows的信息記錄及文件分析工具還有AChoir、Crowd Response、IREC等。商業公司方面,Belkasoft公司開發的工具集Belkasoft Evidence Center可以通過分析硬件、硬件鏡像、導出內存、分析IOS、黑莓和安卓機器的備份來提取各種電子證據[33-34]。
由于網絡威脅并不是時常發生,而威脅狩獵的改善和提高需要大量的訓練和總結,因此為了更有效地測試威脅狩獵平臺的性能,安全研究人員開發公布了一系列的網絡空間威脅模擬工具。APTSimulator是執行Windows批處理腳本工具,它通過使用一組工具和輸出文件模擬系統信息被泄露的情況,是一個小型且高度便攜的檢測測試系統。AutoTTP是一個網絡空間威脅攻擊戰術生成程序,通過手動重新運行復雜序列以進行回歸測試,產品評估,為研究人員生成攻擊數據。此外,專門針對Windows企業環境的網絡威脅仿真工具還包括Caldera、Cimsweep、BT3 等。
但是當前現狀的弊端也顯而易見,大部分方法和工具只對網絡空間威脅的一種技術或一個部分有較好的效果,而各種方法和工具不能相互兼容,這就導致了在整合到一起時無法起到真正的效果。在這樣的環境下,各個研究機構創立自己對辦法建立威脅狩獵平臺,本節將選取代表性的組織進行分析總結。
明確行為:分析過程由明確攻擊者的行為開始,找到共通行為、即時可用的數據以及可以指示惡意行為的證據。
獲取數據:在分析之前,找到足夠合適的數據非常重要。這就需要在系統上預安裝適當的數據收集工具,例如Windows事件日志、Sysmon日志[27]等。
建立分析:通過硬軟件平臺的支持,建立分析方法,例如建立安全信息和事件管理中心。分析分為四個部分:行為,這方面指攻擊者常用的行為但并不違反安全規則不會報警;情況意識,在不同情況下不同的信息組合可以帶來新的信息,例如單純的用戶登錄記錄并不能指出攻擊者的存在,但是配合其他指示器就能產生不同的效果;異常,分析并非攻擊行為但是異于一般行為的時間;取證,獲取直接指示攻擊者行為的證據。
開發攻擊仿真事件:與傳統滲透測試注重系統漏洞不同,攻擊仿真者通過模擬確定的攻擊行為,配合補充的攻擊技術完成整個攻擊的流程,核心目標是獲取整個網絡環境的控制權。
模擬威脅:在真實情況中根據上一步建立的攻擊模型相對應地執行。在這個過程中研究人員可以檢驗威脅狩獵的效果并進行改進。
調查攻擊:在攻擊完成以后,研究人員通過威脅狩獵獲得的數據和證據來倒推攻擊的流程,找到缺陷加以改進。
評估效果:根據上兩步的結果,綜合整個實驗過程評估威脅狩獵的效果,篩選數據并改進方法。
除了ATT&CK分析方法以外,MITRE公開分享了在網絡空間威脅中存在的攻擊手段,并總結各個國際APT組織擅長使用的戰術戰略,收集了相關的惡意程序樣本,讓安全研究人員可能更好的分享使用并進行威脅狩獵。
結合目前成熟的網絡空間威脅模型,日本計算機應急響應小組合作中心JPCERT/CC的研究人員根據攻擊者使用工具和命令的階段順序進行深入調查,命令的使用頻率進行研究。針對性的重點研究范圍是攻擊者在橫向傳播時Windows操作系統自帶的命令行,特別是用戶不常用但是攻擊者需要使用的命令,區分這些命令的使用頻率[35]。研究人員提出可以通過應用鎖(Applocker)對系統所使用的命令指令進行限制,雖然不能阻止指令執行,但是記錄的日志文件可以用于之后的取證[36]。研究人員圍繞日志記錄審計規則和日志記錄工具,例如Sysmon等[27],來建立針對Windows操作系統的威脅狩獵平臺。
此外,該研究人員還基于Sysmon工具開發了Sysmon Search工具。Sysmon Search是一個基于Elastic Stack的日志分析系統,通過將每條記錄設置成一個節點可以直觀的找到相互之間的關聯。例如,如果明確了惡意程序的哈希值或者命令控制服務器,通過該工具能快速找到可能被感染相同惡意程序的其他主機,也可以通過指示器或者結構化威脅信息表達式(STIX)進行特殊查詢。該工具也支持即時的查詢,并對每臺主機的網絡交互、注冊表和進程進行統計分析,找到可疑事件。
Sqrrl于2012年成立專注于網絡空間安全和威脅狩獵的公司。該公司建立了四步狩獵方法,建立假設、利用工具和技術調查、挖掘新的模式和戰術以及自動化分析過程。
建立假設:狩獵由一個關于攻擊行為的假設或合理的猜想開始。例如發現有用戶異常地從外網訪問內網核心資源,則去分析該用戶賬號是否被攻擊。更高級的做法是根據用戶的一系列活動和指令,對應計算這些指令相應的危險程度結合網絡威脅攻擊模型作為狩獵的開始。
工具和技術調查:使用例如相關數據分析以及可視化圖形等技術調查分析假設。另一方面,通過對原始數據進行重組,實現構建新的惡意攻擊模式和攻擊流程以此明確攻擊者的思路。
挖掘模式和戰術:攻擊者的模式和戰術是最準確和重要的攻擊信息。把第二步總結的戰術技術和方法積累完善,根據信息的相關性,找到和惡意程序或三方服務有關的用戶信息。
自動化分析過程:將已完成的狩獵過程由人工轉向自動,并加入機器學習的方法使得威脅狩獵能適應更多的情況和環境[37]。
Sqrrl公司的威脅狩獵平臺通過對原始數據進行打散和重組,引入可視化圖形來對復雜網絡環境進行深入理解,通過大型數據分析實現即時查詢實體行為,并且有自動化檢測異常和攻擊戰術的功能。在商業公司中處于頂尖水平。
本節列舉了三種不同的威脅狩獵平臺以及對應的狩獵方式。其中MITRE的基于ATT&CK的方法較為全面,適用范圍廣,并且對已有的攻擊組織使用的技術進行深入分析,較好地掌握了不同APT組織的戰術技術和方法。該威脅狩獵平臺的優點是集合了包括Windows,Mac以及Linux等多個平臺的攻擊方式和技術,缺點是主要的狩獵過程在攻擊結束后,并不能即時狩獵降低攻擊損失。而日本的計算機應急響應小組合作中心的研究人員著重研究Windows內網環境的命令和執行工具,并收集攻擊者的操作習慣通過對照以此對攻擊者進行多層次的刻畫和描述,可以較好組合和惡意行為相關的信息,但是只適用于Windows系統,目前只適用于部分企業內部網絡環境,普適性有所欠缺。第三個是Sqrrl公司開發的威脅狩獵平臺,在收集攻擊者的數據和戰術的基礎上,結合可視化圖形、數據相關性分析以及機器學習等,目前來說是效果最好的威脅狩獵平臺之一。但由于商業軟件技術封閉,若沒有足夠的交流合作和資金支持,未來發展前景并不清晰。除了上述三者外,還有如Splunk、HELK等開源的網絡威脅狩獵平臺,這類工具根據自身需求進行拓展和開發,同樣形成初步的體系架構。
對比這些研究成果和技術的優缺點能夠使得威脅狩獵的開發者有較全面的認識,促進相互之間優勢互補,提升威脅防范和取證的全面性。
在全球化大背景下的今天,網絡的利用和普及越來越全面,人們也更加重視網絡活動的安全性、對于威脅的防范能力。因此,對攻擊者組織和技術的全面了解,建立一個威脅狩獵主動防御平臺顯得非常重要。本文首先對網絡空間威脅進行簡要介紹和分析,列舉了目前主流的攻擊流程模型;再闡述了威脅狩獵產生的原因和意義,明確威脅狩獵的定位;然后,概述現有的威脅狩獵所涉及的技術并歸納分類,并論證了分析方法的理論正確性;之后,概括總結現有的各種威脅狩獵的框架,比較各個框架的優缺點。
目前來看,威脅狩獵的建立需要對攻擊者全方位的了解,結合各種防御取證技術積累信息和數據。在擁有足夠數據的情況下,利用機器學習等算法,實現自動化分析達到高成熟度狩獵過程。如何挖掘更多的可利用的數據,如何多元地利用已有的數據進行分析,還有如何提高狩獵的準確性和即時性有待進一步研究。