APP下载

一种新型的无线传感器网络虫洞攻击检测与预防技术

2019-10-08徐小龙高仲合韩丽娟

软件 2019年6期
关键词:入侵检测无线传感器网络

徐小龙 高仲合 韩丽娟

摘  要: 无线传感器网络只有有限的带宽、存储容量和计算能力,并且使用动态拓扑结构,这使它容易受到各种类型的攻击。虫洞攻击是无线传感器网络面临的众多攻击中的一种。本文研究了无线传感器网络中应对虫洞攻击的方法并提出了一种基于RTT机制的检测和预防技术,AOMDV路由协议也被引入到这种机制当中。NS2仿真实验的结果表明,这种方法比文献中的其他方法具有更高的效率。

关键词: 无线传感器网络;虫洞攻击;入侵检测;往返时延

中图分类号: TP393    文献标识码: A    DOI:10.3969/j.issn.1003-6970.2019.06.004

本文著录格式:徐小龙,高仲合,韩丽娟. 一种新型的无线传感器网络虫洞攻击检测与预防技术[J]. 软件,2019,40(6):1720

【Abstract】: Wireless sensor networks have limited bandwidth, storage capacity and computing speed, and use dynamic topology, which makes them vulnerable to various types of attacks. Wormhole attack is one of the many attacks in wireless sensor networks. This paper studies the methods to deal with wormhole attacks in wireless sensor networks and proposes a detection and prevention technology based on RTT mechanism. AOMDV routing protocol is also introduced into this mechanism. The results of NS2 simulation experiments show that this method is more efficient than other methods in literature.

【Key words】: WSN; Wormhole attack; Intrusion detection; RTT

0  引言

無线传感器网络中的节点使用无线收发器直接相互通信,没有固定的基础设施。大量部署的传感器节点通过测量压力、温度、湿度、相对运动等物理参数来监测周边环境[1]。无线传感器网络中的每个节点由三个子系统组成:传感器子系统用于感知周边环境;处理子系统对感知到的数据进行本地计算;通信子系统负责与相邻的传感器节点进行信息交换[2]。传感器节点的低成本会对内存、能量、计算速度和通信带宽等资源造成一定的限制。无线传感器网络的应用场景包括军事监视、商业、医疗、制造和家庭自动化等[3]。由于传输介质的广播特性以及传感器节点经常工作在恶劣的环境中,无线传感器网络容易受到各种攻击。

根据OSI参考模型的层次对无线传感器网络中的安全攻击进行了分类,在网络层进行的攻击称为路由攻击。在网络层中存在多种可能的攻击,例如选择性转发、重放路由、女巫攻击、Sinkhole攻击、Hello泛洪攻击和虫洞攻击[4]。

文章第一章对虫洞攻击进行了详细介绍;第二章介绍了不同研究者所做的相关工作;第三章讨论了我们在虫洞攻击检测和预防方面所做的工作;第四章验证了我们所做研究的效果;第五章进行了总结。

1  虫洞攻击

这种攻击具有一个或多个恶意节点以及它们之间的通道。攻击节点从一个位置捕获数据包并将其传输到另一个远程节点,远程节点在其本地分发数据包。节点间的通道可以通过多种方式建立,例如带内信道和带外信道。这使得经过通道的数据包比普通的多跳路由数据包能够更快的到达目的地。依赖节点之间距离的路由机制可能会被导致混乱,因为虫洞节点伪造了一个比网络中的原始路由更短的路由。然后他们可以针对数据流量发起各种攻击,例如选择性丢包、窃听、重放攻击等[5]。虫洞是这样形成的:首先带内信道数据包利用封装技术传送到另一个恶意节点M2,即使在两个恶意节点间有一个或多个正常节点。M2之后的节点认为M1和M2之间没有节点,它们之间通过专用有线链路或远程无线链路直接连接。

当恶意节点形成虫洞时,它们可以公开自己或隐藏在某一路径中。前者是一个暴露的或开放的虫洞攻击,而后者则是隐藏的或封闭的攻击。

在图1中,在隐藏虫洞攻击下,目的地D会认为来自源S的数据包通过节点A和节点B传输;而在暴露虫洞攻击下,则会认为数据包则是通过节点M1、M2传输。

2  相关研究

在这一部分我们将讨论无线自组网和移动自组网中对于虫洞攻击的一些常见解决方案。S.Gupta等人[6]提出了一种虫洞攻击检测协议,该协议使用一种称为WHOP的追猎数据包来检测虫洞攻击而不是使用监测系统或特殊的硬件设备。在路由发现过程之后,源节点使用一个追猎数据包来检测虫洞攻击,通过计算路径中距离为1跳的相邻节点间的跳数差来进行判断。目的节点在过程结束后根据跳数检测虫洞,相邻节点之间的差异超过了可接受水平的便是攻击节点。

文献[7]提出了一种基于安全邻居发现策略的虫洞攻击检测和过滤方法,该方法基于当虫洞攻击发生时网络节点间通信跳数会出现异常这一特点,依据节点间路径跳数差异来检测虫洞攻击,通过滤除各种虚假链路来抑制虫洞攻击对DV-Hop算法定位过程的影响。

文献[8]针对网络中虫洞攻击破坏网络拓扑、路由发现和资源分配等问题,在定义虫洞节点、显式和隐式虫洞节点的基础上,提出一种虫洞攻击检测方案。该方案在虫洞节点集合中对邻居关系异常的节点进行标记,并设计了虫洞节点类型识别流程,依据挑战应答时间确定显式虫洞节点和隐式虫洞节点。

Khalil等人[9]引入了LITEWORP方法,其中使用了守卫节点的概念。如果守卫节点的某个相邻节点有恶意行为,就能够检测出虫洞。守卫节点是两个节点的公共邻居,用于检测它们之间链接的合法性。然而在稀疏网络中,并不总是能够为特定链路找到守卫节点。

文献[10]研究了移动无线传感器网络中的隐式虫洞攻击,分析了此类虫洞攻击对MCL算法性能的影响,并在此基础上提出了一种能抵御虫洞攻击的安全MCL算法--DewormMCL。该算法能利用节点的移动性有效识别锚节点信息,剔除掉伪锚节点信息,且不需要额外的硬件支持,也不会增加通信开销,对虫洞攻击具有较好的抵御性。

3  虫洞攻击的检测和预防机制

为了发现源点和目标之间的多条路径,我们使用了AOMDV(Ad-hoc on-demand Multipath Distance Vector)路由协议,它是AODV协议的扩展。在AOMDV路由协议中,发送节点检查路由表中是否存在任意两节点间的路由,如果存在,它将给出路由信息,否则将对数据包进行广播。广播时将RREQ数据包發送给它的相邻节点,相邻节点检查是否存在到目的地的路由。当目的节点接收到RREQ数据包时,它会沿着与RREQ数据包相同的路径向源节点发送RREP数据包。对于所有通过其他路由到达的RREQ数据包,RREP数据包将沿同一路径发送。所有路径都存储在源节点的路由表中,路由表就是通过这样的方式建立的[11]。AOMDV的主要思想是在路由发现过程中计算多条路径以应对链路故障。当AOMDV建立多条路径时,它将根据路由建立的时间选择数据传输的主路径。只有当主路径失效时其他路径才会被启用,最早建立的路径将被认为是最优路径[12]。

文章利用AOMDV协议提出了一种有效地检测和预防网络虫洞攻击的技术,具体算法如下。当源节点广播RREQ数据包时记录下时间t1,当源节点收到相应的RREP数据包时,再次记录下数据包的接收时间。如果接收到多个RREP数据包,这意味着有多条路由可以到达目标节点,那么记录下每个RREP数据包的相应时间t2_i。利用上述两个值就可以计算出既定路线的往返时间t3_i[13]。

取每条线路的往返时间t3_i,并除以各自的跳数。计算所有路线的平均往返时间记作ts_i。计算出往返时间的阈值tth。将阈值与每个往返时间ts_i进行比较,如果总往返时间ts_i小于阈值往返时间tth,并且该特定的ith路由的跳数等于2,则该路由中存在虫洞链接,否则该路由中不存在虫洞链接。由于在该路由中发现虫洞链路,发送方将第一个相邻节点m1检测为虫洞节点,并通过该路由i和相邻节点m1发送虚假的RREQ数据包。在目的端,接收方收到来自其邻居节点m2的虚假RREQ数据包,就将节点m2判定为为虫洞节点。与m1和m2相关的路由条目将从源节点的路由表中删除并广播给其它节点。这样就移除了受虫洞影响的路径,以后不再使用。因此,从下次开始,每当源节点需要到该目的地的路由时,它首先在路由建立阶段检查路由表中的路由。它会发现这条路由存在虫洞链接,从而不采用这条路由,而是从源节点的路由表中选择另一条没有虫洞链接的可用路由。在我们提出的机制中使用AOMDV协议的好处是,它需要较小的开销和较短的端到端延迟。图2是该算法的流程图。

