陶 莉,孫子文,2*
(1.江南大學物聯網工程學院,江蘇無錫214122;2.物聯網技術應用教育部工程研究中心,江蘇無錫214122)
無線傳感器網絡KIPSO欺騙攻擊檢測模型*
陶莉1,孫子文1,2*
(1.江南大學物聯網工程學院,江蘇無錫214122;2.物聯網技術應用教育部工程研究中心,江蘇無錫214122)
針對無線傳感器網絡通常處于開放性環境中,極易遭受外界欺騙攻擊這一問題,設計了一種基于改進粒子群優化算法的K均值欺騙攻擊檢測模型。該模型將欺騙攻擊檢測描述為一個統計假設檢驗,基于接收信號強度空間與物理位置的相關性,利用不同位置節點接收信號強度的差異進行攻擊檢測;對接收信號強度進行聚類分析,計算類中心之間的距離,通過閾值檢測判斷節點是否受到欺騙攻擊。仿真結果表明,KIPSO欺騙攻擊檢測模型能在提高檢出率、增強報警可信度的同時,有效解決傳統聚類算法陷入局部極值的問題。
無線傳感器網絡;欺騙攻擊檢測;信號接收強度;KIPSO聚類算法
EEACC:7230;6150Pdoi:10.3969/j.issn.1004-1699.2016.07.017
惡劣環境中的無線傳感器網絡WSN(Wireless Sensor Network)極大可能遭受欺騙攻擊。攻擊者通過特殊途徑獲取合法節點的身份(MAC地址),改變自身身份偽裝成合法節點,從而進行欺騙攻擊,包括拒絕服務DoS(Denial of Service)攻擊、減少服務攻擊和中間人攻擊MITM(Man-in-the-middle)等[1]。傳統抵抗欺騙攻擊算法是基于加密技術的[2-3],但由于節點能量、內存有限,傳統安全機制在WSN中不能有效實施。
為降低網絡節點能耗,國內外學者利用處于物理層的接收信號強度RSS(Received Signal Strength)檢測欺騙攻擊[4],提出許多基于檢測技術的算法來抵抗欺騙攻擊[5-7]。文獻[5]提出基于高斯混合模型的方法,構建RSS配置文件來檢測欺騙攻擊。為檢測WSN中基于身份的攻擊,文獻[6]使用RSS信息構成的可靠節點標識符Signalprints來確定發送方的身份信息,從而抑制欺騙攻擊的進行。而文獻[7]提出DEMOTE(Detecting Mobile Spoofing attacksin Wireless Environments)系統來檢測移動節點環境下的欺騙攻擊。以上文獻均基于RSS對欺騙攻擊檢測進行研究,但也存在著問題:無法保證所采集的RSS值的真實性;攻擊檢測的檢出率不高而虛警率較高。針對檢出率不高的問題,文獻[8]提出一種檢測并定位WSN中多個欺騙攻擊者的方法,檢測時使用魯棒性好的中心點分割算法PAM(Partitioning Around Medoids)進行聚類。然而,PAM算法與粒子群優化算法PSO(Particle Swarm Optimization)相同,容易陷入局部極值[9],導致無論是使用PSO算法進行網絡安全日志文件數據挖掘、網絡入侵檢測[10-11],還是使用PAM算法進行攻擊檢測[8],最終的檢測性能提高并不明顯。
針對無線傳感網中現有欺騙攻擊檢測算法存在的檢出率不高的問題,提出一種基于改進粒子群優化算法的K均值KIPSO(K-means based on Improved Particle Swarm Optimization)欺騙攻擊檢測模型,該模型采用KIPSO算法對同一MAC地址節點的RSS數據進行聚類,再通過閾值判斷攻擊存在與否。將改進慣性權重更新方式的PSO算法用于K均值聚類算法,得到KIPSO聚類算法,利用KIPSO算法不易陷入局部最優及其較快收斂速度的優點,從而解決現有攻擊檢測技術檢出率不高的問題。
假設網絡中有n個信標節點,m個未知節點,每個未知節點的RSS向量都相當于一個n維空間中的點。圖1顯示了n=3時兩個物理位置的RSS向量,即m=2,可以看出同一物理位置節點的RSS向量在信號空間內是接近的,并且會在一個均值處上下波動的,而不同物理位置節點的RSS樣本之間存在一定的距離。

