靳仁杰,王 宇,韓偉杰
?
基于流量模板檢測網絡異常流量
靳仁杰1,王 宇2,韓偉杰2
(1. 裝備學院研究生管理大隊,北京懷柔 101416;2. 裝備學院信息裝備系,北京懷柔 101416)
當前的網絡異常流量檢測技術側重于采用機器學習和統計學方法,兩者適用于通用網絡環境。本文針對受控網絡環境通信特征,提出了一種基于流量模板的網絡異常流量檢測方法,該方法實時抓取分析網絡流量,提取網絡流量頭部特征和行為特征,基于網絡八元組信息建立流量模板,通過匹配流量模板檢測網絡異常流量。實驗結果表明該方法在受控網絡環境下能準確檢測出網絡異常流量。
受控網絡;異常流量;特征提?。痪W絡八元組;流量模板
如今網絡應用已經滲透到人們生活的方方面面,網絡數量和規模都成倍增長。眾多的網絡應用在帶來便利的同時,也引起了很多問題,這其中由惡意攻擊、設備故障或者人為因素引起的網絡異常流量[1]及其檢測方法,逐漸成為安全人士研究的熱點問題。
網絡異常流量檢測方法的分類有很多種,按檢測建模方法可以分為基于誤用檢測和基于異常檢測兩類[2];按數據采集方式可以分為抽樣檢測和非抽樣檢測兩類;按檢測節點數量可以分為分布式異常檢測和單節點異常檢測兩類[3];按數據處理方式可以分為初級流量特征統計的異常檢測和挖掘數據特征規律的異常檢測兩類[4]。
基于誤用的異常檢測主要是提取已知異常流量的流量特征和行為特征,建立規則庫。在檢測階段,實時抓取網絡流量,統計計算其流量特征和行為特征,與建立好的規則庫進行匹配[5]。此方法的優點是檢測精度高、實時性好,由于基于已知異常流量的統計信息建立規則庫,此方法的缺點是不能識別新的異常行為?;诋惓5臋z測方法主要是通過統計學習方法建立正常網絡流量的行為輪廓[6],在檢測階段實時抓取網絡流量并統計計算當前輪廓,最后計算兩者的偏離程度是否超過閾值來檢測異常流量。此方法的優點是能識別出新的異常行為,缺點是流量輪廓刻畫的時間復雜性高,對檢測實時性有一定影響,另外由于對正常流量的輪廓刻畫不能完全準確,容易造成低檢測精度。
為了受控網絡環境不同于一般的網絡,有幾個顯著的特點:一是要先調試后使用;二是使用嚴格,入網主機的IP地址明確,應用層協議和端口號固定,設備或終端產生的流速限定。三是網絡穩定性要求高。
(1)嚴格的入網主機規范。入網主機的IP地址,不同設備的功能劃分和網絡拓撲結構都有詳細記錄信息且可知,同時對入網主機的準入有嚴格限制。網絡中的各類設備入網信息固定,不會隨意對IP地址,設備號和所屬部門等關鍵信息進行更改,網絡拓撲結構穩定,不同網段內的主機數量和對應關系,接入的上一層交換機或路由器端口等網絡結構信息更新頻率低,且更新后能第一時間獲取改動的具體內容。
(2)穩定的網絡會話規范。由于受控網絡網環境下,網絡間通信應用的類型有限、不同終端設備擔負的任務單一,因此可以對所有合法的網絡會話內容提取其網絡流量的頭部特征和行為特征,形成網絡會話模板。同時,在不同任務中,針對當前任務的網絡會話規范相對穩定,其產生的網絡流量變化幅度小。
(3)可控的網絡流量規模。對受控網絡網環境下產生的網絡流量來說,其不同于通用網絡環境下的量級。入網主機的數量,不同網絡應用的開放數量和端口數,連接不同服務器的主機數和不同主機上運行的應用程序數量,應用程序間通信所占帶寬和傳輸的數據量相對于通用網絡環境來說規模較小且可控,因此將其記錄存儲到規則庫中所占的系統開銷和所占的存儲空間不會影響到網絡正常使用。
基于以上受控網絡網環境所特有的幾個通信特征,可以統計量化網絡流量數據集中的網絡流量的頭部特征和行為特征,獲取網絡會話七元組(或三元組)并建立流量白名單(又叫任務模板),基于HASH桶存儲結構存儲到模板庫中。通過嚴格的模式匹配檢測網絡異常(或違規)流量。
2.1 相關定義
定義1:流量模板是一個集合,它的單個元素是由網絡八元組信息組成的向量,數學的形式化表示為:

