基于sdn网络的恶意代码检测方法

文档序号:10594486阅读:386来源:国知局
基于sdn网络的恶意代码检测方法
【专利摘要】基于SDN网络的恶意代码检测方法,属于计算机网络安全技术领域。SDN控制与转发分离的全新设计理念给网络信息安全领域带来了新的机遇和挑战,为了解决新架构下恶意代码检测和防范的问题。本发明分析对SDN交换机流表特征的选取方法,提出基于OpenFlow流量特征选取的安全数据排序及降维方法;在此基础上比较特征选取后对不同的分类算法运行时间的影响,分析降维维度m选择问题,找出不同类型的恶意代码对应的最优特征子集和匹配分类方法;分析恶意代码在SDN移动环境下的传播特性和演化模型,得出移动网络中节点迁移率对恶意代码在源子网和目标子网的感染情况和爆发时间的影响,对SDN控制器对交换机节点或主机节点路由控制具有参考价值。
【专利说明】
基于SDN网络的恶意代码检测方法
技术领域
[0001]本发明属于计算机网络安全技术领域。
【背景技术】
[0002]作为一种新型的基于软件技术的网络体系架构,SDN( Sof tware DefinedNetworking,软件定义网络)全新的设计理念和创新式的应用给网络信息安全领域带来了新的机遇和挑战。由于SDN采用集中式控制的方式,直观上,意味着更大的安全风险。另一方面,SDN也冲击着传统安全防护技术,由于SDN网络控制与转发分离,其开放的各类应用程序的带来的漏洞不可避免,恶意代码包括计算机病毒、网络蠕虫、木马、逻辑炸弹及DDOS攻击等,对于SDN网络,恶意代码的分析和检测也是需要解决的重要问题。
[0003]为此,发明基于SDN思想,建立SDN架构下恶意代码流量特征分析模型。通过对SDN网络流表数据的流量采集和特征分析,找出匹配的分类算法更加准确的发现各类恶意攻击,核心是数据收集、流表特征的产生、特征选取及分类算法的研究。
[0004]SDN的集中架构可以对网络进行灵活的逻辑管控,根据逻辑子网的信息反馈,实现对各个节点以及网络全局的汇总分析,从而选择最优的应对方案。当一些恶意代码被检测发现时,可以通过当前的网络状态推断出安全事件发生的位置,SDN控制器通过修改交换机流表的流表项来实现网络节点(包括移动设备、各类网络设备和主机)的逻辑网络的重定向,动态的调整周边的交换路由,避免拥塞的发生,但这也给网络恶意代码在网络间的传播带来了机会。当网络受到大规模入侵攻击时,可以通过改变网络拓扑、协同检测等方式将损失降到最低。本发明专利研究SDN移动环境下恶意代码传播和演化模型,为SDN控制器管理策略的制定提供基础。也能够为网络安全领域中的复杂行为检测方法提供理论和技术上的依据,帮助下一代网络安全工具的开发。

【发明内容】

