一种软件定义网络中DDoS攻击检测与防御方法与系统技术方案

技术编号:19783149 阅读:19 留言:0更新日期:2018-12-15 12:50
本发明专利技术公开了一种软件定义网络中的DDoS攻击检测与防御方法与系统,包括:收集packet_in数据包;提取窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,计算五元特征熵值;判断窗口源IP熵值是否超过阈值,若是,判定为可疑流量,否则,过滤该窗口流量;采用机器学习判别可疑流量是否存在攻击,若是,判定为攻击流量,否则,过滤该可疑流量;将攻击流量中IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;防御规则下发至攻击端口所在交换机,从转发层面过滤攻击流量。本发明专利技术结合五元特征熵值和机器学习算法检测DDoS攻击,定位并及时采取防御措施,从转发层面过滤大量恶意流量,保护控制器和交换机。

【技术实现步骤摘要】
一种软件定义网络中DDoS攻击检测与防御方法与系统
本专利技术属于网络安全领域,更具体地,涉及一种软件定义网络中的DDoS攻击检测与防御方法与系统。
技术介绍
软件定义网络(SoftwareDefinedNetwork,SDN)是一种新型的网络架构,具有控制转发分离、集中控制和可编程性的特点。其集中控制的特性,给软件编程提供了极大的便利的同时,也带来了一系列安全问题。SDN控制器集中管理网络资源,一旦控制器单点失效,整个网络将面临瘫痪的风险。在各种网络安全问题中,DDoS(DistributedDenialofService,分布式拒绝服务)攻击是一种分布式、大范围协同作战的网络攻击方式,这种攻击方式易于发动、难于防御、极易对网络造成严重的危害。而SDN网络中的DDoS攻击不仅会对目标主机造成严重危害,更会对网络中交换机和控制器产生严重影响,严重时整个SDN网络将彻底崩溃。当前已经有学者致力于SDN网络中的DDoS攻击检测研究,可分为基于机器学习方法的攻击检测和基于统计学方法的攻击检测。(1)基于机器学习的攻击检测方式周期性收集交换机流表项的统计数据,利用机器学习方法对统计数据进行判别。机器学习的攻击检测方式分析DDoS攻击连接特征,在控制器上维护一个收集线程,周期性向全网中交换机发送请求消息以获取流表中的统计信息。机器学习方法数据收集方式给控制器造成一定负载,且网络规模越大,对控制器造成负载越大。(2)基于统计学方法的攻击检测方式,收集packet_in数据包,提取数据包中的一个或多个特征,采用统计学方法对特征序列进行判别。当采用目的IP熵值这一特征量来检测攻击时,在实验网络中多次测试确定一个阈值。但是,该方式必须考虑单一特征量如何确定一个合理阈值,且该方式不具有自适应性且特征单一,容易制造一种攻击绕过检测。当采用多维信息熵值来检测攻击时,综合考虑目的IP、目的端口、源IP三个特征量。然而该方式必须考虑如何合理评估三个特征量之间的关系来检测DDoS攻击。
技术实现思路
针对现有技术的缺陷,本专利技术的提供一种软件定义网络中DDoS攻击检测与防御方法与系统,该方法结合五元特征的熵值和机器学习算法,检测DDoS攻击,定位并及时采取防御措施,从转发层面过滤大量恶意流量,保护SDN控制器和交换机。为实现上述目的,一方面,本专利技术实施例提供了一种软件定义网络中的DDoS攻击检测与防御方法,该方法包括以下步骤:S1.收集交换机上发给控制器的packet_in数据包;S2.采取滑动窗口机制,提取每个窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,并计算每个窗口的五元特征的熵值;S3.判断每个窗口的源IP熵值是否超过阈值,若否,则过滤该窗口的流量,若是,则判定该窗口的流量为可疑流量;S4.采用机器学习算法判别可疑流量是否存在攻击,若是,则判定为攻击流量,否则,过滤该可疑流量;S5.将攻击流量中源IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;S6.防御规则下发至攻击端口所在的交换机,从转发层面过滤攻击流量。具体地,依据所述网络中主机的数量设定滑动窗口的大小。具体地,所述阈值为所述网络中最大的源IP熵值。具体地,机器学习算法为核函数为RBF的SVM。具体地,所述防御规则并非直接下发到攻击端口所在交换机上,而是经过规则缓存队列,具体为:判断规则缓存队列中是否存在该防御规则,若存在,则不必下发;否则,则将该防御规则添加到规则缓存队列中,并在控制器上下发该防御规则到攻击端口所在的交换机上。为实现上述目的,另一方面,本专利技术实施例提供了一种软件定义网络中的DDoS攻击检测与防御系统,所述系统包括以下模块:收集模块,用于收集交换机上发给控制器的packet_in数据包;特征提取模块,用于采取滑动窗口机制,提取每个窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,并计算每个窗口的五元特征的熵值;攻击检测模块,用于判断每个窗口的源IP熵值是否超过阈值,若否,则过滤该窗口的流量,若是,则判定该窗口的流量为可疑流量;采用机器学习算法判别可疑流量是否存在攻击,若是,则判定为攻击流量,否则,过滤该可疑流量;定位模块,用于将攻击流量中源IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;防御模块,用于将防御规则下发至攻击端口所在的交换机,从转发层面过滤攻击流量。具体地,依据所述网络中主机的数量设定滑动窗口的大小。具体地,所述阈值为所述网络中最大的源IP熵值。具体地,机器学习算法为核函数为RBF的SVM。具体地,所述防御规则并非直接下发到攻击端口所在交换机上,而是经过规则缓存队列,具体为:判断规则缓存队列中是否存在该防御规则,若存在,则不必下发;否则,则将该防御规则添加到规则缓存队列中,并在控制器上下发该防御规则到攻击端口所在的交换机上。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效果:(1)本专利技术通过改进基于机器学习方法的攻击检测中数据收集的方式,收集交换机上发给控制器的packet_in数据包,复用了控制器的消息接收机制,与周期性收集流表项信息相比,有效的降低了控制器负载。(2)本专利技术通过采用两级攻击检测的方式,一级检测模块通过源IP熵值过滤大量正常流量,二级检测模块通过SVM检测模型判别网络中是否存在攻击,定位并及时采取防御措施,从转发层面过滤大量恶意流量,保护SDN控制器和交换机,检测准确率更高。(3)本专利技术通过源IP、源端口、目的IP、目的端口和协议类型五元特征描述网络中源IP和目的IP的分散性,能在攻击发生的早期检测出来并进行防御。附图说明图1为本专利技术提供的一种软件定义网络中的DDoS攻击检测与防御方法流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。图1为本专利技术提供的一种软件定义网络中的DDoS攻击检测与防御方法流程图。如图1所示,该方法包括以下步骤:S1.收集交换机上发给控制器的packet_in数据包;S2.采取滑动窗口机制,提取每个窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,并计算每个窗口的五元特征的熵值;S3.判断每个窗口的源IP熵值是否超过阈值,若否,则过滤该窗口的流量,若是,则判定该窗口的流量为可疑流量;S4.采用机器学习算法判别可疑流量是否存在攻击,若是,则判定为攻击流量,否则,过滤该可疑流量;S5.将攻击流量中源IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;S6.防御规则下发至攻击端口所在的交换机,从转发层面过滤攻击流量。步骤S1.收集交换机上发给控制器的packet_in数据包。SDN网络中DDoS攻击不仅对目标主机造成危害,更对交换机和控制器产生影响。攻击者在SDN网络中发起伪造源IP的DDoS攻击时,交换机接收到大量不同源IP的攻击数据包,这些数据包在流表上匹配失败,触发交换机上发大量packet_in消息。控制器接收到这些异常的packet_in消息,消耗大量资源处理,并向交换机下发流表项,这些无用流表项本文档来自技高网
...

【技术保护点】
1.一种软件定义网络中的DDoS攻击检测与防御方法,其特征在于,该方法包括以下步骤:S1.收集交换机上发给控制器的packet_in数据包;S2.采取滑动窗口机制,提取每个窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,并计算每个窗口的五元特征的熵值;S3.判断每个窗口的源IP熵值是否超过阈值,若否,则过滤该窗口的流量,若是,则判定该窗口的流量为可疑流量;S4.采用机器学习算法判别可疑流量是否存在攻击,若是,则判定为攻击流量,否则,过滤该可疑流量;S5.将攻击流量中源IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;S6.防御规则下发至攻击端口所在的交换机,从转发层面过滤攻击流量。

【技术特征摘要】
1.一种软件定义网络中的DDoS攻击检测与防御方法,其特征在于,该方法包括以下步骤:S1.收集交换机上发给控制器的packet_in数据包;S2.采取滑动窗口机制,提取每个窗口中数据包的源IP、源端口、目的IP、目的端口和协议类型五元特征,并计算每个窗口的五元特征的熵值;S3.判断每个窗口的源IP熵值是否超过阈值,若否,则过滤该窗口的流量,若是,则判定该窗口的流量为可疑流量;S4.采用机器学习算法判别可疑流量是否存在攻击,若是,则判定为攻击流量,否则,过滤该可疑流量;S5.将攻击流量中源IP熵值最大的交换机端口标志为可疑端口,被重复检测为可疑端口判定为攻击端口;S6.防御规则下发至攻击端口所在的交换机,从转发层面过滤攻击流量。2.如权利要求1所述的方法,其特征在于,依据所述网络中主机的数量设定滑动窗口的大小。3.如权利要求1或2所述的方法,其特征在于,所述阈值为所述网络中最大的源IP熵值。4.如权利要求1或2所述的方法,其特征在于,机器学习算法为核函数为RBF的SVM。5.如权利要求1或2所述的方法,其特征在于,所述防御规则并非直接下发到攻击端口所在交换机上,而是经过规则缓存队列,具体为:判断规则缓存队列中是否存在该防御规则,若存在,则不必下发;否则,则将该防御规则添加到规则缓存队列中,并在控制器上下发该防御规则到攻击端口所在的交换机上。6.一种软件定义网络中的...

【专利技术属性】
技术研发人员:于俊清余畅李冬
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1