其中:各維度具體含義如下:
可以依據收集統計的網絡八元組信息來對網絡流量進行規則匹配,并對違規(或異常)通信發出報警。
針對受控網絡環境下,設備測試網絡連接狀態,會產生大量的PING會話,極易被誤報為異常流量,造成錯誤報警。對PING會話單獨建立基于網絡三元組信息的流量模板,數學的形式化表示為:

其中,各維度具體含義如下:
定義2:流量模板集合中每一條記錄代表一條規則,集合中不存在兩條規則被同一條記錄覆蓋,數學的形式化表示為:

2.2 HASH桶存儲結構
模式匹配是識別未知事物類別的一種方法,主要用于實現機器自動識別。它的原理是選擇已知的對象作為模板,與待測樣本進行度量計算,通過得出的度量值來識別目標,即看與那個模板的度量值最小,就作為自己的類別。模板中常使用的度量對象有單個模板和模板類中心兩種。
由于模式匹配的核心是建立知識規則庫,庫所包含的信息量越大,匹配精準度越高,隨之也要占用更大的存儲空間和消耗更長的匹配查找時間。為了解決上述問題,研究者提出了很多方法來極高模板匹配的時空效率,目前使用比較多的有直方圖方法[7],小波方法[8]和HASH函數方法[9],而在HASH函數方法中,一種名為HASH桶的算法因其簡單高效和對碰撞的優化處理,目前應用最為廣泛。雖然HASH散列函數對某個元素進行散列時是盡力做到對所有元素平均分散排列,盡量避免或者降低他們之間的沖突,但是HASH值在散列計算時的碰撞是無法避免的,為了更好地解決沖突問題,一種HASH桶的存儲結構被研究者們提出。它的定義是:一個盛放不同KEY鏈表的容器(即鏈表數組),可以把每個key的位置看成是一個孔,孔里存放了一個鏈表(單向或雙向)。
如圖1所示,該HASH桶中共存儲12個不同的元素,它的KEY包含7個表項(key的數目=7)。從圖中可以看出,元素1、元素6、元素7的HASH值相同,都存儲在第一個表項下的三個不同桶中,為了避免沖突碰撞,三個不同的元素以雙向鏈表的形式存放在不同的桶中,具體的桶的數量一般情況下都是根據要處理的數據類型特征來考慮使用。比如要存儲網絡會話中的IP地址,則存放IP地址的HASH桶使用IP地址的后16bit作為key,這樣用一個65536(216)個桶就很好。不同KEY和桶數量的選擇就是一個界和性能的折中問題。比如當KEY值取問題空間的最大值時,這樣肯定能保證鍵值分散,但是這樣會浪費很多空間。如果值取得太小,則碰撞率很高,會影響到查找效率。HASH桶比其他搜索的數據結構靈活的地方就是它的可定制性,可以根據具體情況調整,以達到最優的效果。

圖1 HASH桶存儲結構
根據上面的問題分析和給出的相關定義,結合受控網絡環境下的網絡通信特征,本節設計實現了一種基于流量白名單的模板匹配技術。該方法的主要工作原理是:在受控網絡聯試聯調階段,抓取優化預處理后的網絡會話流量,統計量化頭部特征和行為特征,建立網絡會話六元組(或三元組)信息,生成流量白名單?;诹髁堪酌麊紊梢巹t庫,在任務階段通過HASH桶存儲結構和模式匹配對實時網絡流量進行檢測分類,并及時發出報警信息,整個檢測流程如圖2所示,共分為四個步驟:
(1)建立流量白名單。在網絡流量預處理過濾后的基礎上,通過抓取提取網絡會話特征,建立網絡會話六元組(或三元組)流量白名單。
(2)修改流量白名單。根據網絡實際情況,人工修改流量白名單數據,加入特例設備信息。
(3)匹配判斷。將流量白名單通過HASH桶存儲結構存儲后,在實時抓取當前網絡會話內容后,調出流量白名單數據生成規則庫,基于模式匹配進行類型判斷。
(4)檢測結果輸出。對分類檢測結果發出違規(或異常)報警,并加入到流量黑名單和灰名單中。
整個檢測過程分為兩個運行階段:
(1)抓取模板階段。實時抓取網絡中的流量數據,提取網絡會話六元組(或三元組)信息,依據不同任務模板建立流量白名單,然后通過HASH桶技術存儲到數據庫中。

