摘要:在深入研究網(wǎng)絡(luò)異常行為及異常檢測系統(tǒng)相關(guān)現(xiàn)狀的基礎(chǔ)上,提出了基于NB分類方法的網(wǎng)絡(luò)異常檢測模型,并詳細(xì)論述了該模型的工作原理。實(shí)驗(yàn)結(jié)果表明該方法是有效的。
關(guān)鍵詞:網(wǎng)絡(luò)異常檢測;樸素貝葉斯網(wǎng)絡(luò);貝葉斯分類方法
中圖分類號:TP393文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2008)02-0569-03
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展和廣泛應(yīng)用,網(wǎng)絡(luò)技術(shù)正逐步影響著人們的生活和工作方式。社會信息化程度日益增加,對網(wǎng)絡(luò)依賴性日益增強(qiáng),目前網(wǎng)絡(luò)互聯(lián)領(lǐng)域的廣度和深度不斷擴(kuò)展,開放特性不斷深化,造成越來越多的網(wǎng)絡(luò)系統(tǒng)面臨威脅。然而要想完全避免異常的發(fā)生并不現(xiàn)實(shí),網(wǎng)絡(luò)管理人員所能做到的只能是盡力發(fā)現(xiàn)和察覺網(wǎng)絡(luò)異常,以便采取有效的措施來修復(fù)系統(tǒng)。
網(wǎng)絡(luò)異常檢測問題被定義為[1,2]:當(dāng)網(wǎng)絡(luò)發(fā)生異常,其行為與正常狀態(tài)時(shí)不同或失調(diào),網(wǎng)絡(luò)異常檢測的任務(wù)就是要尋找引起這些異常征兆的可能原因。最早用于網(wǎng)絡(luò)異常的方法是統(tǒng)計(jì)假設(shè)檢驗(yàn)[3],典型的有SPRT 和LR 檢驗(yàn)。Wald 證明了有效SPRT 族中一定存在一個(gè)一致最有效的貫序檢驗(yàn),該方法的缺點(diǎn)是突發(fā)性異常會對系統(tǒng)當(dāng)前檢測任務(wù)的運(yùn)行產(chǎn)生嚴(yán)重影響。LR 檢驗(yàn)對于網(wǎng)絡(luò)異常檢測具有顯著的適用性和良好的統(tǒng)計(jì)性,缺點(diǎn)是在有限樣本的情況下,缺乏容錯(cuò)能力。Iserman[4]提出基于參數(shù)估計(jì)的異常監(jiān)測方法,該方法的不足在于對不確定時(shí)變#65380;變結(jié)構(gòu)#65380;變參數(shù)問題難以勝任。文獻(xiàn)[5]提出一種基于專家系統(tǒng)的異常實(shí)時(shí)檢測方法,該方法對于網(wǎng)絡(luò)這種規(guī)模較大的系統(tǒng),存在沖突消解和組合爆炸。Siraj 等人[6]在2001 年提出建立模糊知識圖和模糊規(guī)則庫來支持因果式知識推理過程,但是沒有提出具體的檢測方法和實(shí)驗(yàn)結(jié)論。
文獻(xiàn)[7,8]首先提出了融合人工智能中的概率和符號方法來完成網(wǎng)絡(luò)異常檢測的思想。Forrest等人[9]將網(wǎng)絡(luò)異常檢測問題看做是區(qū)分自我(即正常)和非自我(即異常)的過程,提出了基于免疫模型的網(wǎng)絡(luò)異常檢測技術(shù)。Ghosh等人[10]利用神經(jīng)絡(luò)來提取特征和分類。Wenke Lee等人[11]從數(shù)據(jù)挖掘的角度探討了異常檢測的實(shí)現(xiàn)問題。 這些網(wǎng)絡(luò)異常檢測研究均集中在針對某個(gè)單一征兆,采用單一的檢測技術(shù),檢測思路是將征兆特征與特征庫中的特征相匹配,系統(tǒng)檢測性能和自適應(yīng)性較差。
網(wǎng)絡(luò)異常檢測可以看做是一個(gè)分類問題。針對給定的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分類,什么樣的數(shù)據(jù)是正常的,什么樣的數(shù)據(jù)是異常的。利用貝葉斯網(wǎng)絡(luò)進(jìn)行建模,不僅可以解決在建立網(wǎng)絡(luò)異常檢測模型時(shí)因無法收集所有異常樣本而導(dǎo)致的模型推廣性能差的問題,而且可以提高檢測率#65380;降低誤報(bào)率,提高入侵檢測系統(tǒng)的效率。
1網(wǎng)絡(luò)異常檢測模型框架
網(wǎng)絡(luò)異常檢測系統(tǒng)主要由四個(gè)組件組成:數(shù)據(jù)采集器#65380;數(shù)據(jù)分析器#65380;響應(yīng)單元和知識庫,如圖1所示。
數(shù)據(jù)采集器是從網(wǎng)絡(luò)環(huán)境中獲得網(wǎng)絡(luò)數(shù)據(jù)包,并提供給系統(tǒng)的其他單元;數(shù)據(jù)分析器分析網(wǎng)絡(luò)數(shù)據(jù)并產(chǎn)生分析結(jié)果;響應(yīng)單元對分析結(jié)果作出反應(yīng),如切斷網(wǎng)絡(luò)連接#65380;改變文件屬性#65380;簡單報(bào)警等應(yīng)急響應(yīng);知識庫存放異常檢測模型及各種中間和最終數(shù)據(jù),數(shù)據(jù)存放的形式可以是復(fù)雜的數(shù)據(jù)庫。網(wǎng)絡(luò)異常檢測的具體實(shí)施過程如圖2所示。
2基于NB分類方法的網(wǎng)絡(luò)異常檢測算法
2.1系統(tǒng)建模
網(wǎng)絡(luò)數(shù)據(jù)是無結(jié)構(gòu)的記錄,需要將其轉(zhuǎn)換成向量模型才能進(jìn)行計(jì)算。
2.2系統(tǒng)工作原理
基于NB分類方法的網(wǎng)絡(luò)異常檢測系統(tǒng)工作原理如圖3所示。數(shù)據(jù)處理器用來對大量的網(wǎng)絡(luò)記錄進(jìn)行處理或轉(zhuǎn)換。貝葉斯分類器只能處理離散型數(shù)據(jù),但網(wǎng)絡(luò)數(shù)據(jù)中存在許多連續(xù)型數(shù)據(jù),因此,筆者必須將原始數(shù)據(jù)轉(zhuǎn)換成貝葉斯分類器能夠識別的離散值向量。貝葉斯分類器對這些數(shù)字向量進(jìn)行分類,產(chǎn)生判決結(jié)果。當(dāng)然,這些判決結(jié)果可以直接作為整個(gè)異常檢測系統(tǒng)的輸出,但是為了進(jìn)一步提高整個(gè)系統(tǒng)的正確率,可以設(shè)定一些判定準(zhǔn)則,如發(fā)生數(shù)目#65380;百分比等來進(jìn)行最終的判定。這個(gè)過程是由決策系統(tǒng)完成的。
整個(gè)系統(tǒng)的工作分為訓(xùn)練和檢測兩個(gè)階段。在訓(xùn)練階段,使用已知的正常和異常網(wǎng)絡(luò)數(shù)據(jù)作為樣本,貝葉斯網(wǎng)絡(luò)學(xué)習(xí)引擎從樣本數(shù)據(jù)中學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù),并存儲在知識庫中;在檢測階段,預(yù)處理器先將未知狀態(tài)的網(wǎng)絡(luò)數(shù)據(jù)形成離散型向量的形式,然后通過貝葉斯分類器對這些向量進(jìn)行分類,將分類結(jié)果提交給決策系統(tǒng)作出判決。
3仿真實(shí)驗(yàn)
3.1數(shù)據(jù)來源
實(shí)驗(yàn)采用的數(shù)據(jù)來源于1998 年美國國防部研究局作IDS評測時(shí)獲得的數(shù)據(jù)基礎(chǔ)上恢復(fù)出來的網(wǎng)絡(luò)連接信息。該數(shù)據(jù)集共包括七周的網(wǎng)絡(luò)流量,大約五百萬條連接記錄,包含大量的正常網(wǎng)絡(luò)流量數(shù)據(jù)和上百種網(wǎng)絡(luò)攻擊。KDD99(knowledge discovery databases)的數(shù)據(jù)[15]是這些數(shù)據(jù)的不同版本, 本文中所用的數(shù)據(jù)就是KDD99的數(shù)據(jù)。
3.2數(shù)據(jù)預(yù)處理
由于NB分類器只能處理離散值變量,必須對網(wǎng)絡(luò)特征屬性中的連續(xù)型屬性進(jìn)行離散化分析。在這里,離散化是指將數(shù)值屬性的值域劃分成若干子區(qū)間,每個(gè)區(qū)間對應(yīng)一個(gè)離散值,最后將原始數(shù)據(jù)更新為離散值。本文采用帶權(quán)重的信息損耗離散化(weighted information-loss discretization,WILD) 方法[16]。
3.3實(shí)驗(yàn)步驟
a)將經(jīng)過預(yù)處理后的數(shù)據(jù)集分成兩部分,即訓(xùn)練樣本和測試樣本。本文選取80%的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)集,其余數(shù)據(jù)作為測試數(shù)據(jù)集。
b)訓(xùn)練過程。從訓(xùn)練樣本中學(xué)習(xí)出樸素貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)。
c)驗(yàn)證過程。將測試樣本集中的每條記錄輸入給已經(jīng)訓(xùn)練好的NB分類器,通過貝葉斯公式計(jì)算每個(gè)測試實(shí)例屬于各個(gè)類的后驗(yàn)概率值:
d)決策過程。根據(jù)P(C|X)的最大值來確定X最大可能的類,即測試樣本的類別。
3.4實(shí)驗(yàn)結(jié)果分析
基于NB分類方法的網(wǎng)絡(luò)異常檢測模型的網(wǎng)絡(luò)結(jié)構(gòu)是固定的,如圖4所示,即類節(jié)點(diǎn)作為根節(jié)點(diǎn),其他各個(gè)特征屬性作為類節(jié)點(diǎn)的子節(jié)點(diǎn),子節(jié)點(diǎn)之間是相互獨(dú)立的。
通過基于NB分類方法與其他模型的網(wǎng)絡(luò)異常檢測率對比(表2)來看,該方法的網(wǎng)絡(luò)異常檢測模型是有效的,對DoS和Probing類攻擊的檢測率均在90%以上;對U2R和R2L類攻擊的檢測效果不是很好。這主要是由于U2R和R2L類攻擊的特點(diǎn)是通過獲得該機(jī)器的當(dāng)?shù)卦L問權(quán)限或管理員權(quán)限,從而進(jìn)行獲得數(shù)據(jù)#65380;修改權(quán)限等遠(yuǎn)程攻擊,其攻擊模式難以用網(wǎng)絡(luò)特征屬性來描述。
4結(jié)束語
貝葉斯分類器是一種基于概率理論的分類方法,具有良好的學(xué)習(xí)效率和分類性能,已經(jīng)廣泛地用于人臉識別等許多方面。本文初步探討了它在網(wǎng)絡(luò)異常檢測方面的應(yīng)用,提出了基于NB分類方法的網(wǎng)絡(luò)異常檢測模型,并利用KDD Cup99的網(wǎng)絡(luò)異常檢測數(shù)據(jù)集進(jìn)行了仿真試驗(yàn),驗(yàn)證了該算法的有效性。
參考文獻(xiàn):
[1]GAVALAS D, GREENWOOD D,GHANBARI M. Advanced network monitoringapplications based on mobile/intelligent agent technology[J]. Computer Communications, 2002, 34 (23):720-730.
[2] TAGLIAFERRI R,ELEUTERI A,MENEGANTI M, et al. Fuzzy min-max neural network: from classification to regression[J]. Soft Computing, 2001, 43 (5):69-76.
[3]BASSEVILLE M,NIKIFOROV IV. Detection of abrupt changes:theory and application [M]. New York:Prentice Hall, 1993.
[4] ISERMAN R. Process fault detection based on modeling and estimation and knowledge processing[J].Automatic, 1999, 29(4):815-835.[5] BULLELL P,INMAN D. An expert system for the analysis of faults in an electricity supply network: problems and achievements [J]. Computer in Industry, 1998, 24 (37):113-123.
[6] SIRAJ A,BRIDGES S M,VAUGHN R B. Fuzzy cognitive maps for decision support in an intelligent intrusion system[C]//Proc of ISFA World Congress and the 20th NAFIPS International Conference.2001:2165-2170.
[7] GURER D,KHAN I,OGIER R,et al. An artificial intelligence approach to network fault management [EB/OL]. (2003-02-01). http://citeseer.nj.nec.com/105695.htm1.
[8] RUSSELL PNS.Artificial intelligence:a modern approach[M]. New Jersey: Prentice Hall, 1995.
[9] FORREST S, PERRELASON A S, ALLEN L, et al. Self_nonself discrimination in a computer[C]//Proc of IEEE Symposium on Research in Security and Privacy. Oakland: IEEE Computer Society, 1994:202-212.
[10] GHOSH A K, MICHAEL C, SCHATZ M. A real-time intrusion detection system based on learning program behavior[C]//Proc of Recent Advances in Intrusion Detection.Toulouse:SpingerVerlag, 2000:93-109.
[11]LEE W, STOLFO S J. A data mining framework for building intrusion detection model[C]//Proc of IEEE Symposium on Security and Privacy. Oakland: IEEE Computer Society, 1999:120-132.
[12]DUDAR O, HARTP E. Pattern classification and scene analysis [M]. New York: Wiley, 1973.
[13]PEARL J. Probabilistic reasoning in intelligent systems:networks of plausible inference [M]. San Mateo:Morgan Kaufmann, 1988.
[14]LANGLEY P, IBA W, THOMPSON K. An analysis of Bayesian classifiers[C]//Proc of the 10th National Conference on Artificial Intelligence. Menlo Park: AAAI Press, 1992: 223-228.
[15]KDD cup 1999 data[DB/OL]. http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html.
[16]李剛. 知識發(fā)現(xiàn)的圖模型方法[D].北京:中國科學(xué)院軟件研究所, 2001.
“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”