圖1 兩個物理位置的RSS向量


其中da j、db j分別表示節點a、b與信標節點 j之間的真實距離,
針對n個信標節點,節點a、b的RSS向量相當于n維信號空間中的兩個點,其RSS空間距離Dab可由式(3)計算:

①信標節點個數n=1
由式(3)推出:

當da j=db j即兩個節點處于同一物理位置時,由式(2)、式(4)推導出;當da j≠db j即兩個節點處于不同物理位置時,推導出
②信標節點個數n≥2
由式(3)推出:

根據χ2分布的推論[13]:隨機變量x1,x2,…,xn相互獨立,且同服從于,則隨機變量。因此,當兩個節點處于同一物理位置時,相互獨立且服從于,則隨機變量:

其中,信標節點個數n為χ2分布的自由度。
根據非中心χ2分布的定義[14]:隨機變量x1,x2,…,xn服從于,則隨機變量,非中心χ2分布參數因此,當兩個節點處于不同物理位置時,j=1,2,…,n服從于,則隨機變量:

其中,非中心χ2分布參數λ滿足:

兩種情況下X的概率密度函數分別表示為式(9)、式(10):



圖2 兩種情況下X的概率密度函數
攻擊檢測性能取決于閾值t的選取,如果t過大,則攻擊節點被誤判為合法節點的概率增大,即增大;如果t過小,則合法節點被誤判為攻擊節點的概率增大,即增大。選取恰當的閾值t后,檢測到兩個節點a、b處于不同位置的概率計算公式為式(13):

綜上所述,網絡節點的RSS與其物理位置存在著緊密的相關性,可以利用RSS空間距離對欺騙攻擊進行檢測。
2.1K均值算法

其中,Ci表示第i類集合,Zi是其類中心,Xj表示該類的其它樣本。

PAM[8]算法過程和K均值算法過程相似,唯一不同之處是:PAM算法使用的是類中最靠近中心的一個對象來代表該聚類,而K均值算法用質心來代表該聚類。但是,K均值算法與PAM算法都存在一個共同的缺點:隨機的初始值選取可能會導致不同的聚類結果,甚至存在著無解的情況;兩者都是基于目標函數的下降迭代算法,沿著能量減少的方向進行,使得算法極易陷入局部極值。
2.2KIPSO算法
針對K均值算法的缺點,將K均值算法和改進的粒子群優化算法結合,得到基于改進粒子群優化算法的K均值(KIPSO)聚類算法。
改進的粒子群算法采用基于聚類中心的編碼方式,即粒子的位置是由k個聚類中心組成的。迭代過程中,粒子通過式(16)、式(17)來調整自己的速度vid和位置Xid,并記錄粒子的個體極值Pid以及全局極值Pgd。

其中,d=1,2,…,n,vid表示粒子i在d維上的速度,ω為慣性權重,e1、e2是學習因子,r1、r2是區間內的隨機數。
學習因子e1和e2決定了粒子個體極值和全局極值對尋優軌跡的影響,反映了粒子群之間的信息交流程度,其取值范圍通常為。若e1值較大,e2值較小會使粒子過多處于局部范圍內搜索,導致算法收斂速度慢甚至無法收斂;相反,若e2值較大,e1值較小會促使粒子過早收斂到局部最小,從而導致算法尋優陷入局部極值[15]。因此,選取適中的e1,e2能夠協調粒子的個體認知能力和群體認知能力,滿足KIPSO算法整個尋優過程的需求。
慣性權重ω是粒子群優化算法中至關重要的一個參數,其大小決定了粒子對當前速度繼承的多少。ω較大時,全局搜索能力強,ω較小時局部搜索能力強。為了使得KIPSO算法前期的全局尋優能力強,后期局部搜索能力強,故對粒子群算法進行如下改進:隨著迭代次數t的增大,使ω由ωmax減小到ωmin,其更新公式為:

隨著ω的迭代下降,整個KIPSO聚類算法的搜索能力得到增強,從而不易陷入局部最優。
K均值聚類算法的實質是聚類使得類內離散度和Jc收斂至極小值,則本文根據類內離散度和Jc來構造粒子的適應度函數為:

其中N是粒子群大小,Jci表示第i個粒子對應k個聚類的離散度和。類內離散度和Jc越小,個體適應度值越大,則聚類的效果越好。
KIPSO聚類算法描述:
Step 1種群的初始化:將每個樣本隨機指派為某一類,作為最初的聚類劃分,并計算各類的聚類中心,作為初始粒子的位置編碼,計算粒子的適應度,并初始化粒子的速度。反復進行N次,共生成N個初始粒子群;
Step 2個體極值的更新:對每個粒子i,比較f(Xi)和Pid的適應度值,更新Pid;
Step 3全局極值的更新:對每個粒子i,比較f(Xi)和Pgd的適應度值,更新Pgd;
Step 4粒子的更新:根據式(16)和式(17)調整粒子的速度和位置,并且計算新的聚類中心,得到新的粒子群;
Step 5新個體K均值重新歸類:計算每個樣本關于各類的距離,按式(14)重新劃分;
Step 6按式(18)更新慣性權重ω,達到最大迭代次數則結束,否則轉Step 2。
本文KIPSO算法將改進粒子群算法用于K均值聚類算法,不但能夠解決K均值算法容易陷入局部最優的問題,同時,每代粒子信息的共享和自我適應度的更新還能夠使得聚類算法具有較快的收斂速度,從而實現K均值算法快速準確聚類的目的。KIPSO算法偽代碼如圖3所示。

圖3 KIPSO聚類算法偽代碼
3.1檢測模型
考慮一個隨機均勻部署的無線傳感器網絡,分層的網絡結構中,簇頭節點位置已知,為節點間提供可靠的通信連接,能夠滿足檢測性能需求。整個網絡節點發射功率相同,攻擊節點可以偽造自身MAC地址,并且只對一個合法節點進行欺騙攻擊。
KIPSO攻擊檢測模型采集屬于同一MAC地址節點的RSS數據,在信號空間中使用KIPSO聚類算法對其進行二分類(即k=2),所得類中心記作RSSi_c,i=1,2,…,k,按式(3)計算類中心距離Dc:

其中,i,j∈{1,2,…,k}。
本模型將欺騙攻擊檢測表示為一個統計假設檢驗,檢驗統計量為類中心距離Dc,檢驗準則為閾值τ,則零假設H0與其對立假設H1為:

零假設H0成立,表示樣本節點是合法節點,即該MAC地址節點未受到欺騙攻擊;對立假設H1成立,表示樣本節點是欺騙攻擊節點,即檢測到該MAC地址節點受到欺騙攻擊。
3.2檢測流程
圖4是KIPSO攻擊檢測流程。WSN網絡正常通信情況下,針對同一MAC地址的節點的RSS數據進行周期性采集,并且需保證采集時間足夠長。第二步,使用KIPSO算法聚類分析所采集的RSS數據,計算不同類別在信號空間中的類中心距離Dc。比較檢驗統計量Dc與檢驗準則t的大小,根據式(21)、式(22)進行統計假設檢驗。若Dc≤t,則零假設H0成立,該節點為合法節點;若Dc>t,則對立假設H1成立,該節點為欺騙攻擊節點。最終,完成一次樣本節點檢測。

