汪世義
(巢湖學(xué)院信息工程學(xué)院,安徽 巢湖 238000)
基于機(jī)器學(xué)習(xí)的入侵檢測方法研究
汪世義
(巢湖學(xué)院信息工程學(xué)院,安徽 巢湖 238000)
入侵檢測技術(shù)是幾年來快速發(fā)展的一種動(dòng)態(tài)的網(wǎng)絡(luò)安全技術(shù),應(yīng)用機(jī)器學(xué)習(xí)方法處理入侵檢測問題,是把它對(duì)應(yīng)成一個(gè)模式識(shí)別與分類問題來處理的。因此討論幾種機(jī)器學(xué)習(xí)的分類方法的原理,為下一步把機(jī)器學(xué)習(xí)算法應(yīng)用到入侵檢測系統(tǒng)中提供了相關(guān)的思路與方法。
網(wǎng)絡(luò)安全;機(jī)器學(xué)習(xí);入侵檢測
網(wǎng)絡(luò)安全防護(hù)體系中,入侵檢測是一種動(dòng)態(tài)的主動(dòng)防護(hù)技術(shù),能在網(wǎng)絡(luò)及其系統(tǒng)受到攻擊時(shí)提供實(shí)時(shí)安全保護(hù),這些攻擊行為包括內(nèi)部或外部攻擊行為以及誤操作,入侵檢測技術(shù)的應(yīng)用能在主機(jī)或網(wǎng)絡(luò)系統(tǒng)受到危害之前對(duì)相應(yīng)入侵行為進(jìn)行攔截并作出相應(yīng)處理,目前把機(jī)器學(xué)習(xí)算法應(yīng)用在入侵檢測技術(shù)中是一個(gè)研究的熱點(diǎn)問題。
機(jī)器學(xué)習(xí)是從大量的和數(shù)據(jù)中自動(dòng)或半自動(dòng)地尋找模式的過程,而且這個(gè)模式必須是有用的;而學(xué)習(xí)可理解為:當(dāng)事物以令其自身在將來表現(xiàn)更好為標(biāo)準(zhǔn)來改變其行為時(shí),它學(xué)到了東西。作為一個(gè)快速發(fā)展的新的交叉學(xué)科,它與多學(xué)科聯(lián)系緊密,成為人工智能的一個(gè)重要分支。把數(shù)據(jù)挖掘的相關(guān)理論應(yīng)用到入侵檢測系統(tǒng)中,是基于機(jī)器學(xué)習(xí)理論的入侵檢測技術(shù)和方法的重要體現(xiàn)。這個(gè)過程主要包括三個(gè)方面:一是對(duì)從主機(jī)或網(wǎng)絡(luò)獲取的入侵或正常的特征數(shù)據(jù)進(jìn)行特征提取或行為分析;二是對(duì)獲取的不同類別的數(shù)據(jù)進(jìn)行學(xué)習(xí);三是利用入侵檢測決策支持系統(tǒng)對(duì)獲取的數(shù)據(jù)進(jìn)行深層次地分析與判斷。在這個(gè)過程中,選用的機(jī)器學(xué)習(xí)算法主要是對(duì)不同的分類的特征數(shù)據(jù)進(jìn)行了自適應(yīng)調(diào)整。
從本質(zhì)上來說,機(jī)器學(xué)習(xí)方法在入侵檢測問題中的主要應(yīng)用,是把它對(duì)應(yīng)成一個(gè)模式識(shí)別與分類的問題來進(jìn)行處理,主要是對(duì)系統(tǒng)的正常行為和異常行為作出分類,其中分析的數(shù)據(jù)包括網(wǎng)絡(luò)流量特征和相關(guān)的主機(jī)審計(jì)信息記錄[1-3]。因此下面討論幾種機(jī)器學(xué)習(xí)的分類方法在入侵檢測中的應(yīng)用,是一項(xiàng)很有意義的工作。
樸素貝葉斯分類器是產(chǎn)生概率估計(jì)來替代類預(yù)測的。對(duì)于每個(gè)類值,它們都是估計(jì)某個(gè)實(shí)例用于屬于這個(gè)類的概率。前提是給定其他屬性的值,所估計(jì)的是類屬性的條件概率分布。Bayes網(wǎng)絡(luò)是變量集合的連接概率分布的圖形模型,可用來挖掘和發(fā)現(xiàn)數(shù)據(jù)間的內(nèi)在關(guān)系[4]。
P中的每一元素為數(shù)據(jù)變量Xi的條件概率密度表示為p(Xi|Pai,ζ)。則由概率的鏈規(guī)則得
這樣對(duì)于任一數(shù)據(jù)變量Xi,一定可以找到一個(gè)與Xi條件都不獨(dú)立的最小子集使得
此時(shí),πi中的變量就為Bayes網(wǎng)絡(luò)中的Xi的父結(jié)點(diǎn),所以
由(S,P)就構(gòu)成了一個(gè)Bayes網(wǎng)絡(luò)。
2.1.1 Bayes網(wǎng)絡(luò)的學(xué)習(xí)
Bayes網(wǎng)絡(luò)的學(xué)習(xí)的過程[4]就是建立一種學(xué)習(xí)算法,主要是定義兩個(gè)組成部分:一個(gè)是基于某個(gè)數(shù)據(jù)集的網(wǎng)絡(luò)進(jìn)行評(píng)估的評(píng)估函數(shù),另一個(gè)是在所有的可能的網(wǎng)絡(luò)空間中搜索的搜索方法。Bayes網(wǎng)絡(luò)的學(xué)習(xí)是要找出一個(gè)網(wǎng)絡(luò)模型,數(shù)據(jù)庫中各數(shù)據(jù)變量之間的依賴關(guān)系能在這個(gè)模型中能夠最理想地表現(xiàn)。例如對(duì)一個(gè)數(shù)據(jù)變量集記為,對(duì)于每一個(gè)Xi,它的值域?yàn)椤為數(shù)據(jù)樣本,其中的元素Ci則稱為一個(gè)事例。Dl為l-1個(gè)事例集。數(shù)據(jù)樣本D由Bayes網(wǎng)絡(luò)結(jié)構(gòu)S所產(chǎn)生的事件記為Sh。Bayes網(wǎng)絡(luò)的學(xué)習(xí)過程也就是找出后驗(yàn)概率p(Sh|D,ζ)最大的Bayes網(wǎng)絡(luò)結(jié)構(gòu)S的過程,主要是根據(jù)數(shù)據(jù)樣本D和先驗(yàn)知識(shí)ζ來實(shí)現(xiàn)的。由Bayes概率公式得:
樣本D的先驗(yàn)概率p(D|ζ)不依賴于網(wǎng)絡(luò)結(jié)構(gòu)S,所以只需找出聯(lián)合概率p(Sh,D|ζ)最大的網(wǎng)絡(luò)結(jié)構(gòu)S。記先驗(yàn)概率的參數(shù)變量:
2.1.2 貝葉斯分類器
貝葉斯分類算法是一類利用概率統(tǒng)計(jì)知識(shí)進(jìn)行分類的算法,如NB(Na?ve Bayes)算法,這些算法是主要利用Bayes定理來預(yù)測一個(gè)未知類別的樣本屬于各個(gè)類別的可能性即概率大小。選擇其中可能性最大的一個(gè)類別作為該樣本的類別歸屬。換句話說,貝葉斯分類器就是利用貝葉斯公式需要很強(qiáng)的獨(dú)立性假設(shè)為前提,由對(duì)象的先驗(yàn)概率得到對(duì)象的后驗(yàn)概率,然后以最大后驗(yàn)概率確定對(duì)象所屬的類別,然而這種獨(dú)立性的假設(shè)在實(shí)際情況中經(jīng)常是不成立的,因而對(duì)其分類準(zhǔn)確性產(chǎn)生影響,因此在應(yīng)用中如何設(shè)計(jì)降低獨(dú)立性假設(shè)的Bayes分類算法是值得研究的問題。
決策樹從某種意義上來說相對(duì)于是對(duì)原決策表規(guī)則集的一個(gè)樹型表示,創(chuàng)建一個(gè)規(guī)則對(duì)應(yīng)其中的每個(gè)葉子結(jié)點(diǎn),而每個(gè)分割都成為一條規(guī)則中的一個(gè)條件,所以只要采用某種搜索規(guī)則對(duì)生成的決策樹進(jìn)行搜索,就可以得到一個(gè)規(guī)則集。決策樹歸納學(xué)習(xí)算法中ID3算法通過對(duì)一個(gè)樣例集使用屬性信息熵增益進(jìn)行學(xué)習(xí)生成一棵判定樹[4]。從根結(jié)點(diǎn)開始,在每個(gè)結(jié)點(diǎn)處選擇一個(gè)屬性C,需要檢查每個(gè)記錄上對(duì)應(yīng)于C的屬性值計(jì)算剩余熵,時(shí)間復(fù)雜度和決策樹中葉結(jié)點(diǎn)的最大數(shù)目、屬性個(gè)數(shù)和屬性最大可能的屬性值個(gè)數(shù)相關(guān),基于剩余熵的屬性排序策略使生成的決策樹越小越好在ID3算法中得到應(yīng)用。
定義1 如果根據(jù)一個(gè)屬性把一個(gè)元素集T劃分為不相交子集合C1,C2,…,Ck,那么Info(T)=I(P)是識(shí)別T中元素的類屬所需要的信息,其中P是劃分(C1,C2,…,Ck)的概率分布
定義2 如果先依據(jù)非分類屬性X將T劃分成互不相交的子樹T1,T2,…,Tn,那么識(shí)別Ti中元素的類屬所需要的信息的權(quán)平均就成為T中元素的類屬所需要的信息。權(quán)平均表示為:
定義3 屬性X信息墑增益Gain(X,T)為識(shí)別T中元素的類屬所需要的信息與獲取屬性X值后識(shí)別T中元素的類屬所需要的信息之差,記為:
ID3算法以屬性的信息墑增益進(jìn)行決策樹新結(jié)點(diǎn)的構(gòu)造,采用遞歸的方法對(duì)全部候選屬性進(jìn)行比較,構(gòu)建決策樹的過程中,選擇從根結(jié)點(diǎn)到當(dāng)前結(jié)點(diǎn)未被選擇而且屬性信息墑增益最大的結(jié)點(diǎn)作為新結(jié)。這種決策樹中規(guī)則相對(duì)于粗糙集算法生成的規(guī)則來說,由于搜索和匹配路徑的唯一性,算法效率較高,但漸近式學(xué)習(xí)的問題成為這一算法在應(yīng)用中的問題之一。
首先討論了入侵檢測作為一種快速發(fā)展的動(dòng)態(tài)網(wǎng)絡(luò)安全技術(shù),提出了把機(jī)器學(xué)習(xí)算法應(yīng)用在入侵檢測中進(jìn)行分類,是把入侵檢測對(duì)應(yīng)成一個(gè)模式識(shí)別問題來進(jìn)行處理的;然后主要詳細(xì)討論和分析了Bayes網(wǎng)絡(luò)的學(xué)習(xí)和貝葉斯分類算法以及決策樹學(xué)習(xí)算法作為分類器的基本原理,為后繼的研究進(jìn)一步把機(jī)器學(xué)習(xí)方法更好地應(yīng)用在入侵檢測中做了一定的前期準(zhǔn)備工作。
[1]張義榮,肖順平,鮮明,等.基于機(jī)器學(xué)習(xí)的入侵檢測技術(shù)概述[J].計(jì)算機(jī)工程與應(yīng)用,2006,(2)∶7-10.
[2]楊善林,倪志偉.機(jī)器學(xué)習(xí)與智能決策支持系統(tǒng)[M].北京∶科學(xué)出版社,2004.
[3]朱芳芳,李志華,王士同.改進(jìn)的WSVM入侵檢測方法[J].計(jì)算機(jī)仿真,2008,(11):157-159.
[4]董琳,邱泉,于曉峰,等.數(shù)據(jù)挖掘?qū)嵱脵C(jī)器學(xué)習(xí)技術(shù)[M].北京∶機(jī)械工業(yè)出版社,2006.
A RESEARCH OF INTRUSION DETECTION METHOD BASED ON MACHINE LEARNING
WANG Shi-yi
(School of Information Engineering,Chaohu College,Chaohu Anhui 238000)
Intrusion detection is a kind of dynamic network security technology which has developed quickly in recent years.Appling the machine learning methods to the intrusion detection is a way of treating it as a pattern recognition and classification problem to deal with.Therefore,discussing the principles of classification of several machine learning methods can provide relevant ideas and methods for the following application of machine learning algorithm to the intrusion detection.
network security;machine learning;intrusion detection
TP393
B
1672-2868(2015)06-0025-03
責(zé)任編輯:陳 侃
2015-07-11
安徽省高校省級(jí)自然科學(xué)研究項(xiàng)目(項(xiàng)目編號(hào):KJ2012Z266);安徽省省級(jí)教學(xué)研究項(xiàng)目(項(xiàng)目編號(hào):2014jyxm331);巢湖學(xué)院博士科研啟動(dòng)基金資助項(xiàng)目
汪世義(1974-),男,安徽桐城人。巢湖學(xué)院信息工程學(xué)院,副教授,博士。研究方向:模式識(shí)別與智能計(jì)算。