摘要:由于相當(dāng)一部分異常流量由于采用了特殊的生成機(jī)制而在結(jié)構(gòu)上有別于遵循基本網(wǎng)絡(luò)協(xié)議的正常流量,本文提出了一種基于IP報(bào)文Identification標(biāo)識(shí)字段分布識(shí)別網(wǎng)絡(luò)中異常流量的方法。通過CERNET網(wǎng)絡(luò)不同時(shí)段的IP報(bào)文檢測結(jié)果證明了該方法的準(zhǔn)確性。
關(guān)鍵詞:Identification標(biāo)識(shí);二項(xiàng)分布;異常流量檢測
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2008)30-0576-02
Abnormal Network Traffic Detection based on Identification Mark of IP Packet
ZHOU Ming1, XU Yan2
(1.Anhui Electric Power, Hefei 230061, China ; 2.Mechanical Electrical Department, Suzhou Institute of Trade Commerce, Suzhou 215031, China)
Abstract: A new method of abnormal network traffic based on the distribution of IP packets' Identification is proposed in this paper because many of abnormal network traffics are generated by special mechanisms, which are different from the ordinary traffics created on the basic network protocols. The correctness of this method is proved by the results of IP packets detect with different time on CERNET.
Key words: identification mark; binomial distribution; abnormal traffic detection
1 引言
隨著Internet的發(fā)展,網(wǎng)絡(luò)流量急劇增長,由于網(wǎng)絡(luò)的發(fā)展具有一定的規(guī)律性,可以通過對(duì)網(wǎng)絡(luò)協(xié)議的分析和網(wǎng)絡(luò)流量的預(yù)測定義網(wǎng)絡(luò)流量的正常行為,當(dāng)觀測所得的流量行為偏離正常時(shí),對(duì)網(wǎng)絡(luò)流量的進(jìn)一步分析可能發(fā)現(xiàn)異常的原因。目前基于網(wǎng)絡(luò)主干和邊界的異常流量檢測研究主要集中在流矩陣,報(bào)文分析等方面,但由于基于網(wǎng)絡(luò)的探測,入侵和攻擊行為也變得越來越普遍和復(fù)雜,這些方法在測量規(guī)模和粒度上不能達(dá)到很好平衡。本文提出了一種基于IP報(bào)文Identification標(biāo)識(shí)字段分布的異常流量識(shí)別方法,可以以較小的代價(jià)有效地識(shí)別網(wǎng)絡(luò)中的
流量異常,適用于主干網(wǎng)絡(luò)和邊界網(wǎng)絡(luò),并通過實(shí)驗(yàn)驗(yàn)證了其可行性。
2 問題提出
目前Internet絕大部分使用TCP/IP協(xié)議簇進(jìn)行網(wǎng)絡(luò)傳輸,而IP協(xié)議是其中最重要也是最基本的協(xié)議。位于應(yīng)用層的協(xié)議通過將服務(wù)內(nèi)容切割成分片(fragment)的形式傳遞給TCP層協(xié)議,在TCP層加上相應(yīng)的頭部信息又傳遞給IP層。由于在接受端需要對(duì)分片進(jìn)行重組獲得完整的服務(wù)內(nèi)容,而網(wǎng)絡(luò)的延時(shí)、擁塞和報(bào)文本身的傳輸方式都可能導(dǎo)致分片的亂序,所以需要對(duì)IP報(bào)文進(jìn)行標(biāo)識(shí)。在IP協(xié)議[1]中Identification字段用于標(biāo)識(shí)該報(bào)文而區(qū)別于來自相同源宿地址對(duì)使用同一個(gè)協(xié)議的其他報(bào)文。由于該字段被定義為16bit長,也就是說它所能表示最大數(shù)目為216即65536。為保證服務(wù)的正常,網(wǎng)絡(luò)中必須確保來自同一IP地址使用相同協(xié)議的報(bào)文應(yīng)當(dāng)有其唯一的Identification標(biāo)識(shí)(該標(biāo)識(shí)值位于0-65535之間)。
在文獻(xiàn)[1]中并沒有給出Identification標(biāo)識(shí)的具體取值方式,但由于規(guī)定了其取值范圍,采用不同取值方式的主機(jī)所選取的初始Identification應(yīng)當(dāng)是一個(gè)位于0-65535之間的隨機(jī)數(shù)且取值相互獨(dú)立,而大部分服務(wù)被分解為若干個(gè)IP報(bào)文進(jìn)行傳送,在每個(gè)主機(jī)中都維護(hù)一個(gè)計(jì)數(shù)器(Counter),每發(fā)送一個(gè)IP報(bào)文該計(jì)數(shù)器加1??梢宰龀鲆韵录僭O(shè):
假設(shè)1 在較大規(guī)模網(wǎng)絡(luò)中,從宏觀的角度分析Identification標(biāo)識(shí)的取值是近似均勻分布的。
經(jīng)過大量實(shí)驗(yàn)證明,在絕大多數(shù)情況下,Identification標(biāo)識(shí)是近似均勻分布的,有關(guān)實(shí)驗(yàn)的驗(yàn)證將在下節(jié)中具體介紹。在假設(shè)1的基礎(chǔ)上,根據(jù)Identification標(biāo)識(shí)的選取方式可以做出相關(guān)結(jié)論如下:
引理1 在較大規(guī)模的網(wǎng)絡(luò)中用于正常服務(wù)的IP報(bào)文的Identification標(biāo)識(shí)是近似服從參數(shù)為n,p的二項(xiàng)分布,其中n為65536,p為0.5。
證明:由于每個(gè)源主機(jī)所發(fā)送的Identification標(biāo)識(shí)是隨機(jī)或者采用一定的機(jī)制選取的,而每個(gè)源主機(jī)選取的方式是相互獨(dú)立的。設(shè)每個(gè)IP報(bào)文所對(duì)應(yīng)的Identification為隨機(jī)取以下值之一:X1=0,X2=1,…,Xn=n-1(n為65536),它們的取值服從同一(0-1)分布,其分布率為:
已知X1+X2+……+Xn服從二項(xiàng)分布,那么比較容易證明X是近似服從參數(shù)為n,p的二項(xiàng)分布。
分異常IP報(bào)文,它們的主要來源之一是人為構(gòu)造的攻擊報(bào)文。這些異常IP報(bào)文和正常IP報(bào)文共同構(gòu)成了網(wǎng)絡(luò)中存在的IP報(bào)文。
引理2 在網(wǎng)絡(luò)中實(shí)際觀測到的IP報(bào)文Identification標(biāo)識(shí)的分布應(yīng)當(dāng)是正常IP報(bào)文分布和異常IP報(bào)文分布的疊加。
因此,可以通過區(qū)分這兩部分分布,有效地識(shí)別網(wǎng)絡(luò)中可能存在的流量異常,為其他檢測方法(如報(bào)文分析)提供預(yù)警,從而為網(wǎng)絡(luò)行為分析、入侵檢測等提供必要的依據(jù)。
3 基于標(biāo)識(shí)字段的異常檢測方法
本文基于IP報(bào)文Identification標(biāo)識(shí)的角度將IP報(bào)文分為正常IP報(bào)文和異常IP報(bào)文,整個(gè)網(wǎng)絡(luò)的流量也是由其分別對(duì)應(yīng)的正常流量和異常流量構(gòu)成的。從較大規(guī)模網(wǎng)絡(luò)(主干網(wǎng)絡(luò)和部分局域網(wǎng))的角度分析,正常IP報(bào)文Identification標(biāo)識(shí)的分布規(guī)律由引理1可知近似為二項(xiàng)分布,而異常報(bào)文的分布具有隨機(jī)性和多樣性,也就導(dǎo)致了其的不可預(yù)測性。但是根據(jù)引理2,可以通過繪制網(wǎng)絡(luò)流量曲線并從中分離出正常流量,就可以得到目前網(wǎng)絡(luò)中異常流量的曲線,然后對(duì)這些流量的進(jìn)一步分析就可以獲得或部分獲得流量異常的原因。
將獲取的所有IP報(bào)文不同Identification標(biāo)識(shí)數(shù)量的非空有限集合定義為P, 則根據(jù)IP協(xié)議的定義可知:,其中隸屬于正常IP報(bào)文的集合定義為 ,異常IP報(bào)文的集合為Pb,P=PaUPb。
根據(jù)引理1可知,在集合Pa中j應(yīng)服從參數(shù)為(na,0.5)的二項(xiàng)分布,則集合中的元素pa(x)的值應(yīng)當(dāng)基本等于其均值。采用報(bào)文總數(shù)n乘以一個(gè)預(yù)定義的比例r來估計(jì)正常IP報(bào)文的數(shù)量,由于在非極端情況下,正常IP報(bào)文數(shù)量占報(bào)文總數(shù)量的絕大多數(shù),所以r值的估計(jì)偏差比較小,還可以根據(jù)網(wǎng)絡(luò)當(dāng)前的狀況動(dòng)態(tài)地調(diào)整r的取值。這樣就可以從IP報(bào)文集合里分離出正常IP報(bào)文集合,從而獲得異常IP報(bào)文結(jié)合,然后根據(jù)異常IP報(bào)文集合中元素的分布狀況給進(jìn)一步分析提供依據(jù)。
對(duì)異常IP報(bào)文的分析,主要通過定義一個(gè)閾值(Fthreshold)來將可能存在的網(wǎng)絡(luò)異常流量從其他原因所引起的噪聲區(qū)別出來,這個(gè)閾值可以設(shè)定初始值然后根據(jù)識(shí)別結(jié)果動(dòng)態(tài)修正。
基于IP報(bào)文Identification標(biāo)識(shí)的異常流量發(fā)現(xiàn)算法
通過大量的實(shí)驗(yàn)證明,在一般情況下,異常IP報(bào)文的Identification集中在0附近,有時(shí)還出現(xiàn)個(gè)別標(biāo)識(shí)的報(bào)文數(shù)量偏移平均值較遠(yuǎn)。
4 流量行為的實(shí)例分析
針對(duì)CERNET主干網(wǎng)絡(luò)的長期觀測結(jié)果顯示,在大多數(shù)情況下,Identification標(biāo)識(shí)的分布是十分均勻的,具有某個(gè)特定Identification值的IP報(bào)文數(shù)量均在基于標(biāo)識(shí)的平均報(bào)文數(shù)量附近。從整個(gè)分布曲線來看,IP報(bào)文數(shù)是圍繞平均值作平穩(wěn)的小幅振動(dòng),這也證實(shí)了第2節(jié)所提出的假設(shè)1。
觀測結(jié)果還發(fā)現(xiàn),在所有觀測時(shí)段中,Identification標(biāo)識(shí)為0的IP報(bào)文數(shù)量遠(yuǎn)遠(yuǎn)高于平均值,這與文獻(xiàn)[2]中實(shí)驗(yàn)觀察結(jié)果相一致,這不符合正常IP報(bào)文均勻分布這個(gè)論斷,所以在標(biāo)識(shí)為0的IP報(bào)文中有可能大量存在非正常報(bào)文。對(duì)Identification標(biāo)識(shí)為0的IP報(bào)文進(jìn)行分析發(fā)現(xiàn),有大量相同源宿IP和相同端口的IP報(bào)文在短時(shí)間內(nèi)重復(fù)出現(xiàn),所以導(dǎo)致了標(biāo)識(shí)為0的IP報(bào)文數(shù)量大大超過平均值,在剔除了這些異常報(bào)文之后,所剩的IP報(bào)文數(shù)量非常接近于平均值。由此可見,標(biāo)識(shí)為0的IP報(bào)文數(shù)量異常的主要原因是因?yàn)榇罅看嬖谶@些異常IP報(bào)文。對(duì)實(shí)驗(yàn)觀測所得的其他標(biāo)識(shí)的IP報(bào)文數(shù)量異常進(jìn)行進(jìn)一步分析,發(fā)現(xiàn)結(jié)果與此相類似。在實(shí)驗(yàn)中還發(fā)現(xiàn)相當(dāng)數(shù)量的來自同一源IP和源端口對(duì)應(yīng)不同宿IP的相同宿端口的IP報(bào)文,這是典型的掃描攻擊的表現(xiàn)。
本文對(duì)不同時(shí)段在CERNET主干網(wǎng)采集的IP報(bào)文進(jìn)行分析(每個(gè)時(shí)段持續(xù)10分鐘),分析所得報(bào)文分布曲線如圖1所示。
選取參數(shù)r=0.98, 獲得各個(gè)時(shí)段對(duì)應(yīng)正常報(bào)文集合Pa,并從總體IP報(bào)文集合中去除正常IP報(bào)文集合獲得異常報(bào)文數(shù)量分布曲線如圖2所示。
采用初始閥值Fthreshold=1,除去了可能存在的網(wǎng)絡(luò)其他噪聲后,可以得到在Identification標(biāo)識(shí)為若干特定值的IP報(bào)文中可能存在相當(dāng)數(shù)量的異常報(bào)文,從而為進(jìn)一步的報(bào)文分析提供預(yù)警。實(shí)驗(yàn)數(shù)據(jù)顯示,在2007年8月17日01:00和2007年8月21日22:00在網(wǎng)絡(luò)中存在一定的流量異常。
5 結(jié)束語
本文提出了一種新型的基于IP報(bào)文Identification字段進(jìn)行網(wǎng)絡(luò)異常流量發(fā)現(xiàn)和分析方法,該方法的主要優(yōu)點(diǎn)在于算法簡單,所占用的系統(tǒng)資源較小,誤報(bào)率低,可以較方便地嵌入到目前流量檢測工具中和其他報(bào)文分析方法及工具結(jié)合使用等等。但是由于其觀測的對(duì)象所限,該方法并不能有效地發(fā)現(xiàn)偽裝成正常IP報(bào)文的異常流量,它必須和其他報(bào)文分析工具配合使用才能達(dá)到最佳的效果。
參考文獻(xiàn):
[1] DARPA Internet Program Protocol Specification.Internet Protocol. Information Sciences Institute University of Southern California.1981(RFC791).
[2] 程光.大規(guī)模高速IP網(wǎng)絡(luò)流量抽樣測量及行為分析研究[D],東南大學(xué)博士論文,2003(1):41-44.
[3] 程光,龔儉,丁偉.基于抽樣測量的高速網(wǎng)絡(luò)實(shí)時(shí)異常檢測模型[J],軟件學(xué)報(bào),2003,14(3):594-599.
[4] 鄒柏賢.一種網(wǎng)絡(luò)異常實(shí)時(shí)檢測方法[J],計(jì)算機(jī)學(xué)報(bào),2003,26(8):940-947.
[5] 高艷,管曉宏,孫國基,等.基于實(shí)時(shí)擊鍵序列的主機(jī)入侵檢測[J],計(jì)算機(jī)學(xué)報(bào),2004,27(3):396-401.
[6] 徐永紅,楊云,等.基于權(quán)重包標(biāo)記策略的IP跟蹤技術(shù)研究[J],計(jì)算機(jī)學(xué)報(bào),2003,27(11):1598-1603.
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文