孫 程,邢建春,楊啟亮,韓德帥
(解放軍理工大學(xué) 國防工程學(xué)院,江蘇 南京 210007)
基于改進(jìn)樸素貝葉斯的入侵檢測方法*
孫 程,邢建春,楊啟亮,韓德帥
(解放軍理工大學(xué) 國防工程學(xué)院,江蘇 南京 210007)
工業(yè)控制系統(tǒng)的網(wǎng)絡(luò)安全問題越來越嚴(yán)峻,遭到的入侵威脅也越來越復(fù)雜。伴隨著網(wǎng)絡(luò)的開放性、復(fù)雜性不斷增強(qiáng),入侵威脅正在不斷加深。為了抵御愈趨復(fù)雜和多樣的入侵威脅,需要設(shè)計高效的入侵檢測方法。樸素貝葉斯分類算法是一種有效而簡潔的分類算法,能較好地應(yīng)用于工業(yè)控制系統(tǒng)網(wǎng)絡(luò)的入侵檢測。但是它的屬性獨立性假設(shè)使得該方法無法表示屬性變量之間存在的關(guān)系,影響了它的分類效果。針對該缺陷,借鑒前人的經(jīng)驗,提出了一種改進(jìn)綜合加權(quán)系數(shù)的樸素貝葉斯分類算法(Compositive Weighted Naive Bayes Classification,CWNBC)。該算法既考慮了不同屬性取值對分類結(jié)果的影響,又考慮了屬性值的內(nèi)容對分類的影響,巧妙地引入了綜合加權(quán)系數(shù)。將該算法與其他幾種算法比較,經(jīng)實驗表明,該分類算法有較高的分類準(zhǔn)確率,能更好地適用于比較復(fù)雜的工業(yè)控制系統(tǒng)網(wǎng)絡(luò)的入侵檢測。
樸素貝葉斯;加權(quán)系數(shù);屬性值
網(wǎng)絡(luò)技術(shù)的飛速發(fā)展在給人們的生活帶來極大便利的同時,也給人們帶來了較大的安全威脅。隨著網(wǎng)絡(luò)的開放性和復(fù)雜性不斷增強(qiáng),工業(yè)控制系統(tǒng)(Industry Control System,ICS)面臨的安全問題也日益凸顯,遭到的入侵威脅不斷增大。
入侵檢測是ICS的網(wǎng)絡(luò)安全防御中重要的組成部分,是保護(hù)系統(tǒng)安全的重要手段,一直被國內(nèi)外專家學(xué)者所關(guān)注。入侵檢測技術(shù)是一種要找出能夠危害信息資源完整性、機(jī)密性和可用性的安全措施[1]。入侵檢測的目的是在海量的未知網(wǎng)絡(luò)事件數(shù)據(jù)中,將正常事件(Normal)和異常事件(Anomaly)精確分類,達(dá)到發(fā)現(xiàn)網(wǎng)絡(luò)攻擊事件和降低誤報警率的目的[2]。入侵檢測技術(shù)一般可分為兩種:誤用檢測和異常檢測。誤用檢測指的是根據(jù)已知的攻擊方法來預(yù)先定義入侵模式,通過判斷這些入侵模式是否會出現(xiàn)來完成檢測任務(wù)。誤用檢測的缺點在于其局限于已有知識的檢測范圍,不能檢測出已有知識之外的攻擊行為。異常檢測指的是根據(jù)資源的使用狀況或使用者的行為來判斷是否遭到入侵,而不是依據(jù)具體的行為是否出現(xiàn)作為檢測的標(biāo)準(zhǔn),相對而言,異常檢測的適用性比較強(qiáng),可以檢測出陌生的攻擊行為,不像誤用檢測那樣受限于已知的攻擊手段,其主要的缺陷是誤檢率較高,尤其在用戶較多、工作條件、系統(tǒng)參數(shù)、網(wǎng)絡(luò)結(jié)構(gòu)等各種因素時常變化的環(huán)境中[3-5]。目前,有較多的有效的入侵檢測分類模型被提出。如文獻(xiàn)[6]提出了結(jié)合誤用檢測與異常檢測的混合入侵檢測模型,文獻(xiàn)[7]提出了結(jié)合網(wǎng)絡(luò)協(xié)議分析技術(shù)和決策樹挖掘技術(shù)的一種新型模型,文獻(xiàn)[8-10]將其他學(xué)習(xí)算法運用于入侵檢測中,如支持向量機(jī)、遺傳算法、人工神經(jīng)網(wǎng)絡(luò)等。
為了提高樸素貝葉斯分類器的性能,使其能更好地適用于ICS網(wǎng)絡(luò)的入侵檢測,基于前人的研究,本文提出了一種改進(jìn)綜合加權(quán)系數(shù)的樸素貝葉斯分類算法(Competitive Weighted Naive Bays Classification,CWNBC),該算法是在傳統(tǒng)的樸素貝葉斯分類模型的基礎(chǔ)上加入了綜合加權(quán)系數(shù),該綜合加權(quán)系數(shù)融合了協(xié)方差理論與文獻(xiàn)[11]提出的加權(quán)系數(shù),這彌補(bǔ)了文獻(xiàn)[11]僅考慮屬性的頻數(shù)關(guān)系,而忽略了屬性值的內(nèi)容對分類的影響這一不足之處,使文獻(xiàn)[11]中原本簡潔高效的算法更加完善。
樸素貝葉斯分類算法是一種較為簡單而且有效的分類方法,它以貝葉斯定理作為理論基礎(chǔ),其性能與神經(jīng)網(wǎng)絡(luò)、決策樹等應(yīng)用較廣的算法相當(dāng),在某些領(lǐng)域中甚至可表現(xiàn)出更優(yōu)越的性能[12-13]。
樸素貝葉斯分類算法的分類原理是根據(jù)某個對象的先驗概率計算出其后驗概率,后驗概率最大的類則為該對象所屬的類。其工作流程如下:
(1)用特征向量來表示每個數(shù)據(jù)樣本。
(2)對原始數(shù)據(jù)樣本X進(jìn)行分類, 一般把X劃分到后驗概率值最大的類, 本質(zhì)上就是求P(Ci|X)的最大值。即:
(1)
(3)要求P(Ci|X)的最大值,只需使P(X|Ci)P(Ci)最大化即可。如果不知道先驗概率,一般認(rèn)為它們是等概率的,即P(C1)= P(C2)=…=P(Cn)。否則,可根據(jù)概率學(xué)的知識由先驗概率公式計算出:
(2)
其中,Si為訓(xùn)練樣本數(shù),S為訓(xùn)練樣本總數(shù)。
(4)在屬性集的屬性數(shù)比較多的情況下,為了減少計算時間,一般假設(shè)類條件相互獨立,即各個屬性值之間相互獨立。
(3)
若Ak是離散屬性,可由式(4)計算出概率:
(4)
其中,Sik表示屬性Ak的取值為xi且屬于類Ci的訓(xùn)練樣本的數(shù)目,而Si則表示類Ci中的訓(xùn)練樣本的總數(shù)。
若Ak為連續(xù)屬性,一般認(rèn)為它是屬于高斯分布的。
(5)對X進(jìn)行分類,需要計算每個類Ci的P(X|Ci)P(Ci),如果樣本X被分到類Ci,則需滿足如下條件:
P(X|Ci)P(Ci) >P(X|Cj)P(Cj),1≤j≤m,j≠i
(5)
其中m為類的總數(shù)。換言之,使P(X|Ci)P(Ci)獲得最大值的類Ci即為X所屬的類。
雖然樸素貝葉斯分類算法應(yīng)用簡單,分類準(zhǔn)確率相對較高,預(yù)測和學(xué)習(xí)的時間小于其他分類算法,但該算法有個理想的假設(shè),其假設(shè)每個屬性對給定類的影響?yīng)毩⒂谄渌膶傩?,而在現(xiàn)實中此假設(shè)是很難滿足的。因此,為了彌補(bǔ)該不足之處,研究人員先后提出多種加權(quán)樸素貝葉斯分類算法[14]。
人們試圖將樸素貝葉斯分類算法與屬性加權(quán)算法相結(jié)合,根據(jù)各屬性對分類影響的大小賦予不同的權(quán)重系數(shù),以此來提高樸素貝葉斯分類算法的準(zhǔn)確率。文獻(xiàn)[15]提出基于分類概率的樸素貝葉斯分類算法,使用樸素貝葉斯分類成功的概率作為加權(quán)系數(shù);文獻(xiàn)[16]提出基于粒子群算法的WNBC算法, 通過粒子群算法的自動搜索功能對現(xiàn)有數(shù)據(jù)和信息進(jìn)行學(xué)習(xí), 以數(shù)據(jù)集中所有數(shù)據(jù)各自權(quán)重的平均值作為加權(quán)系數(shù);文獻(xiàn)[11] 提出根據(jù)不同的屬性取值對分類結(jié)果的影響來設(shè)定加權(quán)系數(shù);文獻(xiàn)[14]中分別采用爬山算法、信息增益和蒙特卡羅技術(shù)來確定屬性的權(quán)值等。
3.1協(xié)方差屬性加權(quán)系數(shù)
在實際應(yīng)用中,事物的不同屬性對事物分類的影響是不同的,根據(jù)屬性的影響程度分為條件屬性和決策屬性。決策屬性指的是對分類有顯著影響的屬性。條件屬性指的是剩余的其他屬性。此外,不同的條件屬性與決策屬性的相關(guān)程度也是不同的。由決策屬性X和條件屬性Y組成的系統(tǒng)ρ反映了屬性X和Y的相關(guān)緊密度,ρ越大表明條件屬性Y對決策屬性X的影響越大,反之亦然。屬性之間的相關(guān)系數(shù)公式為:
(6)
為了確保權(quán)重系數(shù)為正,則設(shè)定權(quán)值為:
(7)
3.2 改進(jìn)綜合加權(quán)系數(shù)
通過對比以上多種方法,結(jié)合文獻(xiàn)[11]中提出的根據(jù)不同的屬性取值對分類結(jié)果的影響來設(shè)定加權(quán)系數(shù)的思想,本文提出了一種新的權(quán)值計算方法。
設(shè)NAk表示屬性Ak的取值個數(shù),N(Ak=m)表示屬性Ak取值為m的樣本對象的個數(shù), N(Ak=m∩Ci)表示屬性Ak取值為m且屬于類Ci的樣本對象個數(shù)。根據(jù)各屬性的不同取值對分類的影響設(shè)計權(quán)值, 加權(quán)系數(shù)公式表示為:
(8)
雖然式(8)根據(jù)每個屬性的不同取值對分類的影響計算權(quán)值, 但其考慮的是屬性值的頻數(shù)關(guān)系,沒有考慮屬性值的內(nèi)容對分類的影響。協(xié)方差理論主要利用屬性值的內(nèi)容來表達(dá)屬性之間的關(guān)聯(lián),因此把這兩種方法融合起來,會得到更加合理準(zhǔn)確的加權(quán)系數(shù)。
3.3 基于CWNBC的入侵檢測算法
從本質(zhì)上來說,入侵檢測的目的就是設(shè)計一個分類器,把收集到的數(shù)據(jù)信息分為正常和異常兩大類,然后對異常的數(shù)據(jù)進(jìn)行分析處理。基于CWNBC的入侵檢測流程如圖1所示。
圖1 基于CWNBC的入侵檢測流程圖
該算法的具體步驟如下:
(1)獲取原始數(shù)據(jù)集,對數(shù)據(jù)集進(jìn)行預(yù)處理,去除冗余屬性,對連續(xù)數(shù)值離散化;
(2)條件判斷:若是訓(xùn)練樣本數(shù)據(jù)集,則進(jìn)行第(3)步,若是需要分類的樣本數(shù)據(jù)則直接進(jìn)行第(5)步;
(3)統(tǒng)計分析數(shù)據(jù)集中的條件屬性和決策屬性。計算在決策屬性下其他的條件屬性的概率P(Y|X),進(jìn)而計算Cov(X,Y)、D(X)、D(Y),然后計算出
(4)統(tǒng)計數(shù)據(jù)集中每個屬性取值的個數(shù)以及每個值屬于某類的樣本數(shù),然后做如下計算:
(5)根據(jù)上面的計算結(jié)果,計算出改進(jìn)的綜合加權(quán)系數(shù):
(6)利用樸素貝葉斯分類器進(jìn)行結(jié)構(gòu)與參數(shù)學(xué)習(xí),獲得改進(jìn)的綜合加權(quán)樸素貝葉斯模型;
(7)用新模型對數(shù)據(jù)集進(jìn)行分類,獲得分類結(jié)果。
4.1 入侵檢測數(shù)據(jù)集
本文實驗數(shù)據(jù)采用的是KDD’99入侵檢測數(shù)據(jù)集,該訓(xùn)練數(shù)據(jù)集包含7周的網(wǎng)絡(luò)流量,有5 000 000條連接記錄;測試訓(xùn)練集包含2周的網(wǎng)絡(luò)流量,有2 000 000條連接記錄。該研究共模擬了 5大類網(wǎng)絡(luò)攻擊[17-18]。
4.2 結(jié)果與分析
為了驗證本文提出的算法的準(zhǔn)確性和高效性,進(jìn)行了以下實驗測試與分析。為了保證執(zhí)行的效率,隨機(jī)選取20 000條記錄用于本次實驗,并把20 000條連接記錄隨機(jī)分為5組,每組數(shù)據(jù)的30%作為訓(xùn)練數(shù)據(jù),70%作為測試數(shù)據(jù)。 實驗過程中搭建的環(huán)境平臺所使用的操作系統(tǒng)為Windows8,處理器為Inteli5,CPU頻率為1.9GHz,內(nèi)存為4GB,軟件工具為Weka。
在實驗中,通過Weka軟件自帶的工具對連續(xù)屬性進(jìn)行離散化和屬性約簡,得到最終的條件屬性有:(1)service;(2)flag;(3)src-bytes;(4)dst-bytes;(5)dst-host-srv-count;(6)diff-srv-rate。
應(yīng)用多種分類算法進(jìn)行實驗,實驗結(jié)果如表1所示。
表1 準(zhǔn)確率比較表 (%)
本實驗將改進(jìn)的樸素貝葉斯分類算法與其他分類算法在入侵檢測方面做了比較,從表1可以看出,本文提出的基于改進(jìn)樸素貝葉斯的分類算法相對于其他的分類算法在分類準(zhǔn)確率上有所提高,證明了本文提出的算法是有效可行的。
本文借鑒前人的一些經(jīng)驗和方法,針對不足之處做了適當(dāng)?shù)母倪M(jìn),提出了一種基于綜合加權(quán)系數(shù)的樸素貝葉斯分類算法。該算法彌補(bǔ)了樸素貝葉斯分類算法假設(shè)屬性獨立的不足之處,既考慮了屬性值的頻數(shù)與分類的關(guān)系,又考慮了屬性值的內(nèi)容對分類的影響。最后經(jīng)過實驗證明,本文提出的算法與其他分類算法相比,有效地提高了分類準(zhǔn)確率。但是,本算法仍然有待提高,加權(quán)系數(shù)仍然有待完善。下一步將繼續(xù)研究如何優(yōu)化加權(quán)系數(shù),進(jìn)一步提高分類的準(zhǔn)確率,以便適應(yīng)于更復(fù)雜多變的網(wǎng)絡(luò)數(shù)據(jù)。
[1] GOVINDARAJAN M,CHANDRASEKARAN R M.Intrusion detection using neural based hybrid classification methods[J].Computer Networks,2011,55(8):1662-1671.
[2] GARCIA-TEODORO P,DIAZ-VERDEJO J,MACIA-FERNANDEZ G,et al.Anomaly-based network intrusion detection:techniques,systems and challenges[J].Computers & Security,2009,28(1/2):18-28.
[3] MOHAMMAD M N,SULAIMAN N.MUHSIN O A.A novel intrusion detection system by using intelligent data mining in weka environment [J].Procedia Computer Science,2011,3(1):1237-1242.
[4] GUINDE N B,ZIAVRAS S G.Efficient hardware support for pattern matching in network intrusion detection [J].Computers & Security,2010,29(7):756-769.
[5] BHUYAN M H.BHATTACHARYYA D K,KALITA J K.Survey on incremental approaches for network anomaly detection[J].International Journal of Communication Networks and Information Security,2011,3(3):226-239.
[6] PANDA M.ABRAHAM A.PATRA M R.A dHybri intelligent approach for network intrusion [J].Procedia Engineering,2012,30(1):1-9.
[7] 楊杰,陳昕,萬劍雄.網(wǎng)絡(luò)協(xié)議分析與決策樹挖掘的入侵檢測模型研究[J]計算機(jī)應(yīng)用與軟件,2010,27(2):19-55.
[8] 徐永華,李廣水.基于距離加權(quán)模版約減和屬性信息熵的增量SVM入侵檢測算法[J].計算機(jī)科學(xué),2012,39(12):76-86.
[9] Li Liu,Zhang Guoyin,Nie Jinyuan,et al.The application of genetic algorithm to intrusion detection in MP2P network[J].Lecture Notes in Computer Science,2012,31(3):390-397.
[10] Wang Gang,Hao Jinxing,Ma Jian.A new approach to intrusion detection using aritificial neural networks and fuzzy clustering[J].Expert Systems with Applications,2010,37(9):6225-6232.
[11] 王行甫,杜婷.基于屬性選擇的改進(jìn)加權(quán)樸素貝葉斯分類算法[J].計算機(jī)系統(tǒng)應(yīng)用,2015,24(8):149-154.
[12] FRIDEMAN N, GEIGER D,GOLDSZMIDT M. Bayesian network classifiers[J]. Machine Learning, 1997,29(2-3):131-163.
[13] LANGLEY P,IBA W, THOMPSON K. An analysis of Bayesian classifiers[C]. In Proc. of the 10th National Conf. on Artificial Intelligence. Menlo Park: AAAI Press, 1992:223-228.
[14] ZHANG H,SHENG S.Learning weighted naive Bayes with accurate ranking[C].2004 Fourth IEEE International Conference on Data Mining(ICDM’04).IEEE,2004:567-570.
[15] 張步良.基于分類概率加權(quán)的樸素貝葉斯分類方法[J].重慶理工大學(xué)學(xué)報(自然科學(xué)版),2012,26(7):81-83.
[16] LIN J, YU J. Weighted naivebayes classification algorithm based on particle swarm optimization[C].2011 IEEE 3rd International Conference on Communication Software and Networks (ICCSN). IEEE,2011:444-447.
[17] STOLFO S J,LEE W,CHAN P K,et al.Dataming-based intrusion detectors:an overview of the Columbia IDS project[J].ACM SIGMOD Record,2011,30(4):5-14.
[18] 史美林,錢俊,許超.入侵檢測系統(tǒng)數(shù)據(jù)集評測研究[J].計算機(jī)科學(xué),2006,33(8):1-8.
Intrusion detection methods based on improved Naive Bayesian
Sun Cheng,Xing Jianchun, Yang Qiliang, Han Deshuai
(College of Defense Engineering, PLA University of Science and Technology, Nanjing 210007,China)
The network security of industry control system is becoming a significant issue as the intrusions are becoming more complicated and diversified. Due to increasing complexity and openness, it is exposed to more intrusions and becoming more vulnerable than ever.In order to resist diverse intrusions,more efficient intrusion detection methods need to be designed. Naive Bays classification algorithm is a sample and effective classification algorithm, which adapts to intrusion detection of industry control system network, but its attribute independence hypotheses makes it incapable to express the dependence among attributes, and affects its classification performance. Concerning this problem, we put forward an improved compositive weighted Naive Bayes classification algorithm based on the experience of the predecessors. The algorithm not only considers the effect on classification by the different attribute value, but also considers the effect on classification by the content of attribute value, and introduces the compositive weighted coefficient skillfully. Then we make a comparison between this algorithm and other algorithms. The result shows that the proposed algorithm has higher classification accuracy than other algorithms. And it can be beter applicable to the intrusion detection of complex industrial control system network.
Naive Bays;weighted coefficient;attribute value
江蘇省自然科學(xué)基金(BK20151451)
TP31
A
10.19358/j.issn.1674- 7720.2017.01.003
孫程,邢建春,楊啟亮,等. 基于改進(jìn)樸素貝葉斯的入侵檢測方法[J].微型機(jī)與應(yīng)用,2017,36(1):8-10,14.
2016-09-08)
孫程(1990-),男,碩士生,CCF會員,主要研究方向:軟件安全。
邢建春(1964-),通信作者,男,博士,教授,CCF高級會員,主要研究方向:復(fù)雜智能信息系統(tǒng)、信息物理融合系統(tǒng)。E-mail:820808595@qq.com。
楊啟亮(1975-),男,博士,副教授,CCF高級會員,主要研究方向:自適應(yīng)軟件、信息物理融合系統(tǒng)。