论文部分内容阅读
软件定义网络(Software Defined Networking,SDN)作为新兴技术,能够有效地解决传统网络中存在的一些问题,但SDN架构中引入的新特性也带来了全新的挑战。控制平面作为SDN的核心,一旦出现安全问题,会对全网造成影响,因而控制平面的安全是SDN安全的重中之重。本文深入分析控制平面存在的安全问题,按照攻击者来自数据平面还是应用平面对其进行划分,将控制平面存在的安全问题分为南向安全问题和北向安全问题,对其中最具威胁性的DoS/DDoS攻击、第三方SDN应用管理问题进行研究,并提出了相应的防御机制。本文工作如下:(1)对南向安全问题中的DoS/DDoS攻击进行研究。为了更好地防御DoS/DDoS攻击,首先对攻击方式进行了探讨,提出一种基于网络探测的攻击方式对网络进行更有针对性的攻击。然后从攻击过滤、攻击检测、攻击防御三个阶段对攻击进行防御。攻击过滤阶段主要用于降低控制器负载,从攻击原理出发对伪造源IP/MAC的攻击报文与冗余Packet-in消息进行过滤;攻击检测阶段采用基于Packet-in速率、熵值与流表统计信息的轻量级检测算法,能够检测到攻击并定位到攻击源;攻击防御阶段采用更细粒度的阻塞端口防御以及调整流表项timeout值的防御机制。最后在基于Mininet+Ryu的仿真平台上对提出的防御机制进行了仿真,仿真结果表明本文提出的防御机制相较于对比防御机制表现更优,有效地减少了控制器侧接收到的Packet-in数目以及交换机侧流表项数目。(2)对北向安全问题中的第三方SDN应用管理与DoS/DDoS攻击进行研究。首先提出一种SDN应用管理机制对第三方SDN进行管理。当第三方SDN应用接入控制平面时对其进行认证授权,同时在应用运行过程中对应用的行为进行异常监测。然后对大量REST请求引起的攻击与恶意流规则注入引起的攻击这两类北向DoS/DDoS攻击进行防御。对于大量REST请求引起的攻击,提出一种基于队列的防御机制对其进行防御,控制器基于WRR(Weighted Round Robin)机制对REST请求进行轮询处理,使控制器不超过负载运行,同时也保证了正常SDN应用能够得到更多控制器的处理资源。对于恶意流规则注入引起的攻击,提出一种过滤机制对恶意流规则进行过滤从而达到防御的目的。最后在仿真平台上进行功能验证,仿真结果表明本文提出的机制能对SDN应用进行管理,同时有效地防御了北向DoS/DDoS攻击。