您所在的位置:e-works首页 > 工业自动化控制 > 传感器

无线传感器网络安全研究

发表时间:2008-8-22  特约撰稿人: 蔡东强 来源:e-works
近年来,随着微电子技术和无线通信技术的进步,推动并促进了无线传感器网络(WSN)的发展。本文简要介绍了传感器网络技术,针对无线传感器网络的特点,阐述它在通信过程中存在的安全威胁,分析了WSN可能遭受的攻击和防范这些攻击的安全策略及安全机制,并对相应的安全策略进行了研究,给出了一些见解,确保无线通信的安全。

    引言

    随着微电子技术、计算机技术和无线通信等技术的进步,推动了低功耗多功能传感器的快速发展,使其在微小体积内能够集成信息采集、数据处理和无线通信等多种功能。无线传感器网络(WSN)就是由部署在监测区域内的大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者[1]。它在军事、环境科学、医疗健康、空间探索和灾难拯救等领域有着广阔的应用前景。

    WSN除了无线网络中的一般性威胁,由于在物理上可接触,因此更加容易受到攻击。攻击者可以捕捉和威胁节点,而且可以控制有效的网络节点。传感器网络的目标是检测相关事件的发生,而不是实现节点间的通信。因此节点通常需要协作来进行信息的汇聚和处理。而传感器节点本身的处理能力、存储能力和通信能力通常相对较弱,导致传统的端到端加密机制不能用到WSN网络中,也导致了传统网络中的公钥加密不再适用,无法进行数字签名。因此,针对WSN的特点,本文主要阐述无线传感器网络在通信过程中存在的安全威胁、分析它的安全需求和采取的安全机制,结合先前的研究给出一些见解,以保证无线通信的安全性。

    1、无线传感器网络可能遭受的攻击

    我们采用攻击者的思路来分析无线传感器网络中可能存在的各种攻击行为。对于攻击者持有的设备是传感器节点情况,由于节点最初并没有加入网络,攻击者可以在网络外部利用节点实施攻击或想办法把节点加入网络再实施攻击。因此,攻击可分为以下几种:

    1.1 节点级外部攻击

    当攻击者俘获传感器节点时,一般可以做出2类攻击行为:一种是单纯在网络外部进行破坏,但并不加入网络;另一种是想办法加入到网络中再进行攻击。

    (1)单纯在网络外部进行破坏

    a. 无线链路信道中的干扰、窃听、注入、重放。假设WSN和攻击者操控的攻击节点在同一个频段工作,那么就可以利用传统网络攻击嗅探器(Sniffer)的原理截获数据包,并对所截获的数据包进行分析和篡改。

    b. 创建路由环。这种攻击是通过改变网络中的节点ID,使其脱离原先预匹配节点的覆盖范围,然后向其它节点发送一个RREP消息,其中包含了一个到目的节点的跳计数值,这个计数值小于原来发送的值,这样,节点就改变了它到目的节点的路由,形成一个新的路由。经过多次上述的路由改变,就会形成一个路由环,这样它们就不能与外界实现通信。       

    (2)从网络外部加入到网络中

    a. 篡改路由序列号。节点根据目的路由序列号值的大小判断路由是否失效,它认为目的路由序列号值最大的节点是最新请求节点。根据这一原理,攻击者通过窃听,可以获得终端节点在请求建立路由时发布的目的序列号。在新路由发现过程中,攻击者可以伪造一个比终端节点发布的目的序列号值大的数,邻居节点读取攻击者发来的信息,发现目的序列号值更大,就会认为原来路由失效,选择攻击者为新路由。这样,攻击者加入到路由中。

    b. 篡改路由跳计数。它是根据跳计数来判断最短路径的路由协议。这些路由算法认为跳计数最小的路径为最优路径。在路由响应阶段,攻击者窃听路由请求中两邻接节点间的跳计数信息,并把它改成1个较小的值发给邻接节点,邻接节点会认为攻击者路由更短。这样,攻击者就可以加入路由中。

    1.2 节点级内部攻击

    在攻击者控制的节点加入网络内部后,可以实施如下种类攻击:

    (1)节点级Sinkhole攻击

    Sinkhole攻击[2]指恶意节点想办法制作1个高效的路由,让周围节点信息的传送都经过这个路由,正常状态下它应该正确转发所有从邻居节点传来的数据包。但攻击节点拒绝转发所有的数据包,这就造成一个信息黑洞(Black Hole),这是Sinkhole的一种特例。更多情况下,它会选择性的转发数据包。这是因为在大部分路由协议中,都会有路由维护机制。所以Sinkhole主要是选择性转发数据包。

    (2)Sybil攻击

    Sybil攻击[3]是单个节点伪造多个身份进行攻击。恶意节点伪造出它是大量节点的假象,在网络中进行欺骗。攻击后,恶意节点幻化出许多Sybil节点,单独完成了路由,正常节点被忽略了。Sybil攻击的实现形式有2种:① 通过伪造来实现多身份。② 通过偷窃来实现多身份。

    (3)信任欺骗

    信任欺骗是攻击节点窃听通信链路,并将衰落的信号中继重传,造成死亡的节点还存活或弱的链路是强的链路的假象。

    2、DOS攻击与能源攻击

    (1)DOS攻击

    拒绝服务DOS(Denial of Service)攻击[4]是攻击者通过欺骗伪装及其他手段,主要用于破坏网络的可用性,减少、降低网络或系统执行某一期望功能能力的任何事件。如中断、颠覆或毁坏传感器网络,另外还包括硬件失败、软件bug、资源耗尽、环境条件等。防御DOS攻击的方法没有一个固定的方法,它随着攻击者攻击方法的不同而不同。一些跳频和扩频技术可以用来减轻网络堵塞问题,适当的认证可以防止在网络中插入无用的信息。然而,这些协议必须十分有效,否则它也会被用来当作DOS攻击的手段。

    (2)能量攻击

    能量攻击是针对节点能量的有限性,将耗尽节点的能量作为目的的攻击,通过发送和传递虚假信息及回环转发信息来耗尽节点的能量,导致节点不能工作。所以,对于无线传感器网络来说,对抗能源攻击的主要策略是:① 网络的路由算法必须要考虑到传感器节点的特点:存储容量有限、计算能力有限和无限电发射距离有限。② 在网络各个层次采取防止DOS攻击的相应策略。③ 采取有效预防节点自私行为的策略。

    3、无线传感器网络的安全机制

    由于各类攻击都有具体的不同攻击方式和手段,针对不同的攻击需要不同的防御措施和相应的安全机制。在参考文献[5]的基础上,对WSN各个网络层次的安全部署如表1所列。

