何保榮,李建榮,王超智
(1.鄭州牧業(yè)工程高等??茖W(xué)校 河南 鄭州 450011;3.河南省基礎(chǔ)教育教學(xué)研究室 河南 鄭州 450016)
隨著網(wǎng)絡(luò)的迅速發(fā)展,網(wǎng)絡(luò)攻擊的工具和手段多種多樣,而傳統(tǒng)的校園網(wǎng)絡(luò)所采用的安全技術(shù)大部分是信息加密、身份認(rèn)證、防火墻、安全路由器等,它們對(duì)校園網(wǎng)絡(luò)的安全已經(jīng)不能構(gòu)成有效地保障。所以,在不影響網(wǎng)絡(luò)性能的情況下,如何分析融合來(lái)自各方面的安全信息和數(shù)據(jù),提供一個(gè)良好的入侵檢測(cè)系統(tǒng),提高入侵檢測(cè)系統(tǒng)的準(zhǔn)確率和效率,實(shí)時(shí)保護(hù)校園網(wǎng)絡(luò)的誤操作、外部攻擊和內(nèi)部攻擊等,已經(jīng)成為目前保障校園網(wǎng)絡(luò)系統(tǒng)安全的關(guān)鍵問(wèn)題。
入侵檢測(cè)系統(tǒng)的分類有多種,按照不同的檢測(cè)方法,可分為異常檢測(cè)系統(tǒng)和誤用檢測(cè)系統(tǒng);按照不同的數(shù)據(jù)來(lái)源,可分為主機(jī)型和網(wǎng)絡(luò)型入侵檢測(cè)系統(tǒng)[1]。最近幾年,不斷出現(xiàn)了新的入侵檢測(cè)產(chǎn)品,同時(shí)也不斷提出新的入侵檢測(cè)方法理論,特別是把數(shù)據(jù)挖掘的相關(guān)理論應(yīng)用到入侵檢測(cè)系統(tǒng),為入侵檢測(cè)系統(tǒng)的研究開(kāi)拓了新的領(lǐng)域[2-3]。由于篇幅限制,本文主要討論基于分類算法的校園網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)研究。
數(shù)據(jù)挖掘是一項(xiàng)通用的知識(shí)發(fā)展技術(shù),從大量數(shù)據(jù)中發(fā)現(xiàn)未知的攻擊、提取有用的數(shù)據(jù)信息,是在入侵檢測(cè)中應(yīng)用數(shù)據(jù)挖掘的目的。在入侵檢測(cè)系統(tǒng)中經(jīng)常使用的數(shù)據(jù)挖掘算法,一般有關(guān)聯(lián)分析算法、序列分析算法和分類算法。在分類算法中,數(shù)據(jù)分類的目的是提取數(shù)據(jù)庫(kù)當(dāng)中數(shù)據(jù)項(xiàng)的特征屬性,生成分類模型(或函數(shù)),該算法的輸出結(jié)果就是分類器,該模型(或函數(shù))可以把數(shù)據(jù)庫(kù)中的數(shù)據(jù)映射到給定類別中的一個(gè)[4],從而應(yīng)用于數(shù)據(jù)預(yù)測(cè)。分類器的構(gòu)造方法有決策樹(shù)方法、統(tǒng)計(jì)方法、神經(jīng)網(wǎng)絡(luò)方法和粗糙集方法[1]。
本系統(tǒng)模型框架主要分以下幾個(gè)部分:數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理、構(gòu)建特征屬性、構(gòu)建分類器。
為了便于對(duì)入侵進(jìn)行更為精確的判斷,數(shù)據(jù)采集器主要負(fù)責(zé)收集來(lái)自計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中若干不同關(guān)鍵點(diǎn)的相關(guān)信息,全面了解網(wǎng)絡(luò)上的行為。
由于從網(wǎng)絡(luò)上截取的數(shù)據(jù)包均是Tcpdump 文件格式,而這種格式的數(shù)據(jù)不能直接使用分類算法進(jìn)行分析處理,所以需要首先對(duì)他們進(jìn)行數(shù)據(jù)的預(yù)處理,從中提取出比較有意義的特征數(shù)據(jù)。
對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,就是對(duì)正常的數(shù)據(jù)使用關(guān)聯(lián)規(guī)則算法、對(duì)包含入侵模式的數(shù)據(jù)使用序列規(guī)則算法來(lái)找到相應(yīng)的模式,把正常數(shù)據(jù)和入侵?jǐn)?shù)據(jù)進(jìn)行比較得到規(guī)則集,得到在入侵?jǐn)?shù)據(jù)中存在而在正常數(shù)據(jù)中不存在的那些“純?nèi)肭帧蹦J?,最后通過(guò)對(duì)這些“純?nèi)肭帧蹦J綐?gòu)建臨時(shí)的統(tǒng)計(jì)特征,使用分類器建立誤用檢測(cè)模型[5]。
在已經(jīng)得到“純?nèi)肭帧蹦J胶?,連接記錄中已經(jīng)存在一組固有的特征,根據(jù)從數(shù)據(jù)集中挖掘的關(guān)聯(lián)規(guī)則和場(chǎng)景規(guī)則,構(gòu)建附加的、更具有預(yù)言性的屬性,這些屬性也就是特征,被認(rèn)為與從正?;顒?dòng)區(qū)分入侵活動(dòng)相關(guān)。構(gòu)建附加特征就是對(duì)于每一個(gè)本質(zhì)特征計(jì)算相應(yīng)的數(shù)據(jù)。由于附加特征是在找出“純?nèi)肭帧蹦J交A(chǔ)上抽取的,因此更能揭示入侵的實(shí)質(zhì),得到的入侵檢測(cè)模型更有效。例如,在這一步可能增加一個(gè)記錄連接數(shù)的屬性,連接數(shù)表示:針對(duì)當(dāng)前連接記錄的目標(biāo)m地址,在前兩秒發(fā)起的連接。實(shí)際上,所有的網(wǎng)絡(luò)流量可以抽象為連接記錄,連接記錄的屬性存儲(chǔ)諸如源碑、目標(biāo)、源端口、目標(biāo)端口、開(kāi)始時(shí)間、持續(xù)時(shí)間、頭標(biāo)記等本質(zhì)連接屬性。在TCP/IP 網(wǎng)絡(luò)中,連接記錄表示為T(mén)CP 會(huì)話。
該步驟從擴(kuò)展的訓(xùn)練連接記錄(即增加新屬性的原來(lái)訓(xùn)練記錄集)構(gòu)建分類器。構(gòu)建特征和分類器學(xué)習(xí)的詳細(xì)過(guò)程分別如圖1 和圖2 所示。
圖1 特征構(gòu)建Fig.1 Feature construction
圖2 分類器學(xué)習(xí)Fig.2 Classifier learning
1)用戶獲得訓(xùn)練連接記錄,把它們分為正常連接記錄和入侵連接記錄。
2)從正常連接記錄和入侵連接記錄中獨(dú)立挖掘關(guān)聯(lián)規(guī)則和場(chǎng)景規(guī)則。比較這些規(guī)則,所有包含入侵連接記錄的規(guī)則形成入侵模型。
3)大多數(shù)自動(dòng)程序僅采用入侵模式去獲得意味著入侵行為的額外屬性,這些屬性是與當(dāng)前連接記錄具有某些相同屬性值的連接記錄計(jì)數(shù)、平均值和百分比。
4)對(duì)原來(lái)的訓(xùn)練連接記錄添加新創(chuàng)建的連接記錄屬性。
5)構(gòu)建分類器,學(xué)習(xí)怎樣從入侵連接記錄中區(qū)分正常連接記錄。該誤用入侵檢測(cè)系統(tǒng)的分類器就是基于數(shù)據(jù)挖掘技術(shù)的入侵檢測(cè)系統(tǒng)的最終產(chǎn)品。
基于分類算法的誤用入侵檢測(cè)系統(tǒng)所采用的技術(shù)比人工知識(shí)工程更系統(tǒng)、更自動(dòng)化。但是,值得指出的是,它嚴(yán)重依賴于專家知識(shí)。例如,根據(jù)專家知識(shí)對(duì)挖掘過(guò)程產(chǎn)生的關(guān)聯(lián)規(guī)則和場(chǎng)景規(guī)則進(jìn)行修剪,同樣,特征構(gòu)建也僅增加那些專家認(rèn)為很有可能與入侵相關(guān)的屬性,此外,對(duì)不同的攻擊類型需要構(gòu)建獨(dú)立的分類器,隨后對(duì)這些分類器進(jìn)行整合,最后根據(jù)領(lǐng)域知識(shí),手工定義合適的總結(jié)包載荷特征。
決策樹(shù)算法是一種歸納學(xué)習(xí)算法,它繼承了ID3 算法的全部?jī)?yōu)點(diǎn),它先從所有的事例中選取一部分構(gòu)造決策樹(shù),再用剩下的事例測(cè)試決策樹(shù)并對(duì)它進(jìn)行調(diào)整,它既能處理離散類型的屬性,也能處理連續(xù)類型的屬性,還可以對(duì)屬性的取值集合進(jìn)行等價(jià)類劃分。
決策樹(shù)算法采用分而治之的策略,采用信息增益來(lái)進(jìn)行屬性的選取。其計(jì)算方法如下:
如果目標(biāo)屬性具有C個(gè)不同的值,則數(shù)據(jù)樣例集S 相對(duì)于C個(gè)狀態(tài)的分類的熵為公式(1):
如果A 是S 中的一個(gè)屬性,Values(A)表示屬性A 所有可能的集合,Sv是S 中屬性A 的值為v 的子集,則屬性A 相對(duì)于樣例集合S 的信息增益Gain(S,A)則被定義為公式(2):
我們知道了信息增益是算法用以增長(zhǎng)樹(shù)的每一步中選取最佳屬性的度量標(biāo)準(zhǔn)。該制約大的屬性,說(shuō)明這個(gè)屬性的能力就越強(qiáng)。為了加快該值的計(jì)算速度,我們現(xiàn)在改進(jìn)如下:
因?yàn)槲覀兌贾溃绻鹸 很小,則有l(wèi)n(1+x)≈x,所以有公式(3):
又因?yàn)閘og2Pi=lnPi/ln2,則有公式(4):
由此我們可以看出計(jì)算復(fù)雜度顯著降低了,這樣無(wú)疑就加快了速度。
校園網(wǎng)絡(luò)環(huán)境的復(fù)雜化使得僅用傳統(tǒng)的數(shù)據(jù)加密、防火墻等技術(shù)已經(jīng)不能實(shí)現(xiàn)對(duì)校園網(wǎng)絡(luò)的完全保護(hù)。本文通過(guò)入侵檢測(cè)技術(shù)的研究,提出了一種基于分類算法的關(guān)于誤用檢測(cè)和異常檢測(cè)的入侵檢測(cè)系統(tǒng)模型框架,并對(duì)決策樹(shù)算法進(jìn)行了改進(jìn),從而降低了誤報(bào)率和漏報(bào)率,提高了入侵檢測(cè)系統(tǒng)的檢測(cè)率。盡管近年來(lái)入侵檢測(cè)技術(shù)取得了較快的發(fā)展,出現(xiàn)了很多新的檢測(cè)模型和檢測(cè)算法,但是要開(kāi)發(fā)出實(shí)用的系統(tǒng)仍然需要進(jìn)一步的研究、試驗(yàn)。
[1]黃辰林.基于分布自治代理的層次入侵檢測(cè)系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程與應(yīng)用,2001(6):47-49.HUANG Chen-lin.Level intrusion detection system design based on autonomous agent[J].Computer Engineer and Applications,2001(6):47-49.
[2]張國(guó).一種基于網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009(25):70-72.ZHANG Guo.A network-based intrusion detection system[J].Micro Computer Information,2009(25):70-72.
[3]張杰,戴英俠.入侵檢測(cè)系統(tǒng)技術(shù)現(xiàn)狀及其發(fā)展趨勢(shì)[J].計(jì)算機(jī)與通信,2002(6):28-32.ZHANG Jie,DAI Ying-xia.The status quo and trend of intrusion detection system technology[J].Computer andCommunication,2002(6):28-32.
[4]曾昭蘇,王鋒波.基于數(shù)據(jù)開(kāi)采技術(shù)的入侵檢測(cè)系統(tǒng)[J].自動(dòng)化博覽,2002(8):29-31.CENG Zhao-su,WANG Feng-bo.Intrusion detection system using data mining technology[J].Automation Panorama,2002(8):29-31.
[5]田大新,劉衍珩,李賓,等.基于動(dòng)態(tài)分類算法的入侵檢測(cè)系統(tǒng)[J].吉林大學(xué)學(xué)報(bào):信息科學(xué)版,2006(2):71-73.TIAN Da-xin,LIU Yan-yan,LI Bin,et al.Intrusion detection system based on dynamic classification algorithm[J].Journal of Jilin University:Sciece Edition,2006(2):71-73.
[6]關(guān)心,王新.基于數(shù)據(jù)挖掘的入侵檢測(cè)系統(tǒng)研究[J].信息技術(shù),2007(10):100-103.GUAN Xin,WANG Xin.The research of intrusion detection system based on data mining[J].Information Technology,2007(10):100-103.