圖4 KIPSO攻擊檢測流程圖
4.1仿真環境與參數設置
仿真環境采用Matlab 2012a,在1 000 m×1 000 m的區域內均勻隨機產生1 000個節點,隨機選取200個作為簇頭節點,其余800個為合法未知節點,節點通信半徑R=250 m。信號傳播模型中路徑損耗因子γ=4,陰影衰落,σ=4[6]。KIPSO算法參數設置:種群大小N=20,最大迭代次數tmax=100,e1=e2=2,

圖5 類中心距離的累積分布函數

圖6 不同閾值t下的兩種錯誤率
閾值t的確定原則:仿真網絡通信,在正常網絡環境下采集100個不同MAC節點的RSS樣本。另取100個節點并偽造其MAC地址與前100個節點相同,進行欺騙攻擊,采集RSS樣本。通過對兩個不同環境下的RSS樣本進行KIPSO聚類,計算并分析類中心距離Dc的累積分布函數,如圖5所示。根據漏警率和虛警率的計算式(11)、式(12),分別求出不同閾值τ下的漏警率和虛警率,結果如圖6所示,漏警率曲線與虛警率曲線的交點在13 dB處,此交點即為模式識別中的等錯率點。為保證檢測模型識別攻擊能力,同時又能夠提供足夠的報警可信度,本文選取等錯率點為閾值,即t=13 dB。
4.2仿真結果與分析
仿真網絡通信,在區域內隨機生成400個節點對網絡中的400個合法節點進行攻擊。采集所有不同MAC地址節點的RSS數據,各100組,即M=100,對采集的RSS數據進行聚類,判斷是否受到攻擊。仿真主要以檢出率和虛警率、ROC曲線、算法時間復雜度3個性能指標為評估依據,將KIPSO算法與傳統的K均值算法、PAM[8]算法作對比分析。
4.2.1檢出率和虛警率
攻擊檢測模型是從實例到預測類的映射,對于給定的分類器和實例,可能輸出有以下4種情況[16]:①正確肯定TP(True Positive) 實例為攻擊類,分類也為攻擊類;②錯誤否定FN(False Negative) 實例為攻擊類,分類為正常類;③正確否定TN(True Negative) 實例為正常類,分類也為正常類;④錯誤肯定FP(False Positive) 實例為正常類,分類為攻擊類。
選取檢出率TPR(True Positive Rate)和虛警率FPR(False Positive Rate)2個參數來評估算法的檢測性能,TPR表示檢測到的攻擊樣本數占攻擊樣本總數的比率,FPR表示誤報為攻擊的樣本數占正常樣本數的比率,具體計算公式如式(23)、式(24):

表1所示仿真結果為不同閾值情況下,三種算法的檢出率和虛警率。由表1數據可知:①閾值t= 13 dB時,由于KIPSO算法在K均值算法中引入了改進粒子群優化算法,改善了K均值算法的聚類性能,將K均值算法的檢出率由原來的76.75%提高到97.75%,而虛警率由原來的12.50%降低到4.50%。②閾值t=13 dB時,由于PAM算法易陷入局部極值,聚類所得Dc增大,導致PAM算法的虛警率高出KIPSO算法4%,這表明KIPSO算法全局搜索能力優于PAM算法,從而攻擊檢測性能更優。③隨著閾值t的增大,K均值算法的檢出率由原來的80.50%減小到72.50%,PAM算法的檢出率由原來的95.50%減小到90.45%,而KIPSO算法的檢出率減小幅度為4%,從而驗證了本文KIPSO算法檢測性能的優越性。

