针对RED的LDoS攻击流模拟研究

2017-07-12 09:42张赛超孙迪赵丹
软件导刊 2017年6期

张赛超+孙迪+赵丹

摘要:根据网络流量自相似性的形成机理和LDoS攻击流的特点,综合网络中TCP和UDP常见协议,提出一个基于NS2的LDoS入侵流模拟方法,使用该法得到的流量数据可用于对低速率拒绝服务攻击入侵的研究。

关键词:低速率拒绝服务;NS2;自相似

DOIDOI:10.11907/rjdk.162867

中图分类号:TP309

文献标识码:A 文章编号:1672-7800(2017)006-0183-03

0 引言

拒绝服务攻击DoS(Denial of Service)是目前常见且难于防范的一种攻击方法。它向目标节点发送大量无用的数据包,目的是降低目标结点性能,甚至让目标节点停止服务。拒绝服务攻击问题之所以一直得不到合理有效的解决,原因是由于网络协议本身存在安全缺陷。

随着DoS网络监测和防范技术越来越成熟,衍生出了DoS攻击的变种——低速率拒绝服务攻击LDoS(Low-rate Denial of Service)。LDoS主要利用端系统或网络中的自适应机制所存在的安全漏洞,通过周期性攻击,造成TCP性能的震荡,严重降低TCP的吞吐量,大幅降低网络的服务质量。LDoS攻击根据其针对路由队列管理和拥塞控制机制的不同有许多变种,当前国内针对LDoS攻击已经开展了广泛研究[1-3]。本文主要针对主动队列管理机制AQM(Active Queue Managemen)随机早期检测RED(Random Early Detection)的LDoS攻击提出一个NS2(Network Simulator version 2)模拟方法。实验结果表明,该法产生的网络模拟流量保持了真实网络流量的自相似特性,模拟产生得到的LDoS入侵流可以用于LDoS攻击检测等方面的研究。

1 网络流量统计自相似过程及针对AQM的LDoS攻击原理

大量研究表明,突发网络到达过程更符合渐近或严格的自相似模型[4]。因此对网络流量的模拟是否具有自相似性直接影响到网络流量模拟的准确程度以及高速网络传输中流量控制和统计复用的性能。

一个随机过程{X(t),t∈R}是统计自相似的,满足X(t)=α-HX(αt), H > 0 为Hurst参数, α是正实数。

RED是最常用的一种AQM算法。RED算法通过计算平均队列长度Lav及丢包概率p,控制网络拥塞,RED算法可防止全局同步。

LDoS攻击的核心思想是周期性地发送攻击流,攻击瓶颈链路或者路由器,使其在瞬间产生拥塞, 由于TCP协议的超时机制,发送方在发送TCP报文段时,会为每一个报文段设置一个超时定时器。如果在收到該报文的确认之前定时器超时,则拥塞窗口Cwnd会减为1,系统进入慢开始,并尝试使系统恢复到稳定状态。如图1所示,在T周期内,向被害方发送脉冲强度为R,持续时间为τ的攻击脉冲(τ≤T)。从理论上来说,若是攻击方能精确知道TCP发送方每次发送报文所设置的超时重传时间的值,在其每次重传数据包的时候发动脉冲攻击,将会使得每次重传都失败,这样拥塞窗口将一直保持为1,吞吐量为0。

2 NS2模拟方法

NS2(Network Simulator version2)是由VINT项目组和加州大学伯克利分校联合开发的,源代码公开、免费的多协议网络模拟软件。NS2采用费列对象模型,由两个相互关联的类来实现,一个在C++中, 实现程序功能的模拟;另一个在Otcl中,在Otcl中类的主要功能是提供C++对象面向用户的模拟参数、过程以及接口。

NS2模拟过程大致如下:确定链路基本特征,配置模拟网络拓扑结构,编写Otcl脚本→建立协议代理,具体包括建立业务模型及端系统协议绑定→确定网络上的业务量分布,配置业务量模型参数→设置Trace对象→编写其他辅助过程→解释Otcl脚本并执行→分析Trace文件,→调整模拟拓扑、配置和业务模型,再重复上述模拟过程。

