徐小龍++高仲合++韓麗娟
摘要:無線傳感器網(wǎng)絡(luò)的安全問題日益引起人們的關(guān)注。這種網(wǎng)絡(luò)有一些使它容易受到攻擊的特點(diǎn),如露天傳輸和無固定基礎(chǔ)設(shè)施的自組織性。文章為無線傳感器網(wǎng)絡(luò)提出了一種混合輕量級入侵檢測模型。該模型利用基于簇的體系結(jié)構(gòu)來降低能耗,采用基于支持向量機(jī)的異常檢測算法和一組簽名規(guī)則來檢測惡意行為,并進(jìn)行整體的輕量級入侵檢測。仿真結(jié)果表明,該模型可以有效地檢測異常事件,具有較高的檢出率和較低的誤報率。
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);入侵檢測;支持向量機(jī);簽名攻擊
中圖分類號:TP393
文獻(xiàn)標(biāo)識碼:A
DOI: 10.3969/j.issn.1003-6970.2016.01.004
本文著錄格式:徐小龍,高仲合,韓麗娟.一種高效的無線傳感器網(wǎng)絡(luò)混合入侵檢測模型[J].軟件,2016,37(01):14-17
0 引言
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)是近年來的熱門研究領(lǐng)域之一。無線傳感器網(wǎng)絡(luò)自身的一些特點(diǎn)如能量有限、低功耗計算、無線通信等使它們面臨許多安全威脅。當(dāng)攻擊者位于網(wǎng)絡(luò)的內(nèi)部時,作為第一道防線的防火墻是無效的。入侵檢測系統(tǒng)(lntrusion Detection System,IDS)是第二道網(wǎng)絡(luò)安全防線,可以對來自內(nèi)部和外部的攻擊進(jìn)行檢測和預(yù)防。為有線網(wǎng)絡(luò)和ad hoc網(wǎng)絡(luò)設(shè)計的入侵檢測系統(tǒng)不能直接用于無線傳感器網(wǎng)絡(luò),因此有必要為無線傳感器網(wǎng)絡(luò)設(shè)計一種特定的入侵檢測系統(tǒng),并且要充分考慮到無線傳感器網(wǎng)絡(luò)自身的特點(diǎn)。文章的組織如下:第一章介紹了相關(guān)研究工作。第二章提出了無線傳感器網(wǎng)絡(luò)的安全架構(gòu)。第三章介紹了該IDS應(yīng)對攻擊的算法。第四章對該方案的性能進(jìn)行分析。最后得出結(jié)論并對未來的工作進(jìn)行展望。
1 相關(guān)研究
在相關(guān)文獻(xiàn)中,有一部分將異常檢測技術(shù)和基于簽名的檢測技術(shù)結(jié)合起來以獲得這兩種檢測技術(shù)的優(yōu)點(diǎn)。文獻(xiàn)[3]提出了一種基于簇的分層入侵檢測系統(tǒng),在每個簇頭(Cluster-Head,CH)中安裝一個入侵檢測代理。代理有三個模塊:一個監(jiān)督學(xué)習(xí)模塊,一個基于規(guī)則的異常檢測模塊和一個決策模塊。仿真結(jié)果表明這種模型有較高的檢出率和較低的誤報率。然而這種方案的主要缺點(diǎn)是:入侵檢測系統(tǒng)只運(yùn)行在靜態(tài)的簇頭節(jié)點(diǎn)中,如果入侵者集中力量攻破這個節(jié)點(diǎn),網(wǎng)絡(luò)就會隨之受到破壞。并且這種檢測機(jī)制的實(shí)現(xiàn)需要在簇頭節(jié)點(diǎn)進(jìn)行大量的計算,從而會減少網(wǎng)絡(luò)的生存期。文獻(xiàn)基于Roman等人的模型為無線傳感器網(wǎng)絡(luò)提出了一種混合輕量級入侵檢測系統(tǒng)。這種入侵檢測方案利用基于簇的協(xié)議構(gòu)建了一個分層網(wǎng)絡(luò),并提出了一種基于異常模型和誤用檢測技術(shù)的入侵檢測框架。在他們的方案中,入侵檢測代理由本地代理和全局代理兩個檢測模塊組成。同一節(jié)點(diǎn)中的兩個代理互相合作以達(dá)到更高的檢測精度。然而這種方案的缺點(diǎn)是簽名特征急劇增加,可能導(dǎo)致節(jié)點(diǎn)內(nèi)存過載。文獻(xiàn)提出了一種混合輕量級的分布式無線傳感器網(wǎng)絡(luò)入侵檢測系統(tǒng)。該入侵檢測系統(tǒng)采用了誤用檢測和異常檢測相結(jié)合的方法。它由一個中央代理和若干本地代理組成,中央代理利用數(shù)據(jù)挖掘技術(shù)進(jìn)行高精度的入侵檢測,本地代理在遠(yuǎn)端進(jìn)行輕量級異常檢測。
基于以上這些混合模型,文章提出了一種高效的輕量級無線傳感器網(wǎng)絡(luò)入侵檢測系統(tǒng)。目標(biāo)是實(shí)現(xiàn)一種結(jié)合了基于異常和基于簽名模型優(yōu)點(diǎn)的新型入侵檢測模型,該模型能夠超越前面提到的幾種混合模型。
混合入侵檢測系統(tǒng)(Hybrid Intrusion DetectionSystem,HIDS)能夠達(dá)到高檢出率和低誤報率這一目標(biāo)。該模型使用基于支持向量機(jī)(Support VectorMachine,SVM)的異常檢測技術(shù)和一組由固定規(guī)則簽名表示的攻擊,以驗(yàn)證該異常檢測技術(shù)識別惡意行為的能力。該檢測方法被集成到一個基于簇的拓?fù)渲幸匝娱L網(wǎng)絡(luò)生存期。這是通過選擇一個已知節(jié)點(diǎn)作為族首,由它將節(jié)點(diǎn)數(shù)據(jù)匯聚后傳給基站(Base Station,BS)來實(shí)現(xiàn)的。簇頭就像一個本地基站傳感器,在任何給定的時間,每個節(jié)點(diǎn)都以一定的概率當(dāng)選為簇頭。我們提出了一種基于簇的架構(gòu),將傳感器陣列分成多個組,每個組包含一個簇頭。在這種體系結(jié)構(gòu)中,每個節(jié)點(diǎn)只屬于一個簇,簇在整個網(wǎng)絡(luò)中按地理位置分布。簇頭的使用可以減少網(wǎng)絡(luò)能量消耗,提高網(wǎng)絡(luò)生存期。圖1顯示了該混合型入侵檢測系統(tǒng)的體系結(jié)構(gòu)。
2.1 簇頭選舉與布局策略
簇頭是根據(jù)節(jié)點(diǎn)的能量動態(tài)選出的。由基站宣布簇頭的選舉過程,簇頭通過公式Vi(t) =[lnitial-Ei(t)]/r來計算剩余能量,其中Initial表示初始能量,E;(t)表示剩余能量,r是簇頭選擇的當(dāng)前輪次?;靖鶕?jù)得到的值計算平均值和平均偏差,簇頭向節(jié)點(diǎn)宣布選舉的程序。老的簇頭廣播一條消息宣布權(quán)力的撤銷,新簇頭向傳感器節(jié)點(diǎn)發(fā)送警報消息。簇頭負(fù)責(zé)對簇中的其他成員進(jìn)行身份認(rèn)證,而基站負(fù)責(zé)對簇頭進(jìn)行認(rèn)證。由于電池壽命和資源有限,每個代理都僅在被需要時激活。代理分為本地代理和全局代理。
本地代理:本地代理模塊負(fù)責(zé)監(jiān)控傳感器節(jié)點(diǎn)發(fā)送和接收的信息。節(jié)點(diǎn)將特定的惡意節(jié)點(diǎn)攻擊行為存放在它的內(nèi)部數(shù)據(jù)庫中。當(dāng)網(wǎng)絡(luò)剛開始組織時,傳感器節(jié)點(diǎn)沒有任何關(guān)于惡意節(jié)點(diǎn)的信息。無線傳感器網(wǎng)絡(luò)部署后,簽名數(shù)據(jù)庫逐漸構(gòu)建起來。惡意節(jié)點(diǎn)數(shù)據(jù)庫中的條目被創(chuàng)建并被簇頭傳播到每個節(jié)點(diǎn)。
全局代理:全局代理監(jiān)聽它的鄰居節(jié)點(diǎn)的通信。由于無線網(wǎng)絡(luò)的廣播特性,每個節(jié)點(diǎn)可以接收到所有通過其無線電范圍內(nèi)的數(shù)據(jù)包。全局代理必須有它的鄰居節(jié)點(diǎn)的信息來監(jiān)視數(shù)據(jù)包。我們使用本地監(jiān)測機(jī)制和預(yù)定義規(guī)則來監(jiān)視數(shù)據(jù)包。如果監(jiān)視節(jié)點(diǎn)發(fā)現(xiàn)其鄰居節(jié)點(diǎn)中可能出現(xiàn)的安全漏洞,它們就創(chuàng)建一個警報并發(fā)送到簇頭。簇頭收到警報后通過閾值判定其是否可疑節(jié)點(diǎn)。兩種代理都建立在應(yīng)用層。圖2描述了該入侵檢測系統(tǒng)在網(wǎng)絡(luò)中的部署情況。
2.2 基于支持向量機(jī)的異常檢測
支持向量機(jī)是一種由Vapnik等人提出的機(jī)器學(xué)習(xí)算法,它是一種基于小樣本學(xué)習(xí)的分類器設(shè)計方法,適用于小樣本數(shù)據(jù)的分類。因此支持向量機(jī)算法適合對IDS中的高維數(shù)據(jù)進(jìn)行分類,數(shù)據(jù)是從物理層、MAC層和網(wǎng)絡(luò)層收集的。收集到的訓(xùn)練數(shù)據(jù)使用一個數(shù)據(jù)簡化過程進(jìn)行預(yù)處理,目的是減少它們的數(shù)據(jù)量以便于被SVM處理。接下來將訓(xùn)練數(shù)據(jù)矢量映射到高維空間并將問題轉(zhuǎn)化為空間中的線性分類問題。映射過后,SVM找出一個具有最大間隔的線性分類超平面。
假設(shè)線性可分樣本集為(xiw,Yi),給定訓(xùn)練數(shù)據(jù)集:
i=1,…,n,x∈Rd,y∈{+i,-1),在這里{1)表示正常,{-1)表示不正常。分類超平面方程是:
w'x+b=0
(1)
其中w是標(biāo)準(zhǔn)矢量,參數(shù)b是偏移量。超平面上的訓(xùn)練樣本被稱為支持向量,因?yàn)樗麄冎С肿顑?yōu)分類超平面。所以我們的問題用公式表述為:
服從于
分類函數(shù)可以如下描述:
最優(yōu)分類函數(shù)可如下描述:
這是核心函數(shù)并且ai是拉格朗日乘子。根據(jù)Kuhn-Tucker條件,與ai>0相對應(yīng)的xi稱作支持向量(Support Vectors,SVs)。在我們的上下文中,每個節(jié)點(diǎn)與它的單跳鄰居節(jié)點(diǎn)交流向量。這個過程完成后,最終的超平面被計算出來,所有節(jié)點(diǎn)使用相同的判別方法來將數(shù)據(jù)分為正常和異常兩類。因此SVM方法適合將入侵檢測系統(tǒng)中的高維數(shù)據(jù)進(jìn)行分類。與神經(jīng)網(wǎng)絡(luò)方法相比,SVM方法用更少的訓(xùn)練時間得到了更好的結(jié)果。SVM的另一個優(yōu)點(diǎn)是更低的泛化誤差概率。
2.3 基于簽名的模型
該模塊使用一個基于簽名的發(fā)現(xiàn)協(xié)議來檢測惡意節(jié)點(diǎn),以防止網(wǎng)絡(luò)被這些節(jié)點(diǎn)破壞。該協(xié)議的目的是在一組規(guī)則的基礎(chǔ)上將目標(biāo)的行為分成正常和異常兩類。在這里對每種攻擊有四條檢測規(guī)則。檢測選擇性轉(zhuǎn)發(fā)攻擊的規(guī)則是通過丟棄的數(shù)據(jù)包的數(shù)量和存在超過閾值的節(jié)點(diǎn)來定義的。檢測Hello泛洪攻擊的規(guī)則是IDS代理接收到的信號的強(qiáng)度超過規(guī)定的閾值。檢測黑洞攻擊的規(guī)則是根據(jù)丟包的數(shù)量和信號強(qiáng)度過高。檢測蟲洞攻擊的規(guī)則是信號強(qiáng)度超過閾值和沒有任何相鄰節(jié)點(diǎn)重傳來自對方的數(shù)據(jù)包。
2.4 決策模型
在協(xié)同作業(yè)過程中,簇頭應(yīng)用了一個簡單規(guī)則機(jī)制。如果被異常檢測技術(shù)檢測到的攻擊和預(yù)定義的攻擊者簽名之間沒有對應(yīng)關(guān)系,入侵檢測代理便向簇頭發(fā)送一個報告,然后采用一條快速規(guī)則來對可疑節(jié)點(diǎn)做出最后的判定。簇頭向管理員匯報該結(jié)果以幫助他們管理網(wǎng)絡(luò)并做出進(jìn)一步的修正。最后簇首發(fā)送一條消息給所有的入侵檢測系統(tǒng),于是它們便更新自己的簽名庫。圖3說明了決策模型中使用的規(guī)則。
3 混合檢測模型的性能
在這一部分,我們使用KDD99數(shù)據(jù)集來評估該入侵檢測模型的性能。我們研究當(dāng)網(wǎng)絡(luò)中IDS的數(shù)量增加時檢出率和誤報率的變化。最后將我們的模型與其它混合模型的性能進(jìn)行比較。為了評價所提出模型的有效性,采用了一組度量標(biāo)準(zhǔn)來進(jìn)行判定。
檢出率:表示檢測出的攻擊數(shù)占總攻擊數(shù)的比率。
誤報率:將正常連接誤判為異常行為的比率。
基于SVM的異常檢測與基于攻擊簽名的檢測相結(jié)合的模型能夠達(dá)到較高的檢出率(約98%)和較低的誤報率(約3%),表1顯示了該模型對四種攻擊行為的檢出和誤報情況。他四位作者Bin,Khanum,Yuan和Hai提出的混合模型進(jìn)行比較,著重分析檢出率和誤報率。圖4顯示了幾種無線傳感器網(wǎng)絡(luò)入侵檢測模型的性能比較。
通過圖4看出,我們提出的混合模型在檢出率和誤報率方面比其它模型更有優(yōu)勢。
4 結(jié)論
在文章中我們?yōu)闊o線傳感器網(wǎng)絡(luò)提出了一種混合入侵檢測模型。我們的入侵檢測系統(tǒng)使用了一種基于SVM的學(xué)習(xí)算法和一種基于攻擊簽名的檢測技術(shù)。這兩種技術(shù)的結(jié)合提供了一種具有高檢出率和低誤報率的入侵檢測系統(tǒng)。我們的檢測方法被整合在一個基于簇的拓?fù)渲?,以減少通信開銷,延長網(wǎng)絡(luò)生存期。在未來的研究工作中,我們將對更多的的攻擊方式進(jìn)行仿真以測試所提出模型的性能。