劉嘉 謝冰 楊傳旭 萬洪強 鄭妍 楊晶
摘 ? 要:高級持續(xù)威脅(APT)對網絡安全構成嚴重威脅,其獨特的高度不可預測性、深度隱蔽性和嚴重危害性使得傳統網絡監(jiān)控技術在大規(guī)模復雜網絡流量背景下面臨前所未有的挑戰(zhàn)。針對APT檢測的迫切需求,依托大數據分析和云計算技術的快速發(fā)展,基于機器學習理論,對網絡應用語義豐富的行為特征模式進行描述,通過網絡協議反向分析和數據流處理技術的有機結合,建立了一套支持建立入侵容忍網絡生態(tài)環(huán)境的新的APT自學習檢測框架。
關鍵字:高級持續(xù)性威脅;網絡安全;數據流處理;入侵檢測;網絡行為模式
中圖分類號:TM769 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A
Research on Advanced Continuous Threat Detection Technology Based
on Network Self-learning Behaviors
LIU Jia?覮,XIE Bing,YANG Chuan-xu,WAN Hong-qiang,ZHENG Yan,YANG Jing
(Yuxi Power Supply Bureau,Yunnan Power Gird Co.,Ltd. ,Yuxi,Yunnan ?653100,China)
Abstract: A serious threat is posed by advanced persistent threat(APT) ?to network security. Its unique high unpredictability,deep hiding and serious harm make traditional network monitoring technologies face unprecedented challenges in the context of large-scale complex network traffic. The urgent need for APT detection is addressed in this paper,and relies on the rapid development of big data analysis and cloud computing technology. Based on the theory of machine learning,it describes the behavior pattern of semantic richness in network applications,through the reverse analysis of network protocols and the technology of data flow processing. In combination,a new APT self-learning detection framework was established to support the establishment of an intrusion-tolerant network ecosystem.
Keywords: advanced persistent threats;network security;data stream processing;intrusion detection;network behavior patterns
由于強大和資金雄厚的組織(特別是政府)的參與,網絡攻擊現在變得越來越復雜。自2009年以來發(fā)生一系列重大安全事件,如Stuxnet攻擊核電站事件、RSA SecureID黑客攻擊、RAT病毒、DuQu和Flame等,表明高級持續(xù)性威脅(APTs)是當今信息安全領域面臨的最快速增長的網絡安全威脅之一[1]。APT是一種新一代具有高度復雜性的網絡威脅,通常以一個非常精確的目標或瞄準一個特定的系統、實體,并在長時間內執(zhí)行持續(xù)有效的攻擊[2-4]。
與傳統的網絡威脅相比,APT具有三個突出特點:獨特的高度不可預測性、深度隱蔽性和嚴重危害性,然而傳統成熟的基于網絡流量模式和已知攻擊特征的成熟網絡監(jiān)控技術很難找到一個APT。根據各種報道,Flame在被發(fā)現之前一直潛伏了兩年。同時,隨著移動互聯網消費者和網絡應用的迅速增長,網絡協議日益復雜多樣,網絡空間充斥著龐大而復雜的網絡流量。因此,APT攻擊難以用傳統的網絡防御機制來檢測。
文獻[5]提出一種虛擬執(zhí)行分析檢測。這種APT檢測方法是典型的代表有沙箱檢測技術,是通過在虛擬環(huán)境上執(zhí)行檢測,基于運行行為來判定攻擊。由于APT 的長期性,沙箱檢測技術短期運行效果不顯著,長期運行必然耗時、耗資源。且虛擬環(huán)境與真實環(huán)境存在差異,需要進行差異性分析。文獻[6]基于流量和深度內容對APT攻擊行為機械檢測。這種檢測技術包括全流量審計技術和內容深度分析檢測技術。由于APT 攻擊持續(xù)的時間很長,需要對長時間內的數據流量和內容進行深入、細致的分析。全流量審計和深度內容檢測目前面臨的最大問題是數據處理量非常龐大,因此檢測效率常常難以滿足業(yè)務需求。
基于網絡行為模式自學習而提出了網絡基因的概念,通過這一概念描述語義豐富的網絡應用行為特征模型。通過對網絡行為和網絡基因的匹配和學習,可以確定網絡實體行為的身份相關性和與已知網絡應用程序的源相似性。因此,本文通過網絡行為模式的匹配發(fā)現深層次的異常網絡行為,為識別和追蹤APT攻擊提供依據。基于上述理論,本文提出了一種基于網絡基因的檢測框架來預防和識別未知的APT攻擊。
1 ? 高級持續(xù)威脅(APT)
1.1 ? 定義
目前對APT沒有一個統一的標準化定義。美國國家標準與技術研究所(NIST)將APT描述為“擁有先進水平的專業(yè)知識和重要資源的對手,可以利用多種攻擊載體(例如,網絡、物理和欺騙)創(chuàng)造機會實現其目標”[7]?!案呒墶北砻髟撏{來自熟練的攻擊者組織良好,且資金充足,具有充分的資源來收集情報,并能充分利用網絡入侵技術和傳統的情報技術?!俺志眯浴敝腹粽咄ㄟ^監(jiān)視被破壞的組織網絡來維持長期隱蔽存在的良好生存能力,以最終達到攻擊的目的。
盡管APT曾經是軍事和防務專家領域的專業(yè)術語,但一系列復雜且效果突出的網絡攻擊(如Stuxnet、Duqu、Flam等)已經將“APT”推向了輿論前沿,因此近年來網絡 APT攻擊的監(jiān)測和分析技術已成為網絡安全學術界乃至整個行業(yè)的焦點。
與網絡系統相比,有許多自然系統要復雜得多,但即便如此,它們也是非常強健、有彈性和有效的。許多有機體用來抵御入侵者的生物免疫系統在分布式、復雜和不斷變化的環(huán)境中發(fā)揮著極其出色的作用,即使受到連續(xù)不斷的攻擊。正如美國政府在2011年的聯邦網絡安全研究和發(fā)展計劃的戰(zhàn)略計劃中提到的,生物免疫系統展示了大量有趣的機制,這些機制可以激發(fā)許多新方法來對抗網絡攻擊和保護網絡系統[8]。
從網絡監(jiān)控的角度來看,需要更多地關注APT威脅,并通過持續(xù)監(jiān)控,精確分析和實時響應來構建全方位的網絡監(jiān)控系統[9]??紤]到APTs獨特的高度不可預測性,應加強對網絡異常行為檢測技術的研究。
1.2 ? 異常檢測
對APT攻擊的檢測來源于捕獲的病毒樣本的實際分析,如Stuxnet和Flame。 在實施階段,APT攻擊與傳統網絡攻擊之間沒有本質區(qū)別,因此APT的概念模型在網絡監(jiān)控中幾乎沒有幫助。此外,即使存在APT的特定行為模型,由于APT攻擊的獨特高度不可預測性和對特定APT實例的分析,其檢測新攻擊的實用性可能是值得懷疑的,因為對特定APT實例的分析得出結論認為,每次攻擊對于每個目標都是獨特且高度自定義的。因此,APT的網絡監(jiān)控應該被用于基于異常的入侵檢測。
網絡中基于異常的入侵檢測指的是在網絡流量中發(fā)現不符合預期正常行為的異常模式的問題。 然而,由于APT網絡行為與超低速攻擊流量不可見,現有的基于流量模式的異常檢測方法難以區(qū)分隱藏的APT流量與大量正常背景流量。基于協議分析的異常檢測是一個更有潛力的方向[10-12]。
文獻[13]引入了一種方法,使用決策樹和協議分析來進行有效的入侵檢測。該方法為每個應用層協議構建一個自適應決策樹。異常檢測將數據記錄分為兩類:良性和異常。異常情況包括多種類型,如DOS(拒絕服務),掃描和僵尸網絡。因此,多類分類器是一種自然選擇,但與任何分類器一樣,它們需要昂貴的手標數據集,并且也無法識別未知攻擊。文獻[14]介紹NIDS擴展的設計和實現以執(zhí)行動態(tài)應用層協議分析。對于每個連接,系統首先識別正在使用的潛在協議,然后激活合適的分析器來驗證決策并提取更高級別的語義。
需要注意的是,對于未發(fā)布的協議,私有協議或加密協議,則必須事先通過反向工程方法獲得協議規(guī)范信息。
1.3 ? 大數據流計算
由于攻擊者越來越能夠規(guī)避傳統的安全機制,傳統防御性邊界的瓦解需要安全專家采用大數據驅動的安全模式,依靠大數據計算和分析,這是更具風險意識,相關性和靈活性的。批量計算和流計算是大數據計算的兩種重要形式。由于其在大數據環(huán)境中的實時處理,波動性,突發(fā)性,不規(guī)則性和無窮大等特點,流計算是網絡安全應用中更合適的選擇?,F在已經有了各種各樣的開源或商業(yè)大數據流處理引擎(如Storm、S4),它們可以滿足安全分析平臺的要求,如可擴展性、一致性、低延遲、高可靠性和容錯性。
由于網絡實體在許多方面模仿有機系統的行為,已有研究將基因模型應用于數據模型的匹配和自學習,并提出“一個檢測網絡事件的有機模型” [15]。這是一種用于映射網絡實體參與到文本串中的行為序列并使用改進的生物信息學算法分析這些字符串的新穎方法。這種生物信息學方法可以快速計算以前未見過的網絡實體在具有良好特征的實體方面的相似性度量,并用于對具有大量后臺流量的網絡事件進行分類和比較分析。
在大數據分析和云計算的驅動下,大數據流技術和網絡安全實時數據分析實施平臺得到迅速發(fā)展,為細化網絡行為監(jiān)控提供了堅實的基礎。但與此同時,其在APT網絡監(jiān)測中的應用研究剛剛起步,缺乏統一有效的計算模型。
2 ? 網絡基因
APT檢測需要支持更豐富的行為語義,這可以通過基于協議分析的異常檢測來提供。 APT檢測還需要分析網絡協議行為以發(fā)現異常,協議反向工程有助于解決自動生成協議行為正常模式的效率問題。 由于實時處理能力對于APT檢測非常重要,因此將APT檢測與數據流處理技術相結合是一個合適的發(fā)展方向。
APT檢測是一個非常全面和系統化的新興研究重點。本文在前人關于網絡威脅行為分析,網絡入侵檢測,軟件逆向分析和協議逆向工程等研究的基礎上,利用云計算和數據流處理的最新研究成果,提出了一種新的系統理論和計算模型,計算大量網絡應用程序的語義豐富的網絡行為模式。然后以網絡基因為紐帶,將網絡行為深入分析與網絡數據流實時處理有機結合起來,可以為檢測未知的APT提供重要支持。
為此,本文引入網絡基因這一概念來描述網絡行為。網絡基因通過網絡協議反向分析提取的數字段,以及它們的組合序列,它們表示網絡應用的語義豐富的網絡行為模式。
根據APT網絡行為表達的高度復雜性,網絡應用程序的行為模式由低至高的消息行為基因、協議行為基因和操作行為基因三個層次基因組成,我們將其全部稱為應用程序的網絡基因組。消息行為基因表征協議消息級別的行為模式,包括消息格式,消息特征字符串及其類型限制。協議行為基因表征協議狀態(tài)機級別的行為模式,例如協議消息序列。 操作行為基因的特點是應用程序級別的行為模式,它反映了密鑰協議,文件傳輸和加密通道建立等高級行為意圖。在基因組中不同水平的基因之間存在關聯關系,正如在某種意義上,較高水平的基因是由較低水平基因形成的關聯。
多個應用的網絡基因組構成了龐大的網絡基因庫,并且在庫中的不同基因組之間存在共享的相關性和變異相關性。共享相關性是指不同基因組中較高水平的基因共享相同的相關較低水平基因。變異相關性意味著該基因是另一個相同水平的基因的表征,并且其行為模式有一些變化。這兩個相互性關系,尤其是后者,表達了不同基因之間的譜系演變。信息行為基因的變異可能意味著隱藏在消息內部的信息,而協議或操作行為基因的變異可能暗示欺騙性異常行為。網絡基因的譜系演化對深入分析APT網絡行為具有重要意義。
如圖1所示,網絡基因表達和網絡基因庫示意圖鑒定了重用和共享基因以及變異基因。協議行為基因GP2由具有相同協議行為模式的操作行為基因GO2和GO3共享。與協議行為基因GP1相關的消息行為協議GM2是GM4的變體,這可能意味著存在某種隱藏行為或攻擊行為的網絡安全威脅。
我們也可以從形式化的角度描述網絡基因和基因組。網絡基因庫D由網絡基因組和相互之間的關系組成:
D =
其中G代表基因組集合,S代表共享相關集合,V代表變異相關集合。
該組基因組G = {G1,G2,G3,...,Gn},其中Gi代表基因組。Gi =
3 ? 檢測框架
3.1 ? 基于網絡基因的APT檢測
如圖2所示,以網絡基因為鏈接,APT網絡監(jiān)測模型分為兩個階段:網絡基因的自動分析和提取,以及基于網絡基因實時計算的異常網絡行為的深入分析。
首先,通過構建動態(tài)二進制程序分析環(huán)境,可以通過處理多種網絡應用程序提取網絡基因,構建網絡基因庫。來自大量網絡應用的網絡基因庫(可以被確定為良性、惡性或中性類型)為網絡流量監(jiān)測和分析提供統一的分析模板和客觀依據。網絡應用包括已知的應用軟件(具有特定的功能和不同的意圖)以及未知的應用軟件。對于已知的應用程序,如果它們是著名的商業(yè)軟件或開源軟件,則應該認定它們是良性的;或者如果他們被捕獲惡意軟件樣本,則應將其標識為惡意。對于未知的應用程序,在基因分析和提取之前應將其確定為中性,并且在自動分析之后,它們的性質可以被初步確定。
利用網絡基因庫,可以構建基于數據流處理平臺的網絡監(jiān)控環(huán)境。通過部署具有網絡基因實時計算能力的深度行為異常檢測系統,可以發(fā)現APT攻擊者或惡意軟件利用墊腳石攻擊特定目標服務器的隱身流量,同時分析由該網絡產生的正常流量 大量的應用程序。這是一個典型的白名單異常檢測方法。在網絡基因的基礎上,還可以應用黑白名單混合檢測。通過對網絡流量的全面檢查和分析,在深度行為模式匹配后,我們可以發(fā)現,驗證和預測各種異常網絡行為。
基于網絡基因的網絡監(jiān)測模型可以為構建具有異常檢測和入侵容忍能力的網絡生態(tài)環(huán)境提供強有力的安全保障。
3.2 ? 網絡基因庫
在APT檢測框架中,網絡基因庫是實現檢測的關鍵數據。網絡基因的自動生成和數據庫構建能夠滿足APT網絡監(jiān)測中自動建立語義豐富的網絡行為模式的需求。如圖3所示,網絡基因的構建包括兩個過程:網絡協議行為的反向分析和網絡基因的自動提取。
網絡協議行為的反向分析采用動態(tài)二進制分析和主動學習。通過對網絡消息格式的反向分析,網絡協議模型的反向推理和提取操作序列,我們可以提取消息格式,協議模型和操作序列,然后將它們放入相應的數據庫中。
污點分析是網絡消息格式反向解析的關鍵技術。在指令級、數據以字節(jié)為單位進行移動和計算,多字節(jié)數據段的處理與指令流的邏輯結構有關。 因此,可以使用指令級污點分析技術來精確確定消息域的邊界,并構建消息域層次結構。在功能層面,接口的輸入輸出參數是消息域的處理,它們反映了消息域的功能。因此,梳理系統調用,典型的API和相關的語義知識庫,可以使用功能級污點分析來推斷消息域中的語義。
協議模型描述了網絡協議的整個運行過程,是網絡行為的抽象描述,以圖同構算法為基礎的同構子圖挖掘和前綴樹狀態(tài)機規(guī)范為關鍵技術。在信息交互圖中,同構子圖描述了協議的相同會話狀態(tài),并可用于合并協議狀態(tài)。前綴樹狀態(tài)機是一種冗余協議模型,通過指定機器我們可以得到協議系統的協議模型。
操作序列可以反映出高水平的網絡應用程序的行為和功能的意圖,是網絡應用程序在網絡對象(例如,某個文件)上執(zhí)行操作時生成的操作序列(例如,發(fā)送或接收操作),也是APT深度網絡行為的重要表征。通過構建語義知識庫,采用動態(tài)的污染跟蹤方法,可以找到語義知識的操作,以及內存和網絡之間對象的傳輸軌跡,從而獲得足夠的網絡行為模式知識。
在對多個網絡應用樣本進行網絡協議行為反向分析后,建立了消息格式數據庫、協議模型數據庫和操作序列數據庫,從而可以在網絡基因自動提取過程中獲得行為基因片段。如圖3所示,我們可以進行消息相關性提取,從消息格式數據庫中獲取消息行為基因,通過協議相關性提取從協議模型數據庫中獲取協議行為基因,并從操作序列中獲取操作行為基因數據庫通過操作相關提取。
由于已經獲得了各種行為基因片段,我們可以對它們進行綜合關聯和變異,比較和匹配基因片段,最終構建網絡基因組和關鍵網絡基因庫。
3.3 ? 基于數據流計算的實時網絡基因處理
Storm是一個開源的分布式實時計算系統,可以輕松可靠地處理無限數據流,為實時處理Hadoop進行批處理所做的工作提供便利。它使用自定義創(chuàng)建的“噴嘴”和“螺栓”來定義信息源和操作,以允許流式數據的分布式處理。針對APT檢測應急響應的特殊要求,提出了基于Storm的網絡基因實時計算模型。該模型如圖4所示,旨在實現一個高性能的網絡基因計算系統,能夠處理無限的網絡數據流和大規(guī)模的網絡基因庫。