无线传感器网络KIPSO欺骗攻击检测模型*

2016-10-17 07:27孙子文
传感技术学报 2016年7期
关键词:均值聚类阈值

陶 莉,孙子文,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算法不易陷入局部最优及其较快收敛速度的优点,从而解决现有攻击检测技术检出率不高的问题。

1 RSS与物理位置的相关性

假设网络中有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 算法基础

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 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 仿真与分析

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

5 结束语

目前在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

猜你喜欢
均值聚类阈值
基于K-means聚类的车-地无线通信场强研究
小波阈值去噪在深小孔钻削声发射信号处理中的应用
均值—方差分析及CAPM模型的运用
均值—方差分析及CAPM模型的运用
基于自适应阈值和连通域的隧道裂缝提取
比值遥感蚀变信息提取及阈值确定(插图)
基于高斯混合聚类的阵列干涉SAR三维成像
室内表面平均氡析出率阈值探讨
基于Spark平台的K-means聚类算法改进及并行化实现
基于改进的遗传算法的模糊聚类算法