表1 无线传感器网络的安全部署

    下面分别对上述的几种安全机制加以描述,通过先前的研究成果并结合具体的实际给出一些见解。

    ① 加解密:加解密是保证安全通信的基础。无线传感器网络中需要源认证、数据认证、身份认证、密钥管理来保证数据的机密性、完整性和不可抵赖性。在这些认证和密钥管理中,也都离不开加解密。由于无线传感器网络有限的计算能力和存储能力,所以只能使用对称密钥的分组加密算法。AES算法和DES算法由于自身的缺陷都不能有效的应用到无线传感器网络中;流密码RC4算法用于加密/解密运算,相比于块密码来说有一个较低复杂度的可靠运算,但是由于RC4算法加密是采用xor运算,所以,一旦子密钥序列出现重复,密文就有可能被破解。采用RC5[6]算法是切实可行的,它运算方法简单高效,不需要很大的表支持,最重要的是可定制加密算法,能对于要求不同、节点能力不同的应用可以选择不同的定制参数,它的加密过程是数据相关的,多种算法混合运算,有很强的抗差分攻击和线性攻击能力。所以能够在一定程度上满足无线传感器网络加解密的需要。

    ② 认证:认证可以分为信息认证和实体认证。对于实体认证,基于低指数级RSA的TinyPK[7]协议是采用分级的思想来执行认证的不同操作部分,但它也有缺点,采用单一的认证,如果单个节点被捕获,那么整个网络都将变的不安全。强用户认证协议[8]可以在一定程度上解决这个问题,但是它也有一些缺点,如节点能量消耗过大,对DOS攻击没有较好的防御措施。所以对于实体认证,在强用户认证协议的基础上使用ECC公钥算法并尽量避免节点进行大计算量的操作可以有效的进行实体认证。对于信息认证,单播源认证和逐跳认证等认证都存在一定的缺点,最近提出的多播源认证μTESLA和虚拟的多路径认证能够提供很好的安全信息认证,但也存在一定的缺点,所以对于信息认证,采用多点数据源广播认证,虚拟多路径认证和节点分簇相结合的方法能很好的进行信息认证。另外,数字水印技术也可以应用到无线传感器网络的安全认证中,可以弥补密码技术和数字签名技术的缺陷,保证网络的安全。

    ③ 安全组播:安全组播的实质是通过构造树状的通信,来控制信息的传播方向。通过建立密钥分发树把节点标出根、叶子的等级,对节点分级管理。在安全组播树中对节点的加入要求进行验证。Liu等人提出的PBA[9]协议使用Merkle哈希树认证和发布多个发送者的μTESLA参数。可以有效的避免μTESLA原来认证延迟的缺点,同时也能对被俘获的节点生成撤消树来抵御攻击。但是它对撤消树的维护开销太大,而且还不支持新的发送者的加入、没有涉及Merkle树的根节点的发布和认证问题。所以我们可以从每个节点出发对它进行预先配置或许可以解决这一问题。

    ④ 网络分级管理:在分簇的路由协议和多点认证中,把网络划分为小的区域,在每个区域选择高能量的节点作为簇头。由簇头管理该区域内的节点,由基站管理多个簇头。这样做的好处是划分了责任区域,将责任落到具体节点,在一定程度能够对抗洪泛攻击,而且在网络遭受其他攻击时,能够很快发现问题节点。但也存在簇头能量消耗过多,区域划分的合理性的问题等。这些问题我们可以通过采用广播半径限制把节点的广播范围限定在一定的地理区域,避免高能的恶意攻击者在整个网络区域不断发送数据包,造成DOS攻击和能量消耗攻击,在选择簇头时采用LEACH[10] (low-energy adaptive clustering hierarchy)算法,通过随机循环地选择簇首节点将整个网络的能量负载平均分配到每个节点中,从而达到降低网络能量消耗、提高网络整体生存时间的目的。

    ⑤ 信任等级路由:它的主要思想是采用一个安全参数来衡量路由的安全级别。在路由选择算法中,选择安全系数高的路由。这样改进后的路由就可以用信任等级策略对抗Wormhole、Sinkhole攻击。但是它没有考虑到传感器网络能量的有限性,在实际应用中也没有考虑到无线传感器网络的特点,还存在着一定的问题,所以不能很好的应用到无线传感器网络中。在节点能量有限方面我们可以利用基站的处理能力和存储能力来完成路由监听和检测任务。在建立信任等级路由时可以引入树的概念,利用根、叶子、父节点和子节点来明确区分等级节点,减少建立信任等级路由的能量消耗。

    ⑥ 容侵策略:它的主要思想是在路由设计中加入容侵机制,该方法主要是考虑如何承受攻击而非对抗攻击。INSENSE[11]容侵路由协议就是这样被提出来的,它是采用μTESLA中的单向序列和加密的消息鉴别码算法,及时发现入侵者、用基站寻找建立路由和用基站向每个节点发送请求信息来增强网络的健壮性,使网络具有一定的对抗攻击能力和自我修复能力。另外,多径选择策略也可以一定程度上增强网络的容侵性。但是它们都存在着一些缺点:都没有把节点的能耗问题作为设计目标,而且入侵行为的检测非常耗时,过多的依赖于基站等,所以现在的容侵路由协议还不是很完善,还不能很好承受无线传感器网络中所面临的各种安全攻击,今后的工作就在先前的基础上能够很好的克服上述问题,改进路由协议来提高网络的安全性。

    3、结论

    无线传感器网络的安全性已成为当前研究的重要课题,本文总结并描述了无线传感器网络所面临的安全威胁。将传感器网络可能遭受的攻击分为了节点级外部攻击、节点级内部攻击和一般的DOS攻击、能量攻击。随后,针对这些潜在的威胁,分析了防范这些攻击的安全策略及安全机制,并结合当前所进行的研究成果对安全机制提出了一些见解。但由于受无线传感器网络特殊性的限制,在应用中仍会存在一些问题,接下来的工作就是针对上述提出的一些见解存在的局限性问题进行改进,以更好地满足无线传感器网络的通信安全。

责任编辑:江琦
;