面向SDN拓扑发现的LDoS攻击防御技术研究

目录

    • 1. 引言
    • 2. SDN 拓扑发现原理
    • 3. SDN拓扑发现面临的LDoS攻击威胁
    • 4. TopoGuard实现攻击检测及防御
      • (1) 连续突发检测
      • (2) 主动链路防御

1. 引言

低速率拒绝服务攻击(Low rate Denial of Service, LDoS)利用网络协议中自适应机制所存在的安全漏洞, 通过发送周期性的短脉冲数据流,使网络一直处于不稳定状态。
SDN中LDoS攻击威胁:控制器通过下发封装有LLDP帧的pack_out消息,通过相邻交换机之间的链路传递LLDP帧确认链路信息。一旦在一段时间内未接收到经由某条链路转 发的LLDP帧报文,则认为该链路断开。因此,利用该机制需要周期性发送LLDP帧的特点,攻击者可以在探 测LLDP帧周期的基础上,对两个OpenFlow交换机之间链路发起LDoS攻击,造成LLDP帧在该链路中连续 丢失,进而使得控制器误以为该链路断开.

2. SDN 拓扑发现原理

  1. 控制器会对所有与之连接的交换 机下发匹配LLDP帧的流表项。该流表项的优先级为 100(高优先级),动作为将匹配到的 LLDP 帧封装进 packet_in消息中,并发送给控制器。
  2. 控制 器会向与之连接的交换机通过安全通道下发封装有 LLDP帧且动作类型为泛洪的packet_out消息。交换机 接收到控制器的packet_out消息后,将封装的LLDP帧 通过其所有端口转发出去。当对端交换机从某一端口 接收到一个 LLDP 帧后,根据安装的匹配流表项,将 LLDP帧封装进packet_in消息中,转发给控制器。基于 该过程,控制器利用下发交换机和上传交换机的ID确 定了链路 ,的有效性。
    面向SDN拓扑发现的LDoS攻击防御技术研究_第1张图片
  3. ODL控制器会周期性地向所有连接的交换机同时 下发封装有LLDP帧的packet_out消息,默认周期为5 s,,为每次确认的链路设置了一个到期 时间,若到期未再次确认则认为链路断开,默认到期 时间设置为 15 s。
    面向SDN拓扑发现的LDoS攻击防御技术研究_第2张图片

3. SDN拓扑发现面临的LDoS攻击威胁

两个阶段:探测和发起攻击。
探测
探测阶段主要用于探测控制器下发LLDP帧的周期T 。

通过连接在SDN交换机上的傀儡机 接收来自交换机转发的LLDP帧进行周期的计算
面向SDN拓扑发现的LDoS攻击防御技术研究_第3张图片
ti表示主机第 i 次接收到LLDP帧,a 表示间隔抖 动之和的阈值。

其次,攻击者还需要确定交换机转发LLDP帧的时间点ti
以使得攻击脉冲能够正好导致LLDP帧在转发过程中丢包。
考虑网络时延,主机接收到LLDP帧的 时刻要略晚于交换机转发LLDP帧。
面向SDN拓扑发现的LDoS攻击防御技术研究_第4张图片
假设交换机S1到主机h1的时延为τ,那么可以通过ping 另一个主机得到往返时间d(h1,h2),除以4得到时延τ,所以交换机转发LLDP帧的时间点为:
在这里插入图片描述
除此之外,攻击者可能通过iperf等工具对网络瓶颈带宽B以及交换机队列大小C进行探测,保证最小化攻击包的发送速率。

总结:攻击者得到的参数

名称 符号
控制器下发LLDP周期 T
交换机转发LLDP时刻 t’
网络瓶颈带宽 B
交换机队列大小 C

下一次转发LLDP帧的时刻:
在这里插入图片描述

需要在 转发前一段时间内将交换机的内存占满,假设时间为l
攻击流的大小就是在这里插入图片描述
假设共有N台傀儡机,第一阶段内,发送Rattack/N大小的攻击流,这样在交换机转发LLDP帧的时刻到来时,交换机的队列被占满。
第二阶段,发送速率为B/N大小的攻击流,保证LLDP帧被交换机丢弃。
面向SDN拓扑发现的LDoS攻击防御技术研究_第5张图片

4. TopoGuard实现攻击检测及防御

文中提到可以使用的防御手段

(1)控制 器将下发LLDP帧的周期性改为随机性;
(2)网络管理者采用增加链路分流的方式减小交换机每个端口的负载;
(3)在控制器上部署LDoS攻击检测和防御模块,对控制器拓扑发现机制进行保护

文中提出了节提出了基于连续突发检测和主动链路识别的防御机制TopoGuard

(1) 连续突发检测

通过检测控制器下发LLDP帧时刻附近交换机各个端口的转发速率,识别LDoS攻击。
设定一个转发速率阈值THRE,如果高于阈值,记录突发流量,如果M次都高于阈值,触发警报,发送信息到防御模块。
关于M的取值,控制器在连续link_expire时间内未收到LLDP帧会认为链路中断,所以m的取值可以为:
在这里插入图片描述

(2) 主动链路防御

(1)中模块出发警报之后,由防御模块进行处理。
下一次控制器下发LLDP帧之前,防御模块对受到攻击的交换机封装有LLDP帧的packet_out消息,使交换机接受后向收到攻击的端口转发,这样控制器在链路信息过期前重置计时器。


参考文献:
【1】谢升旭,魏伟,邢长友,张国敏. 面向SDN拓扑发现的LDoS攻击防御技术研究[J]. 计算机工程与应用, 2020, 56(10): 88-93.

你可能感兴趣的:(SDN-paper)