[0005]本发明的目的是,解决针对在SDN网络大规模、高维度的网络安全数据中发现恶意代码计算消耗巨大的问题。
[0006]本发明的技术方案是,基于SDN网络的恶意代码检测方法,基于OpenFlow的流量特征选取方法,采用多种特征选取方法对不同的流量特性进行排序,找出能反映恶意代码的关键特征子集,实现数据降维;针对不同种类的恶意代码,采用不同的分类算法和特征子集进行匹配分析,找出不同种类的恶意代码检测分析的匹配特征子集和分类方法;在此基础上实现SDN网络流量重定向模型和移动网络演化分析。
[0007](I)提出一种基于OpenFlow的流量特征选取的安全数据降维方法。选取合适的流量特性,进行细粒度的数据分析,将高维(η维)特征数据降维,得到各类恶意代码的最优低维度(m维)特征子集;
(2)根据降维后的关键特征子集,分析比较不同分类方法与特征子集对不同类恶意代码的分类性能,得到某类恶意代码的最佳特征子集及分类匹配算法; (3)分析不同的网络模型中,感染恶意代码的节点迀移率对其在源子网和目标子网的感染情况和爆发时间的影响,提出一种恶意代码在SDN移动网络中的传播模型。通过理论分析和数值模拟,找出恶意代码从源子网传播到目标子网的传播特性与子网间节点的迀移率的关系。分析恶意代码在社团子网间扩散和传播的迀移阈值qc,使其能够合理地反映出SDN新架构带来的网络动力学新特点。
[0008]具体内容包括:
(I)基于OpenF I ow的流量特征选取的安全数据降维方法。
[0009]SDN网络是基于流表的,流表就可以作为数据包的匹配规则,SDN流表的结构包含三个部分:包头匹配域、计数器和动作。随着流表设计对各种协议的支持,匹配更加细粒度化,其具有的特征值也在增加。OpenFlow流表的特征选择是SDN网络中安全数据预处理的有效方法,通过降低流量特征的维度,可以减小安全关联分析的复杂度。本发明专利关注特征选择方法在SDN的交换机流表数据中的应用。分别采用Fisher、Rel ief F、mRMR、InfoGain、CFS、LVF等特征选择方法对OpenFlow流表的流量特征进行排序,并根据不同的特征选择算法进行综合分析,选择有效的流量特征数据来进行下一步模型的建立。
[0010](2)不同类恶意代码的最优特征子集及最优分类算法选择。
[0011]不同的网络异常场景在流量特性上表现不同,而不同的数据挖掘算法对于流量特性的匹配程度也不一样,本发明着重研究SDN环境下不同的特征选择方法与数据挖掘算法的结合处理,分析不同的特征选择后对算法运行时间及不同的特征选取方法与分类算法性能的匹配程度。分析得出对于SDN流量的异常流量分析在不同的场景下应采用哪些关键特征以判别流量异常。导致异常流量的原因有很多,比如DDOS攻击、witty蠕虫,慢扫描等,其在流量特征中表现不尽相同,将Fisher、ReliefF以及InfoGain等算法得到的前8_12维特征序列分别与DT、SVM和KNN等分类方法结合,计算其分类结果的准确率,找出不同种类的恶意代码检测分析的匹配特征值和分类方法。
[0012](3 )恶意代码在SDN移动环境下的传播特性分析
建立SDN环境下的网络模型;将网络子网作为社团考虑,子网内部为静态社团,而子网之间为动态社团。通过分析不同的网络模型中,社团间的节点迀移率对恶意代码在源子网和目标子网的感染情况和爆发时间的影响,发现移动环境下,恶意代码如蠕虫的传播对网络演化的影响,对SDN控制器对交换机节点或主机节点路由控制提供理论依据。
【附图说明】
[0013]图1基于SDN网络的恶意代码检测路线图;
图2恶意代码的特征子集及分类算法选择流程图。
【具体实施方式】
[0014]本发明的路线图如图1所示。
[0015]在实际检测中,流表数据收集模块定期向OpenFlow交换机发送流表请求,交换机回复的流表信息通过加密通道传送给流表收集节点。流特征提取模块根据特征分析的结果,接收流表收集模块采集的流表数据,提取出相关的m个流特征组成m元组,每个m元组都以收集到此数据的交换机ID来作为标识,从而可以监测哪个SDN交换机发现了某类恶意事件。分类器模块负责将收集到的m元组进行分类,以区分该段时间内流量是哪类异常流量还是正常流量。
[00? 6] (I )OpenFlow流表特征选取与重要程度排序
OpenFlow流表采用流转发来取代传统的包转发,流量在进入SDN交换机时首先查看交换机上的流表,有匹配则执行相应动作,如果没有匹配,就将报文发送控制器,由控制器决定如何生成流表发送交换机。因此特征数据选取可以直接从流表中选择。
[0017]第一步:构建不同维度的特征数据;
在训练样本生成阶段,我们可以在实验环境中产生正常流量和各类恶意流量比如DD0S,蠕虫,扫描等,各类异常流量的产生可以借助相应的攻击工具产生,比如DDOS攻击可以发起TCP SYN flood, UDP flood等流量攻击。各类异常和正常的训练子集尽量均衡。
[0018]对流表中的40个包头匹配域,构建不同维度的特征数据,这些特征选取可以包括:IP包率、ICMP包率、TCP包率、长包率、短包率、IP对流比、端口增速、包间隔时间、流包数、流字节数等。
[0019]第二步:研究不同的特征选择算法对相应数据集的排序结果;
采用?丨81161'、1^1丨6€?、111履1?、111;1^063;[11、0?3、1^等不同的特征选择算法对相应的数据集进行特征排序,其排序的标准是根据各种算法计算出的特征重要性。
[0020]通过不同的特征选取算法,可以通过检验数据找到不同类别异常事件的特征排序,这一步当中,因为还没有分类器的参与,无法直接选出相应的特征子集,但可以找到一定的规律,通过选择在不同算法中排序比较靠前的8-12个特征集分析其相关性和相似性。可以根据不同的特征选择算法进行综合分析,选择有效的流量特征数据来进行下一步模型的建立。
[0021](2)研究不同的数据挖掘分类方法与特征选择算法结合,对不同的恶意代码选择相应算法。
[0022]SDN网络恶意代码特征选择算法的关键在于将特征子集的选择与分类器相结合,通过分类器的性能来判定哪组特征或者哪些特征能够达到较高的检测率。可以考虑选择典型的分类器算法,比如决策树(DT)、支持向量机(SVM)和K邻近分类法(KNN),与前面提到的的特征选择算法结合,找出最匹配的特征选择分类算法,其流程如图2所示。
[0023]将Fisher、ReliefF以及InfoGain等算法的得到的前8-12维特征序列分别与DT、SVM和KNN结合,计算其分类结果的准确率,最终选出适合不同分类算法的特征子集和最匹配的特征选择算法。
[0024](3)分析SDN网络下恶意代码传播模型及SDN移动性网络中病毒传染的免疫策略。
[0025]SDN的集中控制使得其更容易发现恶意代码和异常行为,并能迅速的对这些异常和攻击行为做出响应。本发明专利通过建立相应的网络模型,引入迀移率阈值qc,分析SDN架构下节点的逻辑移动给恶意代码传播带来的趋势影响。当某类恶意代码在某社团子网中爆发时,SDN的控制器可以进行应用隔离和权限管理,当网络中恶意代码爆发时,可以采取动态隔离疑似感染节点和修改网络路由及权限策略的方式来降低和避免恶意代码的传播。
【主权项】
1.一种基于SDN网络的恶意代码检测方法,提出基于OpenFlow的流量特征选取方法,采用多种特征选取方法对不同的流量特性进行排序,找出能反映恶意代码的关键特征子集,实现数据降维;针对不同种类的恶意代码,采用不同的分类算法和特征子集进行匹配分析,找出不同种类的恶意代码检测分析的匹配特征子集和分类方法;在此基础上实现SDN网络流量重定向模型和移动网络演化分析,其特征是: (1)提出一种基于OpenFlow的流量特征选取的安全数据降维方法,选取合适的流量特性,进行细粒度的数据分析,将高维(η维)特征数据降维,得到各类恶意代码的最优低维度(m维)特征子集; (2)根据降维后的关键特征子集,分析比较不同分类方法与特征子集对不同类恶意代码的分类性能,得到某类恶意代码的最佳特征子集及分类匹配算法; (3)分析不同的网络模型中,感染恶意代码的节点迀移率对其在源子网和目标子网的感染情况和爆发时间的影响,提出一种恶意代码在SDN移动网络中的传播模型,通过理论分析和数值模拟,找出恶意代码从源子网传播到目标子网的传播特性与子网间节点的迀移率的关系,分析恶意代码在社团子网间扩散和传播的迀移阈值qc,使其能够合理地反映出SDN新架构带来的网络动力学新特点。2.根据权利要求1所述的基于SDN网络的恶意代码检测方法,其特征是,基于OpenFlow的流量特征选取的安全数据降维方法,SDN网络是基于流表的,流表就可以作为数据包的匹配规则,SDN流表的结构包含三个部分:包头匹配域、计数器和动作,随着流表设计对各种协议的支持,匹配更加细粒度化,其具有的特征值也在增加,OpenFlow流表的特征选择是SDN网络中安全数据预处理的有效方法,通过降低流量特征的维度,可以减小安全关联分析的复杂度,关注特征选择方法在SDN的交换机流表数据中的应用,分别采用FiSher、ReliefF、mRMR、InfoGain、CFS、LVF等特征选择方法对OpenFlow流表的流量特征进行排序,并根据不同的特征选择算法进行综合分析,选择有效的流量特征数据来进行下一步模型的建立。3.根据权利要求1所述的基于SDN网络的恶意代码检测方法,其特征是,不同类恶意代码的最优特征子集及最优分类算法选择,不同的网络异常场景在流量特性上表现不同,而不同的数据挖掘算法对于流量特性的匹配程度也不一样,本发明专利着重研究SDN环境下不同的特征选择方法与数据挖掘算法的结合处理,分析不同的特征选择后对算法运行时间及不同的特征选取方法与分类算法性能的匹配程度,分析得出对于SDN流量的异常流量分析在不同的场景下应采用哪些关键特征以判别流量异常,导致异常流量的原因有很多,比如DDOS攻击、witty婦虫,慢扫描等,其在流量特征中表现不尽相同,将Fisher、ReIiefF以及InfoGain等算法得到的前8_12维特征序列分别与DT、SVM和KNN等分类方法结合,计算其分类结果的准确率,找出不同种类的恶意代码检测分析的匹配特征值和分类方法。4.根据权利要求1所述的基于SDN网络的恶意代码检测方法,其特征是,恶意代码在SDN移动环境下的传播特性分析,建立SDN环境下的网络模型;将网络子网作为社团考虑,子网内部为静态社团,而子网之间为动态社团,通过分析不同的网络模型中,社团间的节点迀移率对恶意代码在源子网和目标子网的感染情况和爆发时间的影响,发现移动环境下,恶意代码如蠕虫的传播对网络演化的影响,对SDN控制器对交换机节点或主机节点路由控制提供理论依据。
【文档编号】G06F21/56GK105956473SQ201610315348
【公开日】2016年9月21日
【申请日】2016年5月15日
【发明人】刘兰, 仇云利
【申请人】广东技术师范学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1