该算法流程直观地说明了网络中的通信节点互相配合检测和应对虫洞攻击的过程。

4  仿真环境与结果

我们将正常AOMDV协议、受虫洞影响的AOMDV协议和文章中所提出的方法进行比较,并给出了数据包传输速率、平均端到端时延和平均吞吐量等参数的仿真结果。起初,记录下正常AOMDV协议在10、25、35和45个节点时的上述参数。然后将虫洞节点添加进去并再次记录实验结果。最后将所提出的方法应用于被感染的网络,并对三种情况下的结果进行了比较。无线传感器网络环境由NS2软件进行仿真,下表显示了仿真参数。

在下面所有的图中,x轴是路由协议,y轴是参数值。图3显示了三种路由协议在不同网络密度下的平均吞吐量。可以看出,所提出协议的吞吐量增量比虫洞协议的吞吐量增量要大。并且在密集网络中更能提升网络性能。

在图4中,当虫洞节点存在于正常的AOMDV网络中时,它会增加网络的平均端到端时延。在这种环境下应用了所提出的算法后,平均端到端时延下降,甚至比正常的AOMDV协议的时延更低。通过图4可以看出,随着网络密度的增大,网络的平均端到端时延呈增大趋势。

通过图5可以看出,采用了所提出的协议后,数据包投递率较受虫洞影响的AOMDV协议有了较大提高。

5  结论

为了检测和预防虫洞攻击,文章提出并实施了一种虫洞攻击的检测和预防机制。这一机制并不需要特殊的硬件设备。我们所做的就是计算每条路径的往返时延来计算阈值RTT。通过对平均端到端延迟、数据包投递率和平均吞吐量等参数的仿真结果,证明了该机制优于受虫洞影响的AOMDV协议。将来该方法也可以应用于移动自组网中。

参考文献

[1] 徐小龙, 高仲合, 韩丽娟. 一种高效的无线传感器网络混合入侵检测模型[J]. 软件, 2016, 37(1): 14-17.

[2] 沙娓娓, 刘增力. 基于改进蚁群算法的无线传感器网络的路由优化[J]. 软件, 2018, 39(01): 01-04

[3] 徐小龙, 高仲合, 韩丽娟. 一种新型的无线传感器网络妥协节点检测系统[J]. 通信技术, 2017, 50(9): 2045-2054.

[4] 黄堃. 基于计算机网络技术的计算机网络信息安全及其防护策略分析[J]. 软件, 2018, 39(6): 139-141.

[5] 杜彦敏. 无线传感器网络(WSN)安全综述[J]. 软件, 2015, 36(3): 127-131.

[6] Gupta S, Kar S, Dharmaraja S. WHOP: Wormhole attack detection protocol using hound packet[C]//Innovations in Information Technology (IIT), 2011 International Conference on. IEEE, 2011.

[7] 吳海波, 魏丽君. PS-DV-Hop算法对虫洞攻击防御的安全性能研究[J]. 计算机与数字工程, 2018, 46(10): 140-144.

[8] 史衍卿, 陈伟, 郁滨. ZigBee网络虫洞攻击检测方案设计[J]. 系统仿真学报, 2017(4).

[9] Chaurasia U K, Singh V. MAODV: Modified wormhole detection AODV protocol[C]//Sixth International Conference on Contemporary Computing. IEEE, 2013: 239-243.

[10] 池玉辰, 邓平. 一种移动无线传感器网络抵御虫洞攻击MCL算法[J]. 传感技术学报, 2015(6): 876-882.

[11] Bamhdi A M, King P J B. Performance evaluation of Dynamic-Power AODV, AOMDV, AODV and DSR proto-cols in MANETs[C]//International Conference on Smart Communications in Network Technologies. IEEE, 2013: 1-5.

[12] 杨盾, 王小鹏. 应对 DDoS 攻击的 SDN 网络安全特性研究[J]. 软件, 2018, 39(3): 175-180.

[13] Ferrag M A, Nafa M, Ghanemi S. EPSA: An Efficient and Privacy-preserving Scheme against Wormhole Attack on Reactive Routing for Mobile Ad Hoc Social Networks[M]. Inderscience Publishers, 2016.

猜你喜欢

入侵检测无线传感器网络
多Agent的创新网络入侵检测方法仿真研究
基于无线传感器网络的葡萄生长环境测控系统设计与应用
无线传感器网络技术综述