圖2 基于流量模板的異常流量檢測流程
(2)檢測網絡流量階段。依據建立好的流量白名單和模式匹配算法對實時網絡流量進行異常檢測。同時,可以根據檢測結果人為對流量白名單進行修改。
2.3 關鍵技術
關鍵技術分為數據結構描述,網絡會話流量白名單模板抓取和流量白名單模式匹配三部分,分別描述如下:
1、數據結構描述。在流量白名單建立階段,以網絡中不同設備間發起的連接為單位(通過IP地址和端口號進行區分),將采集到的網絡六元組(或三元組)信息量化存儲到定義好的數據結構中(見表1),建立流量白名單。根據使用的傳輸層協議,區分TCP、UDP和ICMP三種協議類型存儲到HASH桶結構中,這里采用雙向鏈表實現,便于插入刪除操作。
2、會話模板抓取。通過采集網絡會話流量的頭部特征和行為特征,統計記錄不同的網絡會話六元組(或三元組)信息,建立網絡會話模板來生成流量白名單。其中,對TCP或UDP的網絡會話來說,前五個元素{源IP地址、源端口、目的IP地址、目的端口、應用層協議}用來區分不同的網絡會話連接,會話流速既能代表某個會話連接的特征,也能作為綜合評價因素,反映整個網絡運行狀態。對設備間產生的PING會話,單獨建立網絡會話三元組信息{源IP地址、目的IP地址、PING次數},并對其進行抓取采集和統計計算。3、流量白名單模式匹配。以建立好的流量白名單為規則庫,為了提高算法運行的時間復雜度和空間復雜度,采用HASH桶存儲結構進行存儲,通過計算流量白名單模板數據結構的HASH值和實時網絡連接的HASH值,而后將它們進行比較匹配用于異常檢測,匹配流程如圖3所示。
表1 流量白名單數據結構

Tab.1 Traffic White List Data Structure
在進行模式匹配時,采取的是and(與)關系,具體匹配規則如下:
(1)對TCP或UDP網絡會話,分為六元組信息全部匹配成功、五元組匹配成功但會話流速超出閾值和五元組信息至少有一個不匹配三種情況。當滿足第一種情況時不報警,當滿足第二種情況時加入灰名單信息中,由用戶查看其在一定時間內端口流量、流速的變化情況,進一步確定該設備是否存在異常,當滿足第三種情況時發出違規報警信息并將該網絡會話加入黑名單中。
(2)對PING會話,采用的是三元組匹配成功、PING次數超出閾值和至少有一個IP地址不匹配三種情況。當滿足第一種情況時不報警,當滿足第二種情況時發出異常報警信息,而后由用戶根據該網絡會話的詳細信息給出最終判斷,當滿足第三種情況時發出違規報警信息并將該網絡會話加入黑名單。

圖3 流量白名單模式匹配流程
算法的偽代碼描述如表2所示。
表2 流量白名單匹配算法偽代碼描述

Tab.2 Traffic White List Matching Algorithm Pseudo Code Description
3.1 實驗準備
為了驗證方法的有效性,模擬構建了一個私有特定網絡環境,拓撲結構如圖4所示。
3.2 實驗數據
其中,在每臺設備上,使用feiq通訊軟件、ftp軟件、站長之家軟件分別模擬不同的業務流量。在測試電腦上部署基于流量模板的異常流量檢測系統,通過設置交換機鏡像端口,對整個網絡流量進行抓取分析。

圖4 模擬網絡環境拓撲圖
由于真實受控網絡環境下,產生異常流量的概率較低,異常流量占得比例小,異常的規模難以刻畫。本文所做實驗對算法驗證的數據,使用科來數據包生成器軟件來模擬生成背景流量和異常流量,按照正常流量(4801201個數據包)占91%,異常流量(361380個數據包)占6.8%,其他流量(108414個數據包)占2.2%的比例構成。各類對應的標記值和所包含的數據集數量見表3。
表3 實驗數據集比例構成

Tab.3 Experimental data set proportion
3.3 實驗結果
圖5是該算法在受控網絡環境在聯調測試階段抓取到的流量模板。
表4是基于流量模板的方法與Wenke Lee的數據挖掘方法[10],Liu的遺傳聚類算法[11],Eskin的K-NN方法[12]三種方法的實驗結果比較。從比較結果可以得出基于流量模板的方法取得了較好的檢測結果。
3.4 結果分析
由于受控網絡環境下網絡通信特征不同于一般的網絡,而在任務調試測試和執行階段產成的網絡流量具有自相似性和長相關性,因此可用網絡會話七元組信息交叉熵特征向量來刻畫網絡流量特征變化。通過引入支持向量機分類器,克服訓練集樣本小、維度高和不可分的問題。在不同任務中,當某個網絡流量特征的交叉熵值偏離了歷史值的平均值,則此特征交叉熵值的差異性會被支持向量機分類器中的核函數放大化,最終得出分類超平面而形成不同的分類結果,從而能有效檢測出網絡異常流量。

圖5 抓取的流量模板結果部分截圖
表4 流量模板方法與其它方法的檢測結果比較

Tab.4 flow template method and other methods of detection results comparison
本文通過分析受控網絡環境特征,針對傳統的異常流量檢測方法無法用于此類網絡準確進行異常流量檢測的問題,設計實現了基于流量模板的網絡異常流量檢測方法,通過在前期收集網絡流量特征和行為特征,建立網絡流量模板,以達到準確檢測網絡異常流量的目標。通過模擬實驗論證,此方法對受控網絡環境下的異常流量檢測效果明顯。下一步研究的工作重點是如何利用已有的各類歷史名單信息(日志)來刻畫網絡整體行為輪廓,進而提高檢測準確度。
[1] Lakhina A, Crovella M, Diot C. Mining anomalies using traffic distributions[C]// CS Department, Boston University. 2004.
[2] 黃存東. 關于計算機網絡信息安全問題的技術研究[J]. 軟件, 2013, 34(1): 140-141
[3] 王曉軍. 基于網絡行為分析的跨站攻擊的防御探析[J]. 軟件, 2013, 34(1): 142-143
[4] 朱應武, 楊家海, 張金祥. 基于流量信息結構的異常檢測[J]. 軟件學報, 2010, 21(10): 2573-2583.
[5] 楊丹. 網絡流量異常檢測方法研究及仿真平臺研制[D]. 電子科技大學, 2008.
[6] Silveira F, Diot C, Taft N. ASTUTE: Detecting a different class of traffic Anomalies(Extended Version)[R]. Technicolor, 2010.
[7] Sagara S, Taira Y. DoWitcher: Effective Worm Detection and Containment in the Internet Core[C]// IEEE INFOCOM 2007-, IEEE International Conference on Computer Communications. IEEE Computer Society, 2007: 2541-2545.
[8] Barford P, Kline J, Plonka D, et al. A signal analysis of network traffic anomalies[C]// Proceedings of the 2nd ACM SIGCOMM Workshop on Internet Measurement (IMW’02) New York:ACM Press. 2002: 71-82.
[9] Wenke l, Stolfo S. Data Mining Approaches for Instrusion Detection, Proceedings of the Seventh USENIX Security Symposium, 1998, 79-94.
[10] Wenke l, Stolfo S. Data Mining Approaches for Instrusion Detection, Proceedings of the Seventh USENIX Security Symposium, 1998, 79-94.
[11] Liu Y, Chen K, Liao X, et al. A Genetic Clustering Method for Intrusion Detection. Pattern Recognition. 2004, 37(5): 927-942.
[12] Eskin E, Rnold A, Prerau M, et al. A geometric Framework for Unsupervised Anomaly Detection: Instrusion in Unlabeled.Applications of Data Mining in Computer Security, Kluwer Academics Publisher, 2002.
An Anomaly Traffic Detection Method Based on the Flow Template
JIN Ren-jie, WANG Yu, HAN Wei-jie
(Equiopment Academy, Beijing 101416, China)
The current network anomaly traffic detection technologies usually focus on the rules matching and statistical method which are suitable for the general network environment. For the communication characteristics of the controlled network environment, this paper puts forward a network anomaly traffic detection method based on the flow template, which captures and analyses the real-time network traffic. The method aims to detect the anomaly network traffic by extracting the characteristics of the network traffic and behaviour, establishing the flow template based on the network eight-group information, and comparing the established template with the actual traffic. The final experiment results show that the method can accurately detect the anomaly network traffic in the controlled network environment.
Controlled network; Anomaly traffic; Feature extraction; Network eight-group information; Flow template
TP309.2
A
10.3969/j.issn.1003-6970.2017.04.023
靳仁杰(1983-),男,研究生,主要研究方向:網絡信息安全;王宇(1971-),男,副教授,主要研究方向為網絡信息安全;韓偉杰,男,講師,主要研究方向為網絡信息安全。
本文著錄格式:靳仁杰,王宇,韓偉杰. 基于流量模板檢測網絡異常流量[J]. 軟件,2017,38(4):121-126