表1 檢出率和虛警率對比
圖7顯示了學習因子e1,e2對KIPSO算法檢測性能的影響。由圖7可以看出:①當e1較大e2較小或e2較大e1較小時,KIPSO算法的檢出率大都處于較低水平,如 e1=4,e2=1時檢出率低至 90%, e1=1,e2=4時檢出率約為91%,這表明較大的e1或e2降低了粒子的尋優能力,降低了算法的檢測性能。②當e1,e2大小適中時,算法的檢出率明顯升高,特別地,e1=e2=2時檢出率達到98%以上,這表明此時e1,e2均衡了粒子的個體認知能力和群體認知能力,滿足KIPSO算法尋優過程的需求。為了使得算法準確聚類、獲得較高的檢出率,本文選取e1=e2=2作為KIPSO算法的學習因子。

圖7 學習因子對KIPSO檢測性能的影響
4.2.2ROC曲線
操作特性曲線ROC(Receiver Operating Character)將檢出率TPR和虛警率FPR呈現在一起,ROC曲線下的面積越大,則檢測效果越好。圖8為不同算法的欺騙攻擊檢測性能ROC曲線。

圖8 欺騙攻擊檢測性能ROC曲線
由圖8可知:①相同FPR的情況下,KIPSO算法的TPR比K均值和PAM算法高。②相同TPR的情況下,KIPSO算法的FPR低于K均值和PAM算法。③KIPSO算法的ROC曲線下方面積相比于K均值和PAM算法更大,表明KIPSO算法不僅能夠改善K均值算法的聚類性能,還能改善PAM算法的缺陷,準確獲得聚類中心,從而有效實施欺騙攻擊檢測。
4.2.3算法時間復雜度
表2所示為不同算法的時間復雜度,其中每次需分類的樣本數M=100,類別數k=2,N和tmax分別是粒子群大小和最大迭代次數。本文仿真一次聚類時,k和N相對較小,顯然,K均值算法的時間復雜度最低,而比較PAM和KIPSO算法,,故KIPSO算法的時間復雜度遠小于PAM算法。

表2 算法時間復雜度
表3是聚類時不同算法在不同迭代次數下的運行時間,由表3可知,KIPSO算法的收斂速度和K均值算法相當,而PAM算法的迭代時間高達KIPSO算法的5倍,表明KIPSO算法在聚類時可以快速收斂速度,從而加快攻擊檢測的進行。

