SDN学习笔记

1.软件定义网络(SDN)的基本知识

SDN 的核心思想是:将控制平面从数据平面分离,从而把控制功能从网络设备中移除,使网络设备成为简单的转发单元.SDN 的转发决定是基于流的,流是由分组字段值中的匹配准则及动作指令来定义的.流抽象统一了不同类型的网络设备,包括路由器、交换机、防火墙和中间件的行为

SDN 的基本架构由上至下可以分为应用平面北向编程接口控制平面南向编程接口数据平面
在这里插入图片描述

应用平面包括各种服务和应用,如云计算、深度数据包解析(deep packet inspection,简称 DPI)、入侵检 测系统(intrusion detection system,简称 IDS)\入侵防御系统(intrusion prevention system,简称 IPS)、安全 监测、负载均衡等;

控制平面主要包含 SDN 的控制器,它负责底层转发设备的统一控制,以及提供上层应用网络的呼叫 能力;

数据平面主要包含交换机、路由器等网络转发单元.转发单元根据由控制平面管理的流表来转发数 据分组,它还负责收集网络信息,并向控制平面发送网络拓扑数据.
应用程序和网络管理系统通过控制器提供的北向编程接口向控制器请求服务.控制器根据应用平面程 序来提供网络拓扑管理、网络服务发现机制和网络路径计算等服务,并建立资源、策略、服务之间的关系模型, 对网络状态进行管理,将网络状态存储至相应的数据库.南向编程接口则允许控制器与数据平面的转发单元进行安全通信.

2.OpenFlow技术

OpenFlow 是一种经常用作南向应用程序编程接口(application programming interface,简称 API)的协议,它定义了一组开放的用于数据转发的命令.这些命令允许路由器基于应用程序发现网络拓扑.

OpenFlow 转发单元包含一个或 多个流表,而控制器通过 OpenFlow 协议安全地与转发单元通信,实现转发单元流表的更新与删除.其中,流表由 流条目组成,每个流条目确定如何处理和转发属于流的分组.流条目包括以下几个部分:(1) 用于匹配相应分组 的字段或规则;(2) 用于统计特定流相关数据的计数器,例如,接收的分组的数量、字节的数量和流的持续时 间;(3) 用于决定如何处理匹配的数据包的动作指令.
在这里插入图片描述

3.SDN安全性分析及其异常流量特征分析

SDN 网络的异常流量攻击主要体现在数据平面和控制平面, 分析数据平面和控制平面的安全性及其可能遭受到的网络攻击,并进一步分析各类攻击所造成的流量的变化, 可以为 SDN 网络异常流量检测提供攻击特征依据.

3.1数据平面的威胁

数据平面安全威胁主要以攻击交换机和用户个人计算机(personal computer,简称PC)为主.
1.SDN 扫描攻击根据匹配的流和非匹配流响应时间的不同来扫描匹配字段,确定网络是否使用 SDN/OpenFlow 交换机,并根据扫描到的匹配字段进一步对控制器和交换机进行攻击,而不需要高性能或高容 量装置.SDN 扫描器向目标交换机重复发送同一头域内不同字段值的数据包,并记录和比较每个数据包的响应 时间.达到规定次数后,SDN 扫描器更改头域,再重复此操作.
地址解析协议(address resolution protocol,简称ARP)攻击[17]一般可分为2.ARP泛洪攻击和ARP欺骗攻击:SDN 数据平面的 ARP 泛洪攻击是指攻击者通过向交换机管理的局部网络发送大量的 ARP 报文,使得 交换机和合法用户无法正常通信.SDN 数据平面的 ARP 欺骗是指攻击者伪造一系列错误的 MAC(media access control address)地址信息,并将错误的 MAC 地址映射到合法网际协议地址(Internet protocol address,简称 IP),然 后按照一定的频率向数据平面交换机发送错误的 ARP 报文,使交换机无法保存正确的 MAC 地址信息,进而无 法正常工作.另一方面,攻击者也可以通过嗅探工具将自己的 MAC 地址与合法的 IP 地址映射,然后劫持合法用 户流量数据,致使该用户被屏蔽出网络.
3.网络病毒攻击的目的一般是攻击网络上尽可能多的计算机,SDN 的客户端 PC 机较易成为病毒 攻击的主要对象.以蠕虫攻击为例,蠕虫攻击的工作方式是攻击者随机产生 IP 地址并进行地址探测,如果该 地址的主机存在该 IP 地址,则扫描该主机是否存在漏洞;如果存在漏洞,则在该主机上复制病毒进行传染攻击. 网络病毒攻击的流量特征:因为攻击者的计算机需要产生大量的IP地址进行探测,因此在一定时间内,攻击 者的计算机会产生大量的网络流量,并且这些网络流量中有很多空的或不可达的数据包.而被攻击的计算机或 交换机的同一个端口,则在某一时间段内会接收到来自同一 IP 地址计算机的大量的流量.
4.交换机劫持:为了防止广播风暴并节省能源,OpenFlow 控制器提供了生成树服务.当发生任何拓扑更新时, 会触发生成树服务以阻止这些冗余端口.然而,这种能力可以被攻击者利用来发起拒绝服务攻击,通过将伪链路 注入到现有拓扑中,攻击者可以借用生成树服务来“杀死”正常的交换机端口.在交换机劫持过程中,攻击者先利 用中间人攻击[20,21]窃取原有交换机的注册证书、MAC 地址和 IP 地址等信息,然后利用上述方法使原有交换机 无法正常工作,之后将自己的 MAC 地址与被攻击的交换机的 IP 地址映射在一起,向所属控制器进行重新注册 和认证,后与客户主机进行重新连接,从而取代原有的交换机.攻击者就可以劫持交换机以窃取网络信息或造 成该交换机所属的局域网络瘫痪. 交换机劫持的流量特征:网络上有大量的流量涌入原有的交换机造成该交换机无法输出流量,而该交换机 所属网络与控制器之间却有流量的正常传输.

