天天看點

幹貨分享 | 加密流量檢測之多元特征

作者:中睿天下

随着網絡攻防博弈的不斷更新,越來越多的APT攻擊組織利用隐蔽隧道技術隐藏攻擊特征,隐蔽隧道是繞過防火牆端口屏蔽的一種通信方式,可以繞過 WAF、IPS、IDS等網絡監控防護裝置入侵軍工、國防等核心機關内網,對軍工、國防等機關形成新威脅、新挑戰。

另外據Gartner統計,2020年有超過70%的惡意網絡攻擊使用加密流量技術,加密攻擊流量已逐漸成為APT攻擊組織攻擊的重要手段與環節。惡意加密流量是一種使用加密技術如https加密等,對攻擊指令、惡意攻擊軟體、惡意程式等加密後進行傳輸的資料流。識别隐蔽隧道惡意流量涉及大量資料處理和分析的複雜任務,給網絡安全營運帶來了巨大的挑戰,其主要原因有三:

1

加密後的流量特征與明文的流量特征相比變化較大,無法通過傳統攻擊載荷比對的方式進行檢測識别;

2

惡意軟體利用流量僞裝技術(如流量變形、鍊路填充),将惡意流量特征轉換為普通的正常流量特征,增加識别難度;

3

不同加密協定的加密方式和封裝格式之間有着很大的差異,需要針對性考慮檢測判别政策。是以加密攻擊流量的檢測是業界面臨的重點及難點。

目前基于傳統的規則比對及算法的防護攔截措施無法及時發現并阻斷隐蔽隧道惡意流量的攻擊行為,可能對軍工、國防機關财産、聲譽、資料造成嚴重損失,識别隐蔽隧道惡意流量已成為業界的重點難點課題。

是以首先需要采用基于機器學習以及人工智能等技術手段,通過對流量特征、會話特征、時空特征、隐蔽通信特征等多元特征融合分析提取,根據不同的業務場景,分别建構選擇面向隐蔽攻擊流量的智能監測模型,進而實作對已知或未知木馬隐蔽隧道通信的全面監測能力。

其次随着時間的遷移、攻擊樣本資料分布變化以及攻擊者行為模式的變化等因素影響,會導緻新的攻擊流量發生某種程度的偏差或移位,最終會影響模型檢測的精準率,是以需要系統需要具備對概念漂移的全面檢測分析能力,能夠對訓練模型以及模型參數進行适時地調整或重構,實作模型的及時疊代與更新。

最後,需要通過智能模型檢測的結果以及對APT攻擊鍊的特征分析,完成對APT攻擊組織攻擊行為判定、組織聚類和畫像歸因等,并且基于APT攻擊鍊提取的特征也可回報于智能監測模型訓練,進而能夠形成一個安全監測的閉環。

機器學習領域,特征工程一直占據着核心位置,特征工程的品質高低決定着機器學習的效果。在網絡安全領域,我們在利用機器學習對流量進行檢測、分析時,遇到比較大的挑戰,就在于特征的選取,如何通過繁多的多元特征體系,提取特定APT木馬通信的次元特征,進而納入到我們的模型訓練,提煉出比較精準的檢測模型。

通過分析多個APT樣本的通信流量,我們将多元特征工程通過如下特征次元展開:

01

時空特征

時空特征即協定無關特征。“時” 指的是和時間相關的一組特征集,例如,流時長、包時間間隔等。“空” 指的是和包大小相關的一組特征集,例如,包大小、包數等。

02

背景特征

背景特征是指從背景流量中提取并選擇的一類特征,如 DNS、HTTP、ICMP等背景流量特征,其中,DNS 背景流量特征主要反映在域名特征,HTTP 背景流量特征主要反映在 HTTP 協定頭内容特征,ICMP背景流量主要反映在PING流量。

03

握手特征

握手特征、主要是和 SSL 協定相關的一組特征集,刻畫用戶端和服務端在握手階段的一系列流量特征。例如,協定版本、支援的擴充項等。

04

證書特征

證書特征主要是和 x509 協定相關的一組特征集,刻畫雙方使用的數字證書的一系列特征。例如,證書鍊長度、使用者正常度等。

以DNS隧道攻擊流量為例

該攻擊類型流量呈現時空特征狀态為:平均包長比較固定,連接配接時間長、頻率高;正常的DNS協定資料包較小,連接配接狀态多為中低頻。在對該類型DNS隐蔽隧道惡意加密流量進行模組化時,共使用正常加密DNS流量、隐蔽隧道惡意加密DNS流量請求與響應封包20萬對,其中正常DNS流量資料和惡意DNS流量各10萬對,包含内部采集的DNS流量資料和網際網路公開DNS流量資料,同時,為保證惡意流量資料樣本的多樣性,惡意流量資料涵蓋網絡攻擊時常用的iodine DNS、DNS Shell、DNS2TCP、DNSCAT等多個DNS隧道工具的流量資料。

在模組化過程中,對采集到的正常及惡意流量資料進行資料清洗和規範化處理,分析正常DNS流量與惡意DNS流量差異,從協定、載荷方向入手,共提取出DNS請求類型、請求資料分布等多元特征。以DNS請求的源IP為威脅源來識别DNS流量資料是否為惡意流量,其中80%的資料用來訓練模型,20%的資料作為驗證集評估模型效果。使用卷積神經網絡算法訓練DNS隧道流量識别模型。

具體工作流程如下:

卷積神經網絡主要由卷積層、池化層和全連接配接層構成。相較于普通的神經網絡,卷積神經網絡最大的特點就是增加了卷積運算。卷積運算主要包括提取特征和映射特征兩部分。在提取特征中,前一層提取的局部特征就是後一層的輸入,同時在提取某個局部特征時,也能确定該特征與其它特征的位置關系。在特征映射中,多個按矩形進行排列的的神經元節點組 成一個個特征平面,同一特征平面上的神經元節點權值共享。權值共享能夠減少網絡層之間的連接配接,并且降低過拟合的風險,減少了參數的數量并簡化了模型。

通過深層神經網絡自動學習網絡流量的時空特征,實作高效的網絡流量異常檢測。其基本工作流程為:在資料包層次,系統将每個資料包轉換為二維圖像格式,然後利用卷積神經網絡學習資料包内部的空間特征。在網絡流層次,系統利用循環神經網絡進一步學習資料包廂的時序特征。最終,在綜合利用兩種深層神經網絡的特征學習能力的基礎上,得到準确刻畫網絡流量行為的網絡流時空特征,并最終用于隐蔽隧道通信檢測。

預處理: 預處理将原始網絡流量轉換為卷積神經網絡需要的二維圖像格式。判斷流量是否具有異常行為的基本單元是網絡流,是以原始網絡流量需要首先切分為一組網絡流。每一個網絡流包含一組雙方通信的資料包。

交叉驗證: k折交叉驗證技術用于評估和選擇性能最好的模型。訓練集被随機均分為10個子集,每次訓練和驗證時選擇1個子集作為驗證集。

時序特征學習:長短時記憶循環神經網絡用于學習流量空間特征之間的時序特征。

SoftMax分類器: SoftMax分類器用于對自動學習到的時空特征進行隐蔽隧道通信檢測。針對具體每個網絡流。

具體流程如下:

幹貨分享 | 加密流量檢測之多元特征

DNS隐蔽隧道通信流量的評價名額如下:

模型算法 準确率 召回率
卷積神經網絡 91.54% 100%
幹貨分享 | 加密流量檢測之多元特征

繼續閱讀