表3 算法迭代時間 單位:s
目前在WSN中基于攻擊檢測的防御模型已成為網絡安全領域的研究熱點。本文提出了一種KIPSO欺騙攻擊檢測模型,利用RSS空間與物理位置具有關聯這一特性,使用KIPSO聚類算法訓練不同節點的RSS數據,通過閾值判斷進行欺騙攻擊檢測。仿真實驗結果表明,本文的KIPSO算法可以有效地提高K均值聚類算法的聚類效果,同時解決PAM[8]算法陷入局部極值的問題。KIPSO欺騙攻擊檢測模型不僅具有較高的檢出率和較低虛警率,同時收斂速度也較PAM快,能夠大幅度降低網絡節點能耗。如何在檢測到欺騙攻擊的情況下對攻擊節點進行定位是今后進一步的研究工作。
[1] Madory D,Madory D.New Methods of Spoof Detection in 802.11b Wireless Networking[J].Master's Thesis,2006,47(5):1-5.
[2] 陳琳.基于中國剩余定理的傳感器網絡密鑰管理協議[J].傳感技術學報,2014,28(5):687-691.
[3] 趙巾幗,周波清,朱凌志,等.傳感器網絡基于動態密鑰池的密鑰建立方案[J].傳感技術學報,2015,28(10):1537-1544.
[4] Lee J H,Buehrer R M.Characterization and Detection of Location Spoofing Attacks[J].Journal of Communications and Networks,2012,14(4):396-409.
[5] Sheng Y,Tan K,Chen G,et al.Detecting 802.11 MAC Layer Spoofing Using Received Signal Strength[C]//INFOCOM 2008. The 27th Conference on Computer Communications.IEEE.IEEE,2008:1768-1776.
[6] Misra S,Ghosh A,Sagar P,et al.Detection of Identity-Based Attacks in Wireless Sensor Networks Using Signalprints[C]//Green Computing and Communications(GreenCom),2010 IEEE/ACM Int'l Conference on&Int'l Conference on Cyber,Physical and Social Computing(CPSCom).IEEE,2010:35-41.
[7] Yang Jie,Chen Yingying,Trappe W.Detecting Spoofing Attacks in Mobile Wireless Environments[C]//Sensor,Mesh and Ad Hoc Communications and Networks,2009.SECON'09.6th Annual IEEE Communications Society Conference on.IEEE,2009.1-9.
[8] Yang J,Chen Y,Trappe W,et al.Detection and Localization of Multiple Spoofing Attackers in Wireless Networks[J].IEEE Transactions on Parallel and Distributed Systems,2013,24(1):44-58.
[9] 姚麗娟,羅可,孟穎.一種新的k-medoids聚類算法[J].計算機工程與應用,2013,49(19):153-157.
[10]Fang Z,Qin B.Network Security Data Mining Based on Particle Swarm Optimization and K-Means Clustering Algorithm[J].Journal of Convergence Information Technology,2013,8(4):1-8.
[11]谷保平,許孝元,郭紅艷.基于粒子群優化的k均值算法在網絡入侵檢測中的應用[J].計算機應用,2007,27(6):1368-1370.
[12]倪巍,王宗欣.基于接收信號強度測量的室內定位算[J].復旦學報自然科學版,2005,43(1):72-76.
[13]歐俊豪,王家生,徐漪萍,等.應用概率統計[M].第2版.天津:天津大學出版社,1999:193-201.
[14]張德豐.MATLAB概率與數理統計分析[M].第2版.北京:機械工業出版社,2012:72-74.
[15]Kumar S,Chaturvedi D K.Tuning of Particle Swarm Optimization Parameter Using Fuzzy Logic[C]//2011 International Conference on Communication Systems and Network Technologies.IEEE Computer Society,2011:174-179.
[16]González-Castro V,Alaiz-Rodríguez R,Alegre E.Class Distribution Estimation Based on the Hellinger Distance[J].Information Sciences,2013,218(1):146-164.

陶莉(1990-),女,江蘇無錫人,在讀碩士研究生,研究方向為無線傳感器網絡;

孫子文(1968-),女,四川大竹人,博士,教授,主要研究方向為無線傳感網絡理論與技術、信息安全、模式識別、人工智能,sunziwen@jiangnan.edu.cn。
KIPSO Spoofing Attack Detection Model in Wireless Sensor Networks*
TAO Li1,SUN Ziwen1,2*
(1.School of Internet of Things Engineering,Jiangnan University,Wuxi Jiangsu 214122,China;2.Engineering Research Center of Internet of Things Technology Applications Ministry of Education,Wuxi Jiangsu 214122,China)
As wireless sensor networks(WSNs)are usually deployed in open environment,they are vulnerable to the spoofing attack.A K-means based on Improved Particle Swarm Optimization(KIPSO)spoofing attack detection model is designed to solve this problem.The model described the spoofing attack detection as a statistical hypothesis testing.Take advantage of the received signal strength(RSS)differences between locations to detect attack,which based on the spatial correlation of the location and the RSS space.Using KIPSO algorithm cluster the RSS in attack detection phase.Then calculate the distance between two centroids.Eventually,judging whether spoofing attack exist or not via the trained threshold.Simulation results indicate that KIPSO spoofing attack detection model can not only improve detection rate or strengthen the alarm credibility,meanwhile,effectively solve problem of traditional clustering algorithm trapped in local minima.
wireless sensor network(WSN);spoofing attack detection;received signal strength;K-means based on Improved Particle Swarm Optimization(KIPSO)cluster algorithm
TP393
A
1004-1699(2016)07-1049-07
項目來源:國家自然科學基金項目(61174032);江蘇省自然科學基金面上項目(BK20131107);中央高校基本科研業務費專項資金項目(JUSRP51510)
2015-12-07修改日期:2016-03-15