法律状态公告日
法律状态信息
法律状态
2020-04-07
授权
授权
2019-09-03
实质审查的生效 IPC(主分类):H04L29/06 申请日:20190626
实质审查的生效
2019-08-09
公开
公开
技术领域
本发明属于网络安全技术领域,特别涉及一种基于信息干扰的DDoS攻击中僵尸主机检测方法。
背景技术
分布式拒绝服务攻击(Distributed Denial of Service attack,DDoS)是攻击者通过控制大量僵尸主机,对一个或多个目标同时发动攻击,通过消耗攻击目标的服务资源或网络带宽,使其不能对正常用户请求进行处理和响应。随着网络技术的不断发展,也为DDoS攻击的发展提供了许多便利条件,DDoS攻击强度以及发生次数逐年上升。2018年DDoS攻击峰值流量已达1.7Tbps,并且据Imperva公布的资料显示,在2019年4月的一起DDoS攻击事件中,DDoS攻击强度已达580Mpps(packets per second),而中国是DDoS攻击多发国家。由于DDoS攻击强度的不断提高,同时随着近些年各种新型网络技术以及人工智能技术的发展,DDoS攻击机制愈发复杂和精细,其隐蔽性也不断提高,为DDoS攻击检测及缓解带来了巨大的挑战。
现有检测机制大多利用已存在的DDoS攻击机制固有特点进行检测,例如通过一些报文级的特征或流级的特征,分析攻击流量和正常流量在这些特征上的区别,使用设定的阈值进行检测,此外还有一些研究通过分析流之间的相关性进行DDoS攻击检测。但对于这些检测方案,随着DDoS攻击技术的发展,攻击者通过优化其攻击机制并更加精巧地构造攻击报文可以有效躲避检测。此外,由于DDoS攻击洪泛流量在从源端向目的端传输的过程中会消耗路径上的许多资源,例如处理时间,带宽资源等。因此DDoS攻击检测的目标是尽量早的检测出攻击的发生,这对于攻击的缓解和节约资源以及维护网络稳定都具有重要意义,因此检测机制应当尽量部署在靠近攻击源的位置,做到早发现,早预警。而由于DDoS攻击机制的特点:一般是通过控制大量僵尸主机同时向攻击目标发送攻击报文,DDoS攻击流量从源端到目的端呈现出不断汇聚的特点,在目的主机端会接收到所有汇聚而来的攻击流量,因此在目的主机端进行攻击检测相对于在攻击源端进行检测较为容易,因此现有检测方案也大多部署在攻击目的端。通常当检测到网络中发生DDoS攻击时,最佳的做法是断开和僵尸主机的连接或对来自僵尸主机的报文直接丢弃,不进行任何处理。因此识别出网络中的僵尸主机对于DDoS攻击的缓解具有重要意义,而现有的检测方案大多只能检测出网络中是否发生了攻击,不能有效识别出存在的僵尸主机。
因此,针对DDoS攻击发展趋势,设计出可部署在攻击源端,能有效识别出网络中僵尸主机的DDoS攻击检测方法对于提高网络安全性具有重要的意义。
发明内容
本发明的目的在于克服现有技术的不足,提供一种可以部署在DDoS攻击源端的检测方案,达到了早发现早报警的目标,在时间上能较早地检测出发生的攻击,为攻击的防御和缓解抢占了先机的基于信息干扰的DDoS攻击中僵尸主机检测方法。
本发明的目的是通过以下技术方案来实现的:一种基于信息干扰的DDoS攻击中僵尸主机检测方法,包括以下步骤:
S1、分析和统计网络中正常流量在各待选特征上的均值和方差,分析得到各待选特征的最大容许值;对于每一个待选特征,采用一个均值、方差和最大容许值的三元组表示;并将各个待选特征组成一个待选特征集合;
S2、根据待检测主机所在网络的最大带宽、待检测主机所在网络当前流量以及可容许的最大错检率从待选特征集合中选择出符合要求的待选特征;
S3、计算步骤S2中选择出的每一个待选特征在其均值基础上所需的偏移值,并得到各待选特征的设定值以此来构造干扰报文,同时计算干扰报文的发送速率;
S4、向待检测主机发送干扰流量,统计待检测主机在所有特征上的用户流量均值,比较每个特征的用户流量均值与所有用户流量均值之间的差值,判断该差值的绝对值是否大于或等于预设阈值,若所有特征均满足条件则判定待检测主机为僵尸主机,否则判定待检测主机为正常主机。
进一步地,所述步骤S2具体实现方法为:记从步骤S1中得到n个待选特征,第i个特征的三元组表示为
步骤S2包括以下子步骤:
S21、将n个特征
S22、将Fasc中还未加入特征集合Fselected的第一个特征fj加入Fselected,并由下式计算得到选择特征fj后的错检率保证εj:
其中,1≤j≤n;
S23、由集合Fselected=(f1,...,fm)中各特征对应的错检率保证参数计算整体的错检率保证:
1≤m≤n,1≤k≤m;
若εnow≤p则输出选择出的特征集合Fselected并执行步骤S3,否则返回步骤S22。
进一步地,所述步骤S3具体实现方法为:记Fselected中特征fk在其均值μk的基础上需要添加的偏移值为Δk,干扰报文发送速率为γ;待检测主机以速率γ发送由特征为Fselected且各特征值为FVsend=(μ1+Δ1,...,μm+Δm)构造的干扰报文;
步骤S3包括以下子步骤:
S31、建立特征偏移值和干扰报文发送速率最优化模型:为保证干扰报文的隐蔽性并最大程度地降低对网络的负担,应使Δk以及γ最小,即:
S32、确定最优化模型的约束条件,包括网络带宽约束、错检率约束和基本物理含义约束;
S33、根据约束条件求解最优化模型,得到最优的各特征偏移值及攻击报文发送速率。
进一步地,所述步骤S33包括以下步骤:
S331、定义障碍函数:
其中
S332、选取优化模型可行域内初始点
S333、以
S334、检验迭代终止准则,如果满足
和
则停止迭代计算,
S335、置rk+1=Crk,k=k+1,返回步骤S333;
S336、求解出的最优解用
进一步地,所述步骤S333中,用Powell修正算法求解障碍函数
S3331、取初始点
S3332、从
S3333、找出使函数值下降最多的那个方向
S3334、从
S3335、检验是否已满足终止准则:
S3336、若
S3337、置
本发明通过先干扰后检测的思路进行DDoS攻击中僵尸主机的识别,先通过分析网络中正常用户流量在各待选特征上的均值和方差,并以此为依据选择出可以有效控制错检率的特征集,通过在选择出的各特征均值的基础上加上一个偏移量用于构造干扰报文。由于僵尸主机攻击机制的特点,受到干扰流量的影响后,其发送的流量在这些特征上的分布均值会发生变化,而网络中正常用户的行为不会受到干扰流量影响,因此僵尸主机流量和正常主机流量在这些特征上的分布均值会出现区别,最后通过分析待检测主机流量在这些特征上的偏移量是否大于设定门限从而进行僵尸主机的识别。本方案实现了根据网络状态动态地进行特征选择,并通过最优化模型解决了攻击报文各特征设定值大小以及报文发送速率大小的问题,通过此方法能有效地进行DDoS攻击中僵尸主机的识别。本发明的有益效果为:
(1)本发明提供了一种先干扰后检测的思路,能有效地检测出具有一定学习能力的僵尸主机,弥补了对于具有一定学习能力的DDoS攻击机制检测方面的不足,为检测更加先进和巧妙的DDoS攻击提供了思路;
(2)本发明提供了一种可以部署在DDoS攻击源端的检测方案,达到了早发现早报警的目标,在时间上能较早地检测出发生的攻击,为攻击的防御和缓解抢占了先机;
(3)本发明在检测网络中是否发生DDoS攻击的同时能识别出网络中存在的僵尸主机,对于攻击的缓解极具意义。
附图说明
图1为本发明的实施例提供的网络场景图;
图2为基于信息干扰的DDoS攻击中僵尸主机检测方法的流程图。
具体实施方式
随着网络技术的发展,DDoS攻击机制也愈发先进和巧妙,若攻击者在发动攻击前可以使各个僵尸主机先收集网络中用户流量,并提取每个收集的用户报文的特征形成正常报文模式并以此组成一个仿真字典,在构造攻击报文时随机均匀地从仿真字典中选择一个正常报文模式来构造攻击报文。在发动攻击时,让各僵尸主机同时向攻击目标以变速率发送攻击报文,达到拒绝服务攻击的目的。针对这种具有一定学习能力的变速率DDoS攻击,本发明提供了一种可以部署在源端的,通过先干扰再检测的DDoS攻击检测方法,通过此方法还可以有效识别出网络中存在的僵尸主机。下面结合附图进一步说明本发明的技术方案。
如图1所示,若网络中存在若干僵尸主机,在发动攻击前各个僵尸主机先收集网络中用户流量,并提取每个收集的用户报文特征形成正常报文模式并以此组成一个仿真字典,在构造攻击报文时随机均匀地从仿真字典中选择一个正常报文模式来构造攻击报文。在发动攻击时,各僵尸主机同时向攻击目标以变速率发送攻击报文,达到拒绝服务攻击的目的。为了检测具有这种攻击特点的僵尸主机:
如图2所示,一种基于信息干扰的DDoS攻击中僵尸主机检测方法,包括以下步骤:
S1、分析和统计网络中正常流量在各待选特征上的均值和方差,分析得到各待选特征的最大容许值;对于每一个待选特征,采用一个均值、方差和最大容许值的三元组表示;并将各个待选特征组成一个待选特征集合;检测主机可以通过使用一些网络嗅探工具得到当前网络状态下的一些正常用户流量,然后对这些正常用户流量在各特征上的取值进行统计分析,这里的特征可以是报文级别的特征,例如报文头部一些字段的取值,如IP数据报头部的首部长度、总长度、标识、片偏移和生存时间等。统计得到各特征的均值和方差,同时可以根据具体协议要求或者网络实际情况确定出各特征的最大容许值,例如由于IP协议的限定,IP数据报中生存时间字段最大值为255。
S2、根据待检测主机所在网络的最大带宽、待检测主机所在网络当前流量以及可容许的最大错检率从待选特征集合中选择出符合要求的待选特征;具体实现方法为:记从步骤S1中得到n个待选特征,第i个特征的三元组表示为
若将每一个特征看作一个随机变量Xi(1≤i≤n),则由切比雪夫不等式,当某一个报文在特征Xi(1≤i≤n)上的取值与其均值μi相差大于Δi的概率小于
因此,在发送干扰流量时,若选择一个特征fi(1≤i≤n)并将其取值设定为容许的最大值vmaxi同时以容许的最大速率Bmax-Bc(其中Bmax表示待检测主机所在网络的最大带宽,Bc表示网络中当前流量速率)发送时,僵尸主机受到干扰流量的影响,其发送流量在特征fi上的取值为:
与此特征均值μi的偏差为
通过上述分析,得到步骤S2的具体算法包括以下子步骤:
S21、将n个特征
S22、将Fasc中还未加入特征集合Fselected的第一个特征fj加入Fselected,并由下式计算得到选择特征fj后的错检率保证εj:
其中,1≤j≤n;
S23、由集合Fselected=(f1,...,fm)中各特征对应的错检率保证参数计算整体的错检率保证:
1≤m≤n,1≤k≤m;
若εnow≤p则输出选择出的特征集合Fselected并执行步骤S3,否则返回步骤S22。
S3、选择出可使用的特征集后,可以通过这些特征构造干扰报文:计算步骤S2中选择出的每一个待选特征在其均值基础上所需的偏移值,并得到各待选特征的设定值以此来构造干扰报文,同时计算干扰报文的发送速率;
具体实现方法为:记Fselected中特征fk在其均值μk的基础上需要添加的偏移值为Δk,使其区别于正常用户流量在这些特征上的分布规律;干扰报文发送速率为γ;待检测主机以速率γ发送由特征为Fselected且各特征值为FVsend=(μ1+Δ1,...,μm+Δm)构造的干扰报文;
为了根据当前网络实际情况确定各特征偏移值Δk(1≤k≤m)以及干扰报文发送速率γ的最佳取值,需要通过最优化模型进行求解,具体包括以下子步骤:
S31、建立特征偏移值和干扰报文发送速率最优化模型:为保证干扰报文的隐蔽性并最大程度地降低对网络的负担,应使Δk以及γ最小,即:
其中0≤α≤1,这里需要同时最小化特征的偏移值和干扰报文发送速率两个不同的量,通过参数α可以对这两个量设定不同的优化权重,α越大,表示对干扰报文的隐蔽性重视程度越高,对降低网络负担的重视程度越低。α的具体值可以由用户根据实际情况确定。
S32、确定最优化模型的约束条件,由于网络实际情况和各特征具体含义要求,Δk(1≤k≤m)和γ受到以下限制条件约束:
C1网络带宽约束:发送的干扰流量会加重网络负担,因此发送的干扰报文速率受到网络最大带宽的限制,即:
γ+Bc≤Bmax>
C2错检率约束:若待检测主机为僵尸主机,其收到干扰流量后,由于其攻击机制的特点,从其发出的流量在各特征上的统计均值会发生变化,在原本均值的基础上产生一定偏移。为了保证把正常流量判定为受到干扰流量影响的攻击流量的概率,需要保证受到干扰流量影响后的攻击流量在选取的各特征上统计均值的偏移超过一定门限。
假设检测主机以速率γ发送由特征为Fselected且各特征值为FVsend=(μ1+Δ1,...,μm+Δm)构造的干扰报文,僵尸主机受到干扰流量的影响,其发送流量在特征
因此,为了在进行僵尸主机识别的时候,保证错检率不高于p,即将一个正常主机判定为僵尸主机的概率不高于为p。对于各特征的偏移值Δk(1≤k≤m)以及干扰报文发送速率γ应有如下约束:
其中δi(1≤i≤m)可人为设定,但为了保证错检率不高于p,根据切比雪夫不等式需满足
C3基本物理含义约束:根据各特征的实际含义以及攻击报文发送速率的物理意义产生的约束条件。由于各特征以及干扰报文发送速率γ都有其具体的物理意义,因此应满足:
由上所述,通过考虑实际网络环境,将各特征偏移值Δk(1≤k≤m)和干扰报文发送速率γ的选取问题描述为如下最优化模型:
在求解时,可通过障碍函数法在每次迭代求解时,将所求的带有约束极值问题转换为无约束极值问题,再使用Powell改进算法求解出当次迭代的极小值,如满足要求则停止迭代并得出最优解,若不满足要求,则重复迭代过程直至求得最优解。
S33、根据约束条件求解最优化模型,得到最优的各特征偏移值及攻击报文发送速率;包括以下步骤:
S331、定义障碍函数:
其中
S332、选取优化模型可行域内初始点
S333、以
用Powell修正算法求解障碍函数
S3331、取初始点
S3332、从
S3333、找出使函数值下降最多的那个方向
S3334、从
S3335、检验是否已满足终止准则:
S3336、若
S3337、置
S334、检验迭代终止准则,如果满足
和
则停止迭代计算,
S335、置rk+1=Crk,k=k+1,返回步骤S333;
S336、求解出的最优解用
S4、向待检测主机发送干扰流量,统计待检测主机在Fselected中所有特征上的用户流量均值μ′k(1≤k≤m),比较每个特征的用户流量均值与所有用户流量均值之间的差值,判断该差值的绝对值是否大于或等于预设阈值:
|μ′k-μk|≥δk(1≤k≤m)>
若所有特征均满足条件则判定待检测主机为僵尸主机,否则判定待检测主机为正常主机。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
机译: 基于主机的模具信息系统,客户端,主机是基于主机的模具中的前述主机
机译: 一种用于计算机的无线数据传输方法,包括使用主机的最新互联网协议地址建立连接,并基于已建立的连接进行主机与客户端之间的信息交换。
机译: 信息处理设备,其控制方法和计算机可读存储介质,用于更新存储在存储单元中的设备信息中与设备相对应的设备信息,以及用于将用于释放分配给该设备的互联网协议地址的通知发送给基于接收到的信息是否指定特定条件的动态主机配置协议服务器