机会网络技术因其自组网、无中心化的特点,在组网和信息传输上面有着传统网络所不具备的诸多优势,但是,这种网络特点也带来许多安全挑战。
首先,作为一种无线网络,机会网络会遭受常见的针对无线网络的攻击。这类攻击可以分为被动攻击和主动攻击两类。
被动攻击试图获取机会网络的各种资源但不影响网络的运行。例如:恶意节点可以侦听信道,获取消息报文的内容;恶意节点可以分析消息的流向和流量,来分析机会网络中的关键节点或局域中心节点。
主动攻击则可以改变机会网络的报文数据、拓扑结构或者影响机会网络的可用性。例如:恶意节点可以篡改、伪造或者重放消息报文,进行身份伪造、数据伪造,甚至利用控制报文影响网络的运行。
在此基础上,机会网络作为一种依靠自组网协议和转发协议实现数据传输的无线传感器网络,会受到针对无线传感器网络的攻击和针对特定网络协议的攻击。常见的攻击方式有以下几类:
1.路由消息欺诈
攻击者可以通过伪造、篡改、重放等形式,发送恶意的路由控制消息,从而影响路由的建立、增加通信延迟或者构造通信环路导致通信失败等等。 这是一种基础的攻击方式,许多其他的攻击,如下文的女巫攻击、陷洞攻击、虫洞攻击等,都需要使用这种攻击方式来达成自己的目的。
2. 选测性转发
多跳网络往往假设节点会忠实的执行转发协议。 恶意节点可能会选择性的丢弃数据包, 导致一部分的数据包无法达到目的地。 实施这种攻击的攻击者需要控制丢包数量, 以防周围节点认为该攻击者路由失效,也要尽可能使攻击目标处于所需信息的关键路径上, 才能达到较好的效果。
3.HELLO 泛洪攻击
在许多协议中,需要通过广播HELLO 数据报文来向相邻节点报告自己的位置或者剩余资源等信息,来完成节点的发现。HELLO 泛洪攻击(HELLO Flood Attack)针对这一类协议,通过一个比合法节点发射功率大得多的射频端, 攻击者可以在大范围内广播HELLO 帧,使得该区域内的节点误认为存在一个优质的邻居节点,从而向攻击者发送数据。然而由于正常节点的发射功率受限,攻击者并不能收到这些数据。所以这种攻击的目的通常不是获取数据,而是影响网络的正常通信。
4.拒绝服务攻击
拒绝服务攻击是一种在Internet中常见的攻击方式,同样在机会网络中也能出现,恶意节点通过向网络中大量注入冗余信息来影响网络正常通行,或者处于自私性考虑,大量重发合法请求来侵占网络资源以达到减少自己的数据延迟。
5.女巫攻击
女巫攻击也是无线传感器网络中容易出现的一种攻击,在这种攻击中,单个节点通过伪造身份或偷窃合法节点身份,以多个虚假身份出现在网络的其他节点面前,使其更容易成为路由路径中的节点,吸引数据流以提高目标数据流经过自身的概率。有的无线传感器网络协议中为了均分负载,不让某个节点的能量过早耗尽, 都会将任务向不同的节点分摊。女巫节点便伪造多个虚假身份以吸引数据流,试图让自己成为路由路径中的节点。
6. 陷洞攻击
陷洞攻击中的攻击者的目标是吸引周边节点的数据流,该攻击方式通常需要预先攻陷一个合法节点,再通过该节点使用路由消息欺诈等手段, 使周围节点的数据均通过该节点传输。进行陷洞攻击的目的可能是进行数据分析,或者是给选择性转发提供便利。
7.虫洞攻击
虫洞攻击是一种针对无线传感器网络协议,特别是带有一部分防御性协议的路由协议攻击,针对特定协议的攻击由于机会网络的协议多样性和对节点信息的高度依赖性,出现了许多针对特定协议的攻击方式。
这些常见的攻击方式中,除了选择性转发和HELLO 泛洪攻击是干扰网络数据的传输以外,其余几种都是为了窃取网络中的数据。与传统传感器网络相比,机会网络由于更依赖附近节点提供的信息,更容易受到以路由消息欺诈和选择性转发攻击;但是由于转发协议不需要完整链路的存在, 拒绝服务攻击更难以实现,尤其是多消息副本的转发协议,攻击者难以攻击所有传输链路,阻止消息发送更为困难。