3 网络模拟拓扑

图2为LDoS攻击网络拓扑图。图中节点C作为路由节点,采用RED算法,C与接收节点D带宽为2Mb,延迟l0ms;1--K个节点作为TCP发送节点与节点D为TCP链路,1--M个节点作为UDP发送节点与节点D为UDP链路,这K+M个节点与节点C的链路带宽都为1Mb,延迟10ms,模拟产生正常流;节点A作为攻击节点,与节点D采用UDP链路,节点A与节点C链路带宽5Mb,延迟10ms,采用CBR流模拟LDoS攻击流,CBR流量产生器的random标志位设为1,产生随机噪声。

4 正常业务背景流模拟

4.1 业务流模拟

NS2的流量产生器POO(OTcl类为Application/Traffic/Pareto类)除了"On"、"Off"两种状态之间的时间产生业务流符合Pareto分布外,其它时间按指数On/Off分布。这种分布可用来产生自相似业务流。在应用层使用POO流量发生器模拟生成正常TCP背景流。图2中的1~K个结点发送TCP报文段,NS2关键代码如下:

4.3 实验及结果

整个模拟实验时间为4 000s,模拟时先不发动LDoS攻击,这样可得没有LDoS攻击的正常的业务流。每间隔0.01s采样,采用小波法[6]估计其自相似性,结果如表1所示。模拟得到的背景流分为纯UDP流、纯TCP流及TCP/UDP混合流,它们表征流量自相似的特征参数赫斯特指数都在0.5~1.0之间,说明仿真得到的业务流具有自相似性。

在第3 000秒开始LDoS攻击,攻击周期T=1秒,攻击持续时间τ=0.2s,攻击强度R=1.5Mb,攻击次数N=500,发起攻击共500s,LDoS攻击时段为3 000~3 500s。图3显示实验3在3 000~3 020s内采样的时间-流量图,LDoS攻击使得网络流量发生周期性的水平跃变。

正常网络流量在受到LDOS攻击时,攻击期间的H值与正常流量相比,都存在不同程度的下降,因此可以根据网络流量Hurst指数的异常变化检测LDoS攻击[6]。实际中可分析正常网络业务流Hurst 参数值的变化范围,设置发生 LDoS 攻击时Hurst减小的门限值。对于本文中的6个实验,设定Hurst的减小的门限值为0.20,在第10秒处的Hurst指数分别为-0.501,0.476, 0.476,0.356,0.476,0.359都能检测到LDOS攻击。

5 结语

本文利用NS2提供的POO流量产生器,采用多个重尾的On/Off源叠加,使用该方法产生的模拟背景流保持了网络流量最大的特征——自相似性,同時结合TCP,UDP协议模拟LDoS攻击,更接近真实网络环境,而模拟得到LDoS入侵流可应用于流量特征分析等方面的研究。

参考文献:

[1]张晓瑜,吴志军,岳猛,闫长灿.基于网络流量奇异性特征的LDoS攻击检测方法[J].计算机工程与设计,2016,01:50-54.

[2]岳猛,吴志军,姜军.云计算中基于可用带宽欧氏距离的LDoS攻击检测方法[J].山东大学学报:理学版,2016,09:92-100.

[3]王传安,王亚军,郭晓,宋雪亚.针对SIP服务器的LDOS生死链攻击模型[J].计算机应用与软件,2015,08:300-303.

[4]LELAND WE,TAQQU MS,WILLINGER W,et al.On the self-similar nature of ethernet traffic (extended version)[J]. IEEE/ACM Transactions on Networking,1994,2(1):1-15.

[5]Long-lasting transient conditions in simulations with heavy-tailed workloads[C].In Proceedings of the 1997 Winter Simulation Conference,1997:1005-1012.

[6]周刚,刘渊.低速率TCP拒绝服务攻击的小波检测方法[J].计算机工程与应用,2011(32):115-117.

(责任编辑:陈福时)