3.2控制平面的威胁

控制平面安全威胁,主要是指以网络中控制器为目标的网络攻击.
控制平面可能受到的网络攻击具体如下.
1.面向控制器的 DoS 攻击 .攻击者向控制器发起各种不同的DoS拒绝服务攻击,其中主 要包括两种:第 1 种由交换机引起的 DoS 攻击,因为交换机需要定时向控制器发送信息,向控制器报告自己的状 态,或询问相关流规则,因此,攻击者可以利用多个交换机同时向控制器发送各类信息,从而导致控制器对 Packet_In 事件响应非常缓慢,并发送Packet_Out消息的速度也随之变慢;另一种则是由用户主机引起的DoS 攻 击,攻击者可以不断地发送具有随机性的 IP 分组将控制器置于非响应状态,例如控制大量新入网的僵尸 PC 机向同一控制器管理的不同交换机发送数据,因为交换机内没有匹配的流转发规则,则需要向控制器发送大量 询问信息.这种攻击的目的是生成大量的数据包并发送到控制器[25],控制器则需为每个数据包生成新的流规则, 终导致控制器一直处于繁忙状态而无法响应正常用户的请求. DoS攻击流特征:在攻击期间,会有海量流量转向被攻击的控制器,且在一段时间后,控制器所负载的流量将达到饱和状态.
2.控制器劫持 .攻击原理:控制器劫持攻击不同于数据平面的交换机劫持,攻击者使用应用平面恶意程序或 DoS 攻击将原控制器屏蔽出原网络,并将伪造的控制器迁移至目标网络.攻击者首先向原来控制器的指定代理进行 TCP 连 接,通知代理服务器原控制器已故障进行新控制器的迁移,代理服务器在“伪控制器”上安装相关策略并进行相 关参数配置之后,再将交换机迁移至“伪控制器”.这样就形成了控制器劫持攻击,攻击者就可以通过“伪控制器” 在交换机的流表中创建条目来控制整个网络,而不易被网络管理者所发现. 控制器劫持流量特征:原有的合法控制器中无流量传输,而其所管理的各个交换机在网络中却有流量输送.
3.恶意应用攻击 攻击原理:SDN 使第三方应用能够被集成到网络体系结构中,攻击者可以设计开发恶意的应用软件,通 过北向接口操纵控制器,使之成为恶意控制器,恶意控制器可以直接破坏网络;或者直接通过南向接口篡改 交换机的流转发规则,导致流转发至特定节点从而窃取流信息. 恶意软件攻击流量特征:恶意应用攻击控制器时,其流量特征必须根据恶意应用程序的具体功能才能判断. 例如:如果攻击者利用恶意应用程序窃听信息,那么网络流量就会从特定交换机转向特定的用户主机.如果攻击 者使用恶意应用通过控制器攻击交换机,那么网络上就可能会有大量的流量从各个交换机转向特定的交换机.

4.SDN 异常流量检测框架

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
位于控制平面的 SDN 异常流量检测框架作为控制器的一个内置功能软件部署在控制器中.因 为检测框架位于控制器内,则与控制器其他功能模块协调工作,尤其可以利用控制器网络全局拓扑和流量统计 信息来提高异常流量的检测效率.
位于应用平面的检测框架作为SDN的一个应用程序框架,通过北向接口与控制器通信,以进行 异常流量的检测.位于应用平面的检测框架具有集成度高、功能性强的异常流量检测管理功能,网络管理员只 需在异常流量检测应用中简单地设置参数或部署相关算法,就可以自动化地进行流量的识别分类和相关处理.
位于应用平面和控制平面的中间平台,该平台支持开发人员对 SDN 安全应用进行二次开发,并将异常流量检测的基础功能抽象为逻辑组件,然后通过北向接口来调 用控制器中的流量信息统计、流量转发、规则更新等流管理功能模块,并为各类异常流量检测应用提供专用的 API 来组合和调用异常流量检测功能组件.用户则可以在应用平面根据特定的需求编写相关代码,实现所需功能.

5.SDN 异常流量检测的主要机制

SDN 异常流量检测机制是指异常流量检测过程中所使用的主要功能,主要包括异常流量识别机制、负载均衡机制、异常流量追溯机制和异常流量缓解机制.

5.1 异常流量识别机制

1.轻量级异常流量识别算法:基于参数统计的识别算法、基 于信息熵的识别算法和基于标签统计的识别算法.
2.重量级异常流量识别算法 :主要包括机器学习、数据挖掘等算法.该类算法可以通过训练数据集来自动构建模型,并根据流量 特征对流量进行分类识别,根据历史数据对网络攻击进行检测

5.2负载均衡机制

主要有两类:自适应流收集法和网络切割分配法

5.3异常流量追溯机制

通过特殊的方式跟踪异常流量的传输路径,搜寻流量的真实来源,不仅可以减轻 网络攻击,还可以找到攻击者的确切位置,从源头上阻止网络攻击的进行
在这里插入图片描述

5.4异常流量缓解机制

在这里插入图片描述

  • 14
    点赞
  • 95
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值