CN104506385A - 一种软件定义网络安全态势评估方法 - Google Patents
一种软件定义网络安全态势评估方法 Download PDFInfo
- Publication number
- CN104506385A CN104506385A CN201410826302.4A CN201410826302A CN104506385A CN 104506385 A CN104506385 A CN 104506385A CN 201410826302 A CN201410826302 A CN 201410826302A CN 104506385 A CN104506385 A CN 104506385A
- Authority
- CN
- China
- Prior art keywords
- attack
- network
- value
- safety situation
- kinds
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种软件定义网络安全态势评估方法,结合SDN集中控制和收集信息直接、快速的优势,针对SDN转发面典型的三类攻击提出了一个开放的SDN安全态势评估框架,该安全框架与SDN控制器的架构紧密契合,其中异常检测模块根据SDN和各类攻击特性提取特征指标,并且选取支持向量分类算法(SVM)进行识别,给出攻击的预判。而安全态势评估模块根据异常检测模块收集的信息对网络安全态势进行量化评估,并通过阈值的设置来调节评估系统对攻击的敏感程度和抗噪声能力。最后本发明对不同的攻击基于层次分析法(AHP)分配不同的权值,从而拟合出网络的综合安全态势值。本发明灵活、简单,能准确地检测到攻击行为并给出网络的安全态势量化评估,以较小的代价实现对SDN转发面安全状况的监测和评估。
Description
技术领域
本发明涉及一种数字信息传输技术,具体涉及一种网络安全状况监测评估技术,用于软件定义网络(Software Defined Network)的安全态势评估。
背景技术
随着软件定义网络(SDN)的普及和进一步研究,网络具有更大的灵活性、开放性和可维护性,网络开发或维护者可以将各种不同功能的应用部署到控制器中实现网络的持续创新。一项重要的应用是对网状况的态势感知,即对影响网络安全的因素进行获取、理解和评估,是对网络安全性进行定量分析,这在网络安全监测和防护领域有重要的意义。而现有对SDN网络安全的研究特别是对网络转发面的研究主要是接入认证、简单的入侵检测等,如在SDN中控制器通过TLS/SSL来认证和授权转发节点的身份以保证转发设备身份的可靠性以及控制器与转发面信道的安全。SDN网络除了认证、授权外还需要对网络节点的行为进行监测、评估,以获取网络的安全态势。传统分布式网络中对网络安全态势评估存在诸多问题,首先传统网络除了要直接从相邻观节点观测到的数据中得出直接信任值外还要接收别的节点对特定节点的推荐信息,同时要确保推荐信息不被伪造,从而增加了信息收集量和甄别的难度。另外传统网络在参数信息的传递与计算上具有空间局限性,由于分布式网络数据的收集要从局部到整体逐级传递,给网络带来较高的负担和延时,难以对网络的变化进行全面实时的监测。而且传统网络中设备差异大,要收集的信息可能千差万别,给评估方法的建模带来新的难度。传统安全评估方案都较复杂,评估模型复杂化这对于全网安全方案的升级变更带来不便,可扩展性差。因此现有网络安全状况研究方案的缺点使得对网络进行准确、实时以及高效的检测评估带来困难。
发明内容
针对现有技术的不足,本发明旨在提供一种SDN网络安全态势评估方法,通过在SDN中设置异常检测模块和安全态势评估模块,由SDN控制器负责整个网络集中化的监测和评估,同时保证方案的简洁、高效和较强的可扩展性强。其中异常检测模块针对三类典型网络攻击的特点抽取出要在SDN中进行检测的具体特征,并应用SVM分类器对异常状况进行分类和识别,而安全态势评估模块则根据得到的统计数据利用贝叶斯理论得到攻击的信任值,并且根据不同攻击的威胁程度基于层次分析法拟合出综合的网络安全态势值。
为了实现上述目的,本发明采用如下技术方案:
首先由异常检测模块给出各类攻击的预判,然后安全态势评估模块在预判的基础上建立针对各类攻击的网络安全态势,具体包括如下步骤:
步骤1,控制器周期性地对各个转发节点的网络指标参数进行采集,异常检测模块根据各类攻击的特点从采集到的样本数据中提取具体的特征指标;
步骤2,在一段时间内收集各类攻击的特征指标Y=(y1,y2,..yn),将这些特征指标作为训练集,通过支持向量机(SVM)分类器进行训练:首先确定分类个数为2,即正常或异常,分类器将所有样本集的特征分类,计算SVM分类器中每个特征向量的相关值,并根据这些相关值计算协方差矩阵空间,然后计算特征系数,获得模型参数;最后对步骤1中的样本数据进行测试分类;
步骤3,进行M次采样后,统计出在该M次采样中,转发节点在各类攻击下的正常次数和异常次数;
步骤4,安全态势评估模块接收到所述异常检测模块的统计数据后,根据贝叶斯理论计算出转发节点在各类攻击下的当前信任值,以评估在各类攻击下转发节点的安全状况;
步骤5,安全态势评估模块在步骤4中计算得出的各个信任值和不同攻击类型对网络的不同危害程度的基础上,为各类攻击对网络安全态势的影响分配相应的权值,并通过拟合得到网络的综合安全态势值。
需要说明的是,所述攻击类型包括TCP洪泛攻击、网络扫描攻击以及转发设备俘获攻击。
进一步需要说明的是,所述TCP洪泛攻击的特征指标包括流平均数据包数以及流平均字节数,其中流平均数据包数以及流平均字节数均采用下式进行计算:
其中X=(x1,x2...xn)是各流的数据包数目或者字节数目组成的序列,并且按从小到大排列,即x1≤x2≤...≤xn。
进一步需要说明的是,所述网络扫描攻击的特征指标包括端口号变化率和大于空闲超时流表项比例,其中端口号变化率采用如下公式进行计算:
其中,和分别为t2和t1时刻下的端口号数目;
另外,所述大于空闲超时流表项比例为超过空闲超时的流表项数站总流表项数的比例,所述空闲超时是指一个流表项没有数据流的时间超过设定的值后流表项会被删除。
进一步需要说明的是,所述转发设备俘获特征指标包括转发节点端口流量变化率和流表一致性检查,其中端口号流量变化率的计算方法如下:
Rtra=(Stra2-Stra1)/(t2-t1);
其中Stra2,Stra1分别为t2和t1时刻的端口数据流速率;
流表一致性检查是指检查控制器和交换机流表状态是否出现不一致。
需要说明的是,步骤4中,根据贝叶斯理论,二元事件服从Beta分布,则转发节点在每个攻击类型下的当前信任值计算如下:
其中,m'和m分别为在该类攻击下的正常次数和异常次数,m'+m=M。
进一步需要说明的是,样本数据进行实时更新,大小为M的样本组成一个长度为M的窗口,若当前的信任值T0计算完成后,样本中的数据整体右移一位,原来的第M个样本数据即离当前时间最远、最陈旧数据的从窗口中淘汰,然后把刚计算出来的T0放入原来T1的位置,即第一个位置,参与下一次信任值的计算,同时保证样本实时更新。
需要说明的是,步骤5中,不同攻击类型的权值是基于层次分析法进行分配的,并且当遭受某类攻击超过一定程度后将对得到的权值进行修正;所述综合安全态势值的计算方法具体如下:
5.1初始化要拟合的元素个数n、某时刻转发节点在各类攻击下的信任值T={TAttack1,TAttack2,...TAttackN}、n×n判断矩阵A以及各类攻击的惩罚阈值C={c1,c2,...,cn};
5.2将判断矩阵A的每一列归一化:
5.3将归一化后的矩阵按行求和:
5.4对向量 进行归一化: 则特征向量为W=[ω1,ω2,...ωn]T,即得到基础权值;
5.5求得特征根值其中A为判断矩阵,W为基础权值,并据此计算一致性指标CI=(t-n)/(n-1);对照随机一致性指标进行一致性检验,如果不通过则调整判断矩阵A并跳转到步骤5.2;否则转到步骤5.6;
5.6如果检测到第i类攻击的异常次数mi大于相应的惩罚阈值ci,则令Δi=mi-ci,对该类攻击的基础权值进行修正其中
5.7对权值向量归一化:得到最终权值:a=[a1,a2,...an]T;
5.8求出最终拟合后的安全态势值
本发明的有益效果在于:
1、本发明以安全态势值来表示转发节点遭受攻击的状况,充分利用SDN集中控制机制,由SDN控制器充当安全评估的主体,引进动态变化的安全态势值作为转发节点的安全度量,避免在网络不稳定时单次判断造成高误判率;同时SDN控制器对转发面设备进行信息收集,跳数少、速度快,保证了实时性,同时转发面设备支持统一的标准如OpenFlow协议,使得信息的收集更加规范高效,从而能以较小代价在整个SDN网络上对安全状况做出客观、实时的评估;
2、本发明具有开放性和可扩展性,网络开发和维护人员可以根据各自特定的需求对安全框架进行扩展,同时所得的评估结果可以被其它上层应用所使用,对于新的攻击只要添加对于这种攻击的检测指标就能得到针对这种攻击的安全态势;
3、本发明结合SDN网络的特点和面临的典型威胁,给出了需要监测的具体特征以及识别方法,同时在SDN控制器中利用SVM分类算法识别是否存在攻击,给出各类攻击的预判;
4、本发明在异常检测模块预判结果的基础上,利用贝叶斯理论将离散的预判值转化为0到1之间的有理数,实现由此建立各类攻击下的安全态势图。
5、本发明利用建立起来的安全态势图,通过调节阈值实现对三类典型攻击的及时准确的检测,将网络噪声期间把无攻击误判为攻击以及攻击期间把攻击误判为无攻击的误判率都控制在很低的限度内。
6、本发明根据不同攻击的威胁程度,基于层次分析法分配不同的拟合权值,能对不同威胁程度的攻击作出准确、敏捷的度量;
7、本发明所采用的系统简洁、灵活,能以较少的资源实现对SDN网络安全状况的监测和评估。
附图说明
图1为本发明的实施示意图;
图2为异常检测模块的功能模块示意图;
图3为仿真实验的网路拓扑示意图;
图4为网络噪声和攻击存在期间的安全态势变化示意图;
图5和图6为阈值与误判率的关系示意图;
图7为安全态势拟合算法与AHP权值分配算法效果比较示意图;
图8为采样间隔与系统CPU占用率的关系示意图。
具体实施方式
以下将结合附图对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
如图1所示,一种SDN网络安全态势评估方法,首先由异常检测模块给出各类攻击的预判,然后安全态势评估模块在预判的基础上建立针对各类攻击的网络安全态势,具体包括如下步骤:
步骤1,控制器周期性地对各个转发节点的网络指标参数进行采集,异常检测模块根据各类攻击的特点从采集到的样本数据中提取具体的特征指标;
步骤2,在一段时间内收集各类攻击的特征指标Y=(y1,y2,..yn),将这些特征指标作为训练集,通过支持向量机(SVM)分类器进行训练:首先确定分类个数为2,即正常或异常,分类器将所有样本集的特征分类,计算SVM分类器中每个特征向量的相关值,并根据这些特征相关值计算协方差矩阵空间,然后计算特征系数,获得模型参数;最后对新的样本数据进行测试分类。
需要说明的是,选择使用SVM的原因在于:(1)SVM广泛地应用于统计分类以及回归分析,是最常用的的分类器之一;(2)SVM非常适合二类问题,而本发明中需要根据指标进行有无异常的判断;(3)SVM即适用于线性数据的分类也适用于非线性数据的分类;(4)SVM对小样本情况下的自动分类有着较好的分类结果,而本发明中要对样本进行周期性的更新,所以并不需要很大的训练样本。
步骤3,进行M次采样后,统计出在该M次采样中,转发节点在各类攻击下的正常次数和异常次数。例如TCP洪泛攻击、网络扫描攻击、转发设备俘获攻击得到的正常次数和异常次数分别为,(a1,a2),(b1,b2),(c1,c2),其中a1,a2,a3分别为三类攻击的正常次数,则a1+a2=b1+b2=c1+c2=M。
步骤4,安全态势评估模块接收到所述异常检测模块的统计数据后,根据贝叶斯理论计算出转发节点在各类攻击下的当前信任值,以评估在各类攻击下转发节点的安全状况;
步骤5,安全态势评估模块在步骤4中计算得出的各个信任值和不同攻击类型对网络的不同危害程度的基础上,为各类攻击对网络安全态势的影响分配相应的权值,并通过拟合得到网络的综合安全态势值。
需要说明的是,如图2所示,所述攻击类型包括TCP洪泛攻击、网络扫描攻击以及转发设备俘获攻击。
进一步需要说明的是,所述TCP洪泛攻击的特征指标包括流平均数据包数以及流平均字节数,其中流平均数据包数以及流平均字节数均采用下式进行计算:
其中X=(x1,x2...xn)是各流的数据包数目或者字节数目组成的序列,并且按从小到大排列,即x1≤x2≤...≤xn。
进一步需要说明的是,所述网络扫描攻击的特征指标包括端口号变化率和大于空闲超时流表项比例,其中端口号变化率采用如下公式进行计算:
其中,和分别为t2和t1时刻下的端口号数目;
另外,所述大于空闲超时流表项比例为超过空闲超时的流表项数站总流表项数的比例,所述空闲超时是指一个流表项没有数据流的时间超过设定的值后流表项会被删除。
进一步需要说明的是,所述转发设备俘获特征指标包括转发节点端口流量变化率和流表一致性检查,其中端口号流量变化率的计算方法如下:
Rtra=(Stra2-Stra1)/(t2-t1);
其中Stra1,Stra2分别为t1和t2时刻的端口数据流速率;
流表一致性检查是指检查控制器和交换机流表状态是否出现不一致。
需要说明的是,步骤4中,根据贝叶斯理论,二元事件服从Beta分布,则转发节点在每个攻击类型下的当前信任值计算如下:
其中,m'和m分别为在该类攻击下的正常次数和异常次数,m'+m=M。这样就将样本中的正常次数m'和异常次数m转化一个0到1之间的值。
需要进一步说明的是,样本数据进行实时更新,大小为M的样本组成一个长度为M的窗口,若当前的信任值T0计算完成后,样本中的数据整体右移一位,原来的第M个样本数据即离当前时间最远、最陈旧数据的从窗口中淘汰,然后把刚计算出来的T0放入原来T1的位置,即第一个位置,参与下一次信任值的计算,同时保证样本实时更新。
需要说明的是,步骤5中,不同攻击类型的权值是基于层次分析法进行分配的,当遭受某类攻击超过一定程度后将对得到的权值进行修正;所述综合安全态势值的计算方法具体如下:
5.1初始化要拟合的元素个数n、某时刻转发节点在各类攻击下的信任值T={TAttack1,TAttack2,...TAttackn}、n×n判断矩阵A以及各类攻击的惩罚阈值C={c1,c2,...,cn};
5.2将判断矩阵A的每一列归一化:
5.3将归一化后的矩阵按行求和:
5.4对向量 进行归一化: 则特征向量为W=[ω1,ω2,...ωn]T,即得到基础权值;
5.5求得特征根值其中A为判断矩阵,W为基础权值,并据此计算一致性指标CI=(t-n)/(n-1);对照平均随机一致性指标进行一致性检验,如果不通过则调整判断矩阵A并跳转到步骤5.2;否则转到步骤5.6;
5.6如果检测到第i类攻击的异常次数mi大于阈值ci,则令Δi=mi-ci,对该类攻击的基础权值进行修正:其中
5.7对权值向量归一化:得到最终权值:a=[a1,a2,...an]T;
5.8求出最终拟合后的安全态势值
以下将通过仿真实验获得的大量数据,分析方案各个变量的关系,以及不同参数的选取对实验结果的影响。
实验环境
实验通过仿真进行,软硬件环境如下,硬件环境:主机3.00GHzCore(TM)2Duo CPU,2.00G内存。软件环境:Ubuntu12.04操作系统。实验采用开源的网络仿真工具Mininet 2.0.0来搭建网络,Pox0.1.0作为整个网络的控制器,由Scapy导入背景流量并且作为网络噪声和攻击产生器,代码均采用Python语言编写。
实验拓扑
仿真采用的网路拓扑如图3所示,一个SDN控制器,负责整个网络的管理。转发面有6个转发节点交换机,其中主机A接入交换机1,主机B接入交换机3,主机D接入交换机6。攻击者C接入交换机4,整个网络的链路带宽设置为10Mbps。主机A同时向主机B和主机D发送背景数据流,发送速率分别为1000pps和200pps。主机D同时向主机A和主机B发送背景数据流,速率分别为1200pps和800pps。网络偶发状况或不可预知的异常造成的网络噪声由主机A来模拟。
考虑到网络噪声的随机性特点,主机A向主机D发送源IP地址和端口号变化,并且速率在100pps到2000pps范围内变动的数据流,发送数据流的间隔和持续时间在0到30秒内随机变化。用IP地址和端口号的变化来模拟不同的用户和应用,速率的随机变化来模拟网络流量大幅波动。发送数据流的间隔和持续时间的随机变化来模拟引起网络噪声因素的随机、不持续和不可预测性等特点。实验中由控制器对转发面进行检测,对交换机4的数据进行分析以对该节点的安全态势进行评估。评估系统可以根据真实网络得到的安全态势图进行相应的变通处理,如对噪声进行衰减时调整单调区间的大小等。
实验数据分析
(1)方案有效性分析
如果网络状态十分稳定,极少出现网络状态大幅波动,则控制器对网络节点的单次采样即可由异常检测系统给出预判值,这时的预判值不再是一种预判而是准确可靠的判断。但是遗憾的是实际的网络是一个非线性的复杂系统,网络由各个网络设备和用户组成,每个设备虽然通过有线或无线链路连接在一起,但是也有各自的独立性。每个个体状态的变化都会给整个网络施加影响,造成网络状态波动。特别是具有突发性的网络偶发状况或不可预知的因素如网络设备故障、人为的群体性活动等都会给网络状态带来剧烈振荡。这种网络振荡对我们检测和评估网络是否受到攻击造成干扰,从而成为检测和评估攻击的噪声。在此期间如果仍然仅仅以一次采样得出的预判值作为最终的判断则显得非常草率,很有可能将这次检测误判为攻击。在网络噪声持续期间会判断出一个时间点网络受到攻击,相隔很短时间又得出网络正常的判断,并且这两种相反的判断结果交替出现。显然这种判断前后矛盾,上层安全决策模块或其他希望获得网络节点安全状态的模块面对这么多的假报警显得无所适从,难以根据检测结果采取相应的动作。
究其根本原因是仅仅采用离散的预判值难以描述网络的安全态势变化趋势,无法辨别网络噪声和正真攻击到来时的区别。所以本发明将离散的预判值量化为在实数域上的安全态势值,综合考虑一段时间内网络状态的变化趋势,将网络偶发状况或其他异常引起的网络状态振荡和真正攻击到来时网络状态变化的特点都呈现在安全态势图上。如图4所示,采样间隔为1s,即1s给出一个安全态势值。0s到80s是网络噪声存在的时间,90s后是TCP洪泛攻击正真到来的时间,在网络噪声引起的网络状态振荡期间安全态势值也随之增加或减少,呈现随机震荡变化的规律。当攻击正真到来时,由于攻击的持续性,安全态势值会持续地单调下降,其下降的单调区间很长。这与网络噪声的特点形成鲜明对比。所以可以先得到某段时间内的安全态势值,然后通过设置阈值的方法来判断是否有攻击存在。阈值设置的越低,对于网络噪声引起的误判的抗击效果越好,如图中将阈值设置为0.6或小于0.6时,几乎可以消除网络噪声带来影响,使得评估系统在有网络噪声期间将噪声误判为攻击的误判率降到最低。但是阈值设置的过低对有攻击到来时将攻击误判为网络正常的误判率带来一定提升,主要是当安全态势值从高位开始下降时,虽然攻击已经到来,但却误判为没有攻击。这种误判率的提高使得安全态势评估系统对攻击到来时的反应时间增长。但当态势值一旦下降到阈值以下后就极少会出现误判。反之,阈值设置的越高,其效果与以上分析相反,即有利于对攻击的判断,不利于抗击网络噪声带来的误判。图中十字线表示对原始安全态势值进行预处理,根据5.1中描述的方法,单调区间设置为1/2窗口大小,这里为15s。
(2)安全态势评估系统的误判率
评估系统的误判率分为将有攻击误判为没有攻击和将没有攻击误判为有攻击两种。将有攻击记为True,没有攻击记为False。将有攻击误判为没有攻击的误判率记为RTF,将没有攻击误判为有攻击的误判率记为RFT。当网络状态非常稳定没有噪声时,评估系统能准确判断有无攻击到来,可以直接用预判值来确定有无攻击。只有当网络状态随时间变化,并存在各种因素造成的网络噪声时,会有较高的误判率,所以我们只考虑有网络噪声存在的情况。当网络噪声和攻击同时存在时,由于网络噪声会引起网络偏离稳定状态随机振荡,攻击也使网络大幅偏离网络稳定状态,所以当网络噪声和攻击并存时,安全态势值必然下降,也即必然能检测到攻击。但是我们是通过给安全态势图划定阈值进行判断是否有攻击的,即安全态势值大于阈值判断为无攻击,反之小于阈值则有攻击。所以对于有攻击时的误判率RTF(无论是否有噪声)只与阈值设定有关。而只有网络噪声时(没有攻击),将没有攻击误判为有攻击的误判率RFT也与阈值设定相关。但两者的误判率的降低对于阈值设定的要求是矛盾的,对于它们的关系在(1)已经做了描述。我们希望将有噪声存在期间(没有攻击干扰,否则攻击会覆盖掉噪声)误判率RFT和攻击存在期间将有攻击误判为没有攻击的误判率RTF。对于有噪声期间的误判率RFT都限制在较低的水平。模拟网络噪声程序由Host A运行,持续时间30分钟,在此期间记录每次是否有攻击和每一个安全态势值。对于攻击存在期间的误判率RTF,各类攻击的持续时间为30分钟,在此期间对于类攻击记录每次是否有攻击和每一个安全态势值。最后计算用离散的预判值得到的整体误判率R,以及根据选取的合适的阈值计算RFT和RTF。实验中将采样间隔设置为1s,样本大小M设置30,流表的Idle_timeout设置为10s,Hard_timeout为30s。安全态势评估系统每隔1s给出一个安全态势值。
1)误判率RFT
对于只有网络噪声存在期间的误判率RFT,表1中给出了阈值k为0.78时将噪声误判为三类攻击的误判率。当阈值k设置为0.78时,针对三类攻击的误判率有了显著的降低。平均误判率RFT为3.03%。
表1
RFT与阈值的设定有密切的关系,图5给出网络噪声期间不同阈值下阈三类攻击的平均误判率,从图中可以看出设置不同的阈值对误判率RFT有较大影响。当阈值超过0.78时,随着阈值k的上升误判率将有明显上升。当阈值k为0.82时,三类攻击的平均误判率上升到12.3%,但即便如此,相对直接用离散的预判值法,仍然将误判率降低了约68.9%。所以系统可以通过调整阈值来对确定可以接受的误判率。采用安全态势值然后划分阈值的方法对去除网络噪声带来的误判有很好的效果。
2)误判率RTF
对于攻击期间的误判率RTF,在攻击开始下降时,在阈值以上部分会认为攻击没有发生,而实际攻击已经发生,但是一旦安全态势值低于阈值则能够准确判断出攻击。图6给出攻击存在期间不同阈值下阈三类攻击的平均误判率,误判率随着阈值的增大,总体呈类似线性下降的规律。表2中给出了阈值k为0.78时将攻击误判为正常的误判率RTF。从表中可以看到使用安全态势值方法比离散的预判值的误判率稍高,但总体上两者的误判率都较低,都能够满足实际的需求。
表2
虽然阈值设置低一些对总体的误判率影响不大,但是会造成攻击真正到来时与评估系统判断为攻击之间存在延时。实际上系统的安全态势值已经在降低,只不过当安全态势值还在高位的时候考虑可也能由于网络噪声引起而暂不判断为攻击,一旦态势值低于阈值,后续的判断一样有效。
(3)不同攻击对综合安全态势的影响
在拟合算法中,我们取判断矩阵A=[1,1/3,1/7;3,1,1/4;7,4,1],设定所有攻击的惩罚定阈值为15,即当样本异常次数超过15次时,将会对相应权值有所调整。图7是测试分别只受到三类攻击中的一类攻击时,应用经典AHP算法和经过修改的安全态势值拟合算法得出的综合安全态势值的变化趋势,攻击在时刻0s发起。由圆点组成的线为TCP洪泛攻击,棱形线为网络扫描攻击,十字线为设备俘获攻击。图中实线为使用经典AHP算法所得出来的拟合结果。虚线为经过修改的拟合算法得出的结果。首先无论应用哪种算法,考虑到TCP洪泛攻击的危害相对较小,初始化时判断矩阵给予的权值较小,所以TCP洪泛攻击对整体安全态势值影响最小。转发设备俘获攻击危害最大,给予最大的权值,网络扫描攻击则居于两者之间。图中数据也体现这一点,TCP洪泛攻击使安全态势值下降最慢,设备俘获攻击则使态势值下降最快,这体现了我们设置判断矩阵的意图。虚线部分为使用改进的权值分配算法后的安全态势变化趋势。算法为每类攻击设置了惩罚阈值,当某类攻击持续进行,评估样本中异常次数超过了惩罚阈值后适当加大该攻击权值,从而加大该攻击对整体安全态势值的影响。比较可得对于经典的AHP权值分配算法,无论攻击是否发生,判断矩阵一定下来这三类攻击的权值将固定不变。而经过改进的权值分配算法在判断矩阵的基础上会适当加大当前正受到攻击的权值,从而增大正在造成侵害和损失的攻击对综合安全态势值的影响力。
(4)采样频率与评估系统的CPU占用率
图8表示采样频率与安全态势评估系统的cpu占用率的关系。可以看到当采样间隔大于40ms时,系统对cpu的消耗在10%以内,当cpu的采样间隔小于40ms时系统对cpu的消耗会急剧升高,当采样间隔为0.1ms时,系统对cpu占有率高达90%。所以要在采样频率和系统资源消耗之间做出权衡。若将采样频率设为100ms,cpu占有率下降到3.5%;当采样频率设置为1s时,cpu占有率小于1%,并已经能对三类攻击很好的检测和评估,从而以较小的资源消耗完成对SDN整体网络的安全态势评估。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形都应该包括在本发明权利要求的保护范围之内。
Claims (8)
1.一种软件定义网络安全态势评估方法,其特征在于:首先由异常检测模块给出各类攻击的预判,然后安全态势评估模块在预判的基础上建立针对各类攻击的网络安全态势,具体包括如下步骤:
步骤1,控制器周期性地对各个转发节点的网络指标参数进行采集,异常检测模块根据各类攻击的特点从采集到的样本数据中提取具体的特征指标;
步骤2,在一段时间内收集各类攻击的特征指标Y=(y1,y2,..yn),将这些特征指标作为训练集,通过支持向量机(SVM)分类器进行训练:首先确定分类个数为2,即正常或异常,分类器将所有样本集的特征分类,计算SVM分类器中每个特征向量的相关值,并根据这些相关值计算协方差矩阵空间,然后计算特征系数,获得模型参数;最后对步骤1中的样本数据进行测试分类;
步骤3,进行M次采样后,统计出在该M次采样中,转发节点在各类攻击下的正常次数和异常次数;
步骤4,安全态势评估模块接收到所述异常检测模块的统计数据后,根据贝叶斯理论计算出转发节点在各类攻击下的当前信任值,以评估在各类攻击下转发节点的安全状况;
步骤5,安全态势评估模块在步骤4中计算得出的各个信任值和不同攻击类型对网络的不同危害程度的基础上,为各类攻击对网络安全态势的影响分配相应的权值,并通过拟合得到网络的综合安全态势值。
2.根据权利要求1所述的一种软件定义网络安全态势评估方法,其特征在于,所述攻击类型包括TCP洪泛攻击、网络扫描攻击以及转发设备俘获攻击。
3.根据权利要求2所述的一种软件定义网络安全态势评估方法,其特征在于,所述TCP洪泛攻击的特征指标包括流平均数据包数以及流平均字节数,其中流平均数据包数以及流平均字节数均采用下式进行计算:
其中X=(x1,x2...xn)是各流的数据包数目或者字节数目组成的序列,并且按从小到大排列,即x1≤x2≤...≤xn。
4.根据权利要求2所述的一种软件定义网络安全态势评估方法,其特征在于,所述网络扫描攻击的特征指标包括端口号变化率和大于空闲超时流表项比例,其中端口号变化率GDP采用如下公式进行计算:
其中和分别为t2和t1时刻的端口号数目;
另外,所述大于空闲超时流表项比例为超过空闲超时的流表项数站总流表项数的比例,所述空闲超时是指一个流表项没有数据流的时间超过设定的值后流表项会被删除。
5.根据权利要求2所述的一种软件定义网络安全态势评估方法,其特征在于,所述转发设备俘获特征指标包括转发节点端口流量变化率和流表一致性检查,其中端口号流量变化率的计算方法如下:
Rtra=(Stra2-Stra1)/(t2-t1);
其中Stra2,Stra1分别为t2和t1时刻的端口数据流速率;
流表一致性检查是指检查控制器和交换机流表状态是否出现流表不一致。
6.根据权利要求1所述的一种软件定义网络安全态势评估方法,其特征在于,步骤4中,根据贝叶斯理论,二元事件服从Beta分布,则转发节点收集M次预判值后,在每个攻击类型下的当前信任值计算方法如下:
其中,m'和m分别为在该类攻击下的正常次数和异常次数,m'+m=M。
7.根据权利要求6所述的一种软件定义网络安全态势评估方法,其特征在于,样本数据进行实时更新,大小为M的样本组成一个长度为M的窗口,若当前的信任值T0计算完成后,样本中的数据整体右移一位,原来的第M个样本数据即离当前时间最远、最陈旧数据的从窗口中淘汰,然后把刚计算出来的T0放入原来T1的位置,即第一个位置,参与下一次信任值的计算,同时保证样本实时更新。
8.根据权利要求1所述的一种软件定义网络安全态势评估方法,其特征在于,步骤5中,不同攻击类型的权值是基于层次分析法进行分配的,并且当遭受某类攻击超过一定程度后将对得到的权值进行修正;所述综合安全态势值的计算方法具体如下:
5.1初始化要拟合的元素个数n、某时刻转发节点在各类攻击下的信任值T={TAttack1,TAttack2,...TAttackn}、n×n判断矩阵A以及各类攻击的惩罚阈值C={c1,c2,...,cn};
5.2将判断矩阵A的每一列归一化:
5.3将归一化后的矩阵按行求和:
5.4对向量 进行归一化: 则特征向量为W=[ω1,ω2,...ωn]T,即得到基础权值;
5.5求得特征根值其中A为判断矩阵,W为基础权值,并据此计算一致性指标CI=(t-n)/(n-1);对照标准平均随机一致性指标进行一致性检验,如果不通过则调整判断矩阵A并跳转到步骤5.2;否则转到步骤5.6;
5.6如果检测到第i类攻击的异常次数mi大于相应的惩罚阈值ci,则令Δi=mi-ci,对该类攻击的基础权值进行修正其中
5.7对权值向量归一化:得到最终权值:a=[a1,a2,...an]T;
5.8求出最终拟合后的安全态势值
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410826302.4A CN104506385B (zh) | 2014-12-25 | 2014-12-25 | 一种软件定义网络安全态势评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410826302.4A CN104506385B (zh) | 2014-12-25 | 2014-12-25 | 一种软件定义网络安全态势评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104506385A true CN104506385A (zh) | 2015-04-08 |
CN104506385B CN104506385B (zh) | 2018-01-05 |
Family
ID=52948100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410826302.4A Active CN104506385B (zh) | 2014-12-25 | 2014-12-25 | 一种软件定义网络安全态势评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104506385B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131027A (zh) * | 2016-07-19 | 2016-11-16 | 北京工业大学 | 一种基于软件定义网络的网络异常流量检测防御系统 |
CN106789351A (zh) * | 2017-01-24 | 2017-05-31 | 华南理工大学 | 一种基于sdn的在线入侵防御方法和系统 |
CN107222433A (zh) * | 2017-04-18 | 2017-09-29 | 中国科学院信息工程研究所 | 一种基于sdn网络路径的访问控制方法及系统 |
CN107294795A (zh) * | 2017-08-02 | 2017-10-24 | 上海上讯信息技术股份有限公司 | 一种网络安全态势预测方法及设备 |
CN109086187A (zh) * | 2018-07-26 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种性能告警方法和装置 |
CN111327494A (zh) * | 2020-02-14 | 2020-06-23 | 山东工商学院 | 一种多域sdn网络流量态势评估方法及系统 |
CN111917747A (zh) * | 2020-07-17 | 2020-11-10 | 上海大学 | 一种校园网络安全态势感知系统及方法 |
CN112149818A (zh) * | 2019-06-27 | 2020-12-29 | 北京数安鑫云信息技术有限公司 | 威胁识别结果评估方法和装置 |
CN114189354A (zh) * | 2021-11-10 | 2022-03-15 | 西安理工大学 | SYN Flooding网络攻击场景复现方法 |
CN114338206A (zh) * | 2021-12-31 | 2022-04-12 | 曙光网络科技有限公司 | Ddos攻击检测方法、装置、设备以及存储介质 |
CN116781418A (zh) * | 2023-08-16 | 2023-09-19 | 南京邮电大学 | 一种基于神经网络和svm的sdn恶意控制器检测方法 |
CN117254978A (zh) * | 2023-11-16 | 2023-12-19 | 苏州元脑智能科技有限公司 | 一种异常扫描行为的处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040168100A1 (en) * | 2000-12-04 | 2004-08-26 | Thottan Marina K. | Fault detection and prediction for management of computer networks |
CN101867498A (zh) * | 2009-04-17 | 2010-10-20 | 中国科学院软件研究所 | 一种网络安全态势评估方法 |
CN102457524A (zh) * | 2011-11-23 | 2012-05-16 | 中国人民解放军国防科学技术大学 | 层次式网络的安全态势聚合方法 |
-
2014
- 2014-12-25 CN CN201410826302.4A patent/CN104506385B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040168100A1 (en) * | 2000-12-04 | 2004-08-26 | Thottan Marina K. | Fault detection and prediction for management of computer networks |
CN101867498A (zh) * | 2009-04-17 | 2010-10-20 | 中国科学院软件研究所 | 一种网络安全态势评估方法 |
CN102457524A (zh) * | 2011-11-23 | 2012-05-16 | 中国人民解放军国防科学技术大学 | 层次式网络的安全态势聚合方法 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131027B (zh) * | 2016-07-19 | 2019-09-27 | 北京工业大学 | 一种基于软件定义网络的网络异常流量检测防御系统 |
CN106131027A (zh) * | 2016-07-19 | 2016-11-16 | 北京工业大学 | 一种基于软件定义网络的网络异常流量检测防御系统 |
CN106789351A (zh) * | 2017-01-24 | 2017-05-31 | 华南理工大学 | 一种基于sdn的在线入侵防御方法和系统 |
CN107222433A (zh) * | 2017-04-18 | 2017-09-29 | 中国科学院信息工程研究所 | 一种基于sdn网络路径的访问控制方法及系统 |
CN107222433B (zh) * | 2017-04-18 | 2019-12-10 | 中国科学院信息工程研究所 | 一种基于sdn网络路径的访问控制方法及系统 |
CN107294795A (zh) * | 2017-08-02 | 2017-10-24 | 上海上讯信息技术股份有限公司 | 一种网络安全态势预测方法及设备 |
CN109086187A (zh) * | 2018-07-26 | 2018-12-25 | 郑州云海信息技术有限公司 | 一种性能告警方法和装置 |
CN112149818A (zh) * | 2019-06-27 | 2020-12-29 | 北京数安鑫云信息技术有限公司 | 威胁识别结果评估方法和装置 |
CN112149818B (zh) * | 2019-06-27 | 2024-04-09 | 北京数安鑫云信息技术有限公司 | 威胁识别结果评估方法和装置 |
CN111327494B (zh) * | 2020-02-14 | 2023-05-16 | 山东工商学院 | 一种多域sdn网络流量态势评估方法及系统 |
CN111327494A (zh) * | 2020-02-14 | 2020-06-23 | 山东工商学院 | 一种多域sdn网络流量态势评估方法及系统 |
CN111917747A (zh) * | 2020-07-17 | 2020-11-10 | 上海大学 | 一种校园网络安全态势感知系统及方法 |
CN114189354A (zh) * | 2021-11-10 | 2022-03-15 | 西安理工大学 | SYN Flooding网络攻击场景复现方法 |
CN114338206A (zh) * | 2021-12-31 | 2022-04-12 | 曙光网络科技有限公司 | Ddos攻击检测方法、装置、设备以及存储介质 |
CN114338206B (zh) * | 2021-12-31 | 2024-05-07 | 曙光网络科技有限公司 | Ddos攻击检测方法、装置、设备以及存储介质 |
CN116781418A (zh) * | 2023-08-16 | 2023-09-19 | 南京邮电大学 | 一种基于神经网络和svm的sdn恶意控制器检测方法 |
CN116781418B (zh) * | 2023-08-16 | 2023-10-31 | 南京邮电大学 | 一种基于神经网络和svm的sdn恶意控制器检测方法 |
CN117254978A (zh) * | 2023-11-16 | 2023-12-19 | 苏州元脑智能科技有限公司 | 一种异常扫描行为的处理方法及装置 |
CN117254978B (zh) * | 2023-11-16 | 2024-02-09 | 苏州元脑智能科技有限公司 | 一种异常扫描行为的处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104506385B (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104506385A (zh) | 一种软件定义网络安全态势评估方法 | |
CN102957579B (zh) | 一种网络异常流量监测方法及装置 | |
CN101399672B (zh) | 一种多神经网络融合的入侵检测方法 | |
CN109639515A (zh) | 基于隐马尔可夫和Q学习协作的DDoS攻击检测方法 | |
Norouzian et al. | Classifying attacks in a network intrusion detection system based on artificial neural networks | |
CN101355504A (zh) | 一种用户行为的确定方法和装置 | |
Tertytchny et al. | Classifying network abnormalities into faults and attacks in IoT-based cyber physical systems using machine learning | |
Li et al. | A machine learning based intrusion detection system for software defined 5G network | |
CN106209457A (zh) | 应对智能家居环境中旁路攻击的隐私保护方法及系统 | |
CN110493260A (zh) | 一种网络洪范攻击行为检测方法 | |
CN110162968A (zh) | 一种基于机器学习的网络入侵检测系统 | |
CN109861825B (zh) | Cps系统中基于加权规则与一致度的内部攻击检测方法 | |
CN106231617A (zh) | 基于模糊逻辑的无线传感器网络多传感器数据融合方法 | |
CN104734916A (zh) | 一种基于tcp协议的高效多级异常流量检测方法 | |
CN108429767A (zh) | 一种基于人工智能的网络安全态势预测系统 | |
Singhal et al. | Congestion detection in wireless sensor network using neural network | |
Al-Sanjary et al. | Comparison and detection analysis of network traffic datasets using K-means clustering algorithm | |
CN104158823B (zh) | 一种面向LDoS与LDDoS的模拟方法 | |
CN115333849A (zh) | 一种计算机网络安全入侵检测系统 | |
Pavani et al. | Intrusion detection using MLP for MANETs | |
RU178282U1 (ru) | Устройство контроля состояния защищенности автоматизированных систем управления военного назначения | |
Ghanem et al. | NEW APPROACH TO IMPROVE ANOMALY DETECTION USING A NEURAL NETWORK OPTIMIZED BY HYBRID ABC AND PSO ALGORITHMS. | |
Tran | Network anomaly detection | |
Labonne et al. | Predicting bandwidth utilization on network links using machine learning | |
Rahman et al. | ANFIS based cyber physical attack detection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |