文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2011)01-0124-04
入侵檢測系統(tǒng),,就是按照一定的安全策略對網(wǎng)絡(luò)、系統(tǒng)的運(yùn)行狀況進(jìn)行監(jiān)視,,盡可能地發(fā)現(xiàn)各種攻擊企圖,、行為或者結(jié)果,以保證網(wǎng)絡(luò)系統(tǒng)資源的機(jī)密性,、完整性和可用性,。入侵檢測系統(tǒng)根據(jù)分析對象的不同,可以分為基于主機(jī)的和基于網(wǎng)絡(luò)數(shù)據(jù)包的入侵檢測系統(tǒng),。模式匹配方法[1-2] 入侵檢測系統(tǒng)中應(yīng)用廣泛,,該方法根據(jù)預(yù)先制定的模式檢測攻擊,可以有效地發(fā)現(xiàn)已知模式的攻擊,,但是不能發(fā)現(xiàn)未知模式的攻擊,。
數(shù)據(jù)挖掘,就是從大量數(shù)據(jù)中獲取有效,、潛在,、有用、新穎的模式的非平凡過程,。將數(shù)據(jù)挖掘方法應(yīng)用在入侵檢測系統(tǒng)中[3],可以有效地挖掘出新的模式,,發(fā)現(xiàn)新的攻擊。在基于主機(jī)的入侵檢測系統(tǒng)中已有很多研究,,也取得了不錯(cuò)的成果,。常用的方法有支持向量機(jī)[4] ,、隱馬爾科夫模型[5],、KNN[6]等。
基于網(wǎng)絡(luò)數(shù)據(jù)包的入侵檢測系統(tǒng)是將網(wǎng)絡(luò)數(shù)據(jù)包作為分析的對象,有數(shù)據(jù)量大,、數(shù)據(jù)變換快等特點(diǎn),,而傳統(tǒng)的數(shù)據(jù)挖掘方法在應(yīng)用中往往出現(xiàn)運(yùn)算時(shí)間復(fù)雜度過高,不能在有限時(shí)間內(nèi)處理完大量數(shù)據(jù)包的難題。
從IEEE802.11協(xié)議[7] 中可以發(fā)現(xiàn):在不同的階段,,網(wǎng)絡(luò)數(shù)據(jù)包的類型是完全不同的,,如認(rèn)證階段只有認(rèn)證報(bào)文,認(rèn)證階段結(jié)束后進(jìn)入連接階段,,只會出現(xiàn)連接報(bào)文,,在認(rèn)證階段后的任何階段都可以發(fā)生斷開認(rèn)證階段等,不同的階段是相繼發(fā)生但是階段間是相互獨(dú)立的。傳統(tǒng)的數(shù)據(jù)挖掘方法會將不同階段的數(shù)據(jù)包統(tǒng)一分析,,不僅會產(chǎn)生極大且無謂的計(jì)算量,,而且不能體現(xiàn)出階段性的特點(diǎn)。本文提出了一種分階段K鄰居數(shù)據(jù)挖掘方法,,可以有效地解決上述問題,。
該函數(shù)與節(jié)點(diǎn)本身的屬性和節(jié)點(diǎn)的內(nèi)部鄰居集有關(guān),而且不同屬性的內(nèi)部鄰居集對節(jié)點(diǎn)的內(nèi)部評價(jià)值的影響力不一樣,。
(2) 階段評價(jià)函數(shù):評價(jià)節(jié)點(diǎn)和該節(jié)點(diǎn)階段鄰居特征的函數(shù),。
該函數(shù)與節(jié)點(diǎn)的內(nèi)部評價(jià)值和節(jié)點(diǎn)的階段鄰居有關(guān),而且不同的階段鄰居對節(jié)點(diǎn)的外部評價(jià)值的影響力不一樣,。
2 KNS算法
應(yīng)用KNS方法的前提:對象可分為一定的階段,,階段之間相對獨(dú)立并且有序,同一階段中不同節(jié)點(diǎn)的內(nèi)部行為和階段行為應(yīng)該相似,。
在KNS算法開始之前,,需要對節(jié)點(diǎn)的各個(gè)屬性進(jìn)行篩選,選擇能夠?qū)?shù)據(jù)集分割成n個(gè)連續(xù)的階段的屬性作為階段屬性,,如果有幾個(gè)屬性都可以作為階段屬性,,則選擇其中分割的最均勻的屬性作為階段屬性。
KNS方法可分為學(xué)習(xí)算法和測試算法兩部分,。
首先通過對樣本數(shù)據(jù)集的學(xué)習(xí),,調(diào)整內(nèi)部影響權(quán)值w[k]和階段影響權(quán)值sc[n,n]。調(diào)整算法可以用自適應(yīng)濾波LMS(Least-Mean-Square)學(xué)習(xí)算法等,,由此得到階段對照評價(jià)集U[n],。然后輸入待測數(shù)據(jù)集,計(jì)算每個(gè)節(jié)點(diǎn)s的內(nèi)部評價(jià)值W(s)并最終得到階段評價(jià)值Sc(s),。將Sc(s)與該階段的對照評價(jià)集U[j]比較,,并將Sc(s)偏離U[j]的程度作為判斷結(jié)果的依據(jù)輸出。
KNS學(xué)習(xí)算法是先通過樣本數(shù)據(jù)集中的每個(gè)節(jié)點(diǎn)找到內(nèi)部鄰居集和階段鄰居集,,然后計(jì)算所有節(jié)點(diǎn)的內(nèi)部評價(jià)值W和階段評價(jià)值Sc并將Sc加入到評分集U[j]中,通過調(diào)整w[k]和sc[n,n]的值,,逐步縮小U[j]的范圍,,最終輸出U[j]作為KNS測試算法的對照評價(jià)集。
(2)KNS測試算法
Input w[k], sc[n][n]; U[n];
Input target data set S,;
foreach s in S
Switch(s(y))
Set s in section Mj ;
searchNeighbor(s, Mj);
for Mk before and after Mj
searchNeighbor(s, Mk);
compute W(s) Sc(s)
get distance(Sc(s) U[j] );
answer(s)=tooFar(Sc(s),U[j]);
output answer;
KNS測試算法比學(xué)習(xí)算法簡單很多,,只需在每個(gè)節(jié)點(diǎn)進(jìn)入時(shí),設(shè)置為相應(yīng)的階段并為它找到內(nèi)部鄰居和階段鄰居,,然后計(jì)算出內(nèi)部評價(jià)值W和階段評價(jià)值Sc,,最后將Sc與該階段對照評價(jià)集U[j]比較,輸出比較結(jié)果,。
綜上所述,,KNS方法整個(gè)流程如圖1所示。
3 基于WLAN網(wǎng)絡(luò)數(shù)據(jù)包的入侵檢測
無線局域網(wǎng)(WLAN)使用過程如圖2所示,。
每個(gè)終端(STA)在連接并使用WLAN的過程都可以按照圖2流程分為5個(gè)階段,,不同階段中所涉及的數(shù)據(jù)包的類型也是完全不同的,并且每個(gè)階段內(nèi)的數(shù)據(jù)包類型都是有限的,,如網(wǎng)絡(luò)發(fā)現(xiàn)階段數(shù)據(jù)包的類型有Beacon,、Probe Request和Probe Response三種,認(rèn)證階段只有Authentication一種等,。這是滿足分階段K鄰居方法應(yīng)用的前提,。
在實(shí)驗(yàn)中,每個(gè)獨(dú)立的包作為一個(gè)節(jié)點(diǎn),,數(shù)據(jù)包里的各個(gè)項(xiàng)的值作為該節(jié)點(diǎn)的屬性,。將上述階段再次按照不同的數(shù)據(jù)包類型分成更小的階段,每個(gè)階段中只包含一種類型的數(shù)據(jù)包,,同時(shí)將源地址和目的地址作為判斷是否階段鄰居的屬性依據(jù),。同類數(shù)據(jù)包中的其他屬性作為該階段的內(nèi)部屬性。
實(shí)驗(yàn)中,,先收集一定量的安全環(huán)境下的數(shù)據(jù)包,,作為樣本集合進(jìn)行KNS學(xué)習(xí),然后再將結(jié)果用于入侵檢測,,并將階段評價(jià)函數(shù)的偏離程度作為判斷是否有入侵的依據(jù),。
實(shí)驗(yàn)使用的評價(jià)函數(shù)有:
4 實(shí)驗(yàn)結(jié)果及分析
在實(shí)驗(yàn)室環(huán)境下進(jìn)行攻擊和檢測。實(shí)驗(yàn)分別用KNS方法和HMM方法進(jìn)行,。
(1) KNS方法
KNS方法檢測結(jié)果如表1所示,。
由表1可以發(fā)現(xiàn),KNS方法可以在較高檢測率的情況下保持較低的誤報(bào)率,。但是對于Probe Request 類型的攻擊,,由于STA Probe的比較沒有規(guī)律,STA可以在任何時(shí)候發(fā)出Probe Request并可以持續(xù)任意長的時(shí)間,然后在任何時(shí)間結(jié)束Probe,即開始認(rèn)證或離開WLAN(Probe Response也是類似),。對于這種類型的攻擊,,階段K方法盡管可以有著很高的檢測率,但是也有著較高的誤報(bào)率,。而對于Beacon Flood、Spoof Authentication和Spoof Association這幾種攻擊,,不但有很高的檢測率同時(shí)也有較低的誤報(bào)率。
(2) HMM方法
實(shí)驗(yàn)采用滑動(dòng)窗口HMM模型,,將WLAN數(shù)據(jù)包MAC頭部的二進(jìn)制碼作為分析對象,,取窗口大小為7,得到結(jié)果如表2所示,。
對比表1和表2可以發(fā)現(xiàn),,對于不同的攻擊類型,兩種方法的誤報(bào)率有高有低,。但是總體而言,,KNS方法的檢測率基本都高于HMM方法
(3) 運(yùn)算效率
采用KNS方法和HMM方法處理2 000個(gè)~20 000個(gè)數(shù)據(jù)包所用的時(shí)間如圖3所示。由圖可知,,KNS方法處理包的平均速度是HMM方法的2.5倍,,說明KNS方法有著快速處理大量實(shí)時(shí)網(wǎng)絡(luò)數(shù)據(jù)包的能力。
本文提出了一種可以體現(xiàn)對象階段性特點(diǎn)的數(shù)據(jù)挖掘KNS模型,。該方法將待測對象按照階段不同分為若干階段,,然后分別對階段內(nèi)部鄰居和階段鄰居的相關(guān)屬性進(jìn)行統(tǒng)計(jì)挖掘。如果待測對象滿足兩個(gè)條件:(1)可分為互相獨(dú)立且有序的階段,; (2)同一階段中不同節(jié)點(diǎn)的內(nèi)部行為和階段行為是相似的,則可以應(yīng)用該模型,。此外,還實(shí)驗(yàn)了KNS方法在基于WLAN網(wǎng)絡(luò)數(shù)據(jù)包的入侵檢測系統(tǒng)中的應(yīng)用,,并將結(jié)果與HMM方法的結(jié)果進(jìn)行了對比,,可以發(fā)現(xiàn)在檢測率和誤報(bào)率相當(dāng)?shù)那闆r下,KNS方法運(yùn)算效率高,可以在實(shí)時(shí)檢測中很好地應(yīng)用,。
在研究過程中發(fā)現(xiàn),,目前的KNS方法還存在許多不足,如階段內(nèi)部評價(jià)函數(shù)以及階段評價(jià)函數(shù)的設(shè)定還有有待改進(jìn),,當(dāng)前的函數(shù)略顯復(fù)雜,,后續(xù)工作只需要找到可以反映階段特點(diǎn)的更簡單的函數(shù),就可以進(jìn)一步改進(jìn)KNS算法的計(jì)算速度,。
參考文獻(xiàn)
[1] THOMPSON H H, WHITTAKER J,ANDREWS A M. Intrusion detection: perspectives on the insider threat[C].Computer Fraud & Security, 2004:13-15.
[2] HAN S J, CHO S B. Detecting intrusion with rule-based integration of multiple models[J]. Computer & Security, 2003, 22:613-623.
[3] PIETRASZEK T, TANNER A. Data mining and machine learning-toward reducing false positives in intrusion detection[J]. Information Security Technical Report,2005,10:169-183.
[4] ZHANG Z, SHEN H. Application of online-training SVMs for real-time intrusion detection with different considerations[J]. Computer Communications, 2005, 28:1428-1442.
[5] QIAO Y, XIN X. Anomaly intrusion detection method based on HMM[J]. Electonics Letters,2002,38(13):663-664.
[6] LIAO Y, VEMURI V R. Use of K-nearest neighbor classifier for intrusion detection[J]. Computer & Security, 2002, 21:439-448.
[7] IEEE802.11 Working Group.IEEE standard for information technology—telecommunications and information exchange between systems—local and metropolitan area networks—specific requirements Part 11:Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications.2007[EB/OL]. http://standards.ieee.org/getieee802/download/802.11-2007.pdf