文献标识码: A
文章编号: 0258-7998(2013)01-0139-04
现有的基于网络流量的DDoS攻击检测方法可以按照对时间尺度的敏感程度进行划分,通常将小于100 ms的网络模型称为小尺度网络模型,将以小时(hour)或天(day)作为时间单位的网络模型称为大尺度网络模型。基于大尺度网络模型的检测方法主要有方差分析法(ANVOA)[1]、泛化似然比检验法(Generalized Likelihood Ratio Test)[2]、自适应残差比较法[3]等,这些方法虽然有较好的检测率和较低的误报率,但是因其以hour或day为统计单位而不具备实时检测的能力。相比之下小尺度网络模型更适合于实时检测,但因其表现出多分形性[4]而难以观测。参考文献[5]提出的Holder指数检测法虽然检测延时短,但是受到短相关性质对网络流量整体观测能力不足的影响,误报率过高。针对这一问题,参考文献[6]提出了一种基于传统Hurst指数和Holder指数的分形检测法,通过判断网络流量的实时分形特性,分别采用两种不同方法进行检测,虽然提高了分形模型中长相关部分的检测准确率,但是当流量数据表现出短相关时,误报问题仍没有解决。参考文献[7]提出了一种基于Hurst指数的方差-时间图法VTP(Variance-Time Plots),试图利用多分形模型中包含的长相关特性进行检测。受多分形模型中长相关特性并不明显的影响,误报率虽然有所下降,但是检测率上还存在不足。
现有小尺度网络模型通常采用Holder、Hurst等指数进行检测,Holder指数观测尺度狭窄、误报率高;Hurst指数能够在整体上对流量的自相似性进行刻画,具有较高的检测精度,但要求观测的时间尺度宽,不利于实时检测。本文提出的基于数据预处理的DDoS攻击检测方法在Hurst指数检测的基础上,通过提高流量间相关度,满足了Hurst指数定义对模型长相关程度的要求,从而能够更准确地对具有多分形特性的流量进行分析。
1 流量预处理
小尺度网络模型中包含的网络业务信息相比大尺度网络模型少但更为细致,因而也更易受流量的突发性影响。基于流量的DDoS攻击检测技术正是利用了流量突发性对统计特性造成的奇异点进行检测,因此为了降低误报率就需要降低正常流量发生时对小尺度模型统计特性的影响。最直接的方法就是增加小尺度模型各节点包含的信息量,增强其长相关性。参考文献[8]就可能影响流量性能的因素提出了假设,并认为均值和方差对多分形有较大影响。本文在参考文献[8]的基础上,提出采用滑动平均值来代替原有采样值的方法,在保证不丢失原有信息特性的前提下,将前后时间节点的特性包含进来,提高了节点中包含的信息量,使得小尺度网络模型的长相关性增强,同时降低了正常流量发生时对统计特性可能造成的影响。流量预处理方法如式(1)所示:
小波分解过程中通常采用二进制伸缩的方式,如式
3 DDoS攻击检测实验
本文采用模拟攻击的方法对文中提出的网络异常检测算法进行测试。
3.1 数据来源
实验数据由正常的背景流量和模拟的攻击流量汇聚而成。
以北京工业大学某楼层的真实流量为正常流量样本,采用Wireshark截取上午10:30~11:17之间的全部流量。时间精度为1 ms,包括各类正常访问的数据包1 620 400个。分别汇聚为精度10 ms的BJUT-10流量和精度为1 s的BJUT-1000流量。
利用Sprient公司的ThreatEx2600作为攻击流量的产生工具,模拟了DDoS攻击中最经典的SYN-Flood攻击流量,并将攻击强度以1 000 threats/s的幅度逐渐增加。将攻击行为分为两次,分别在小背景流量和大背景流量下进行,小背景流量攻击发生在100 000 ms,大背景流量发生在200 000 ms。每次攻击持续180 s,其中流量上升阶段30 s,峰值攻击120 s,流量下降阶段30 s。测试环境如图1所示。
从实验结果可以得出,在利用BJUT-10流量模型进行异常检测时,当攻击流量达到背景流量36.90%时,攻击被检测出来,但检测完整性较差,仅为2.10%,检测延迟91.28 s。
当攻击增强而背景流量不变时,攻击的检测率提高,攻击检测完整性也相应提高;当攻击流量占到总流量91.36%时,检测率达到100%,检测完整性达到75.18%,检测延迟为26.1 s。
当攻击强度不变,背景流量发生变化时,在大流量背景下,检测的完整性较小流量背景下攻击的检测完整性和检测率差距较大,检测延迟明显降低。
4 与典型算法对比
为了验证本文算法的性能,采用相同的实验数据与典型检测方法进行了对比测试。
4.1 Holder指数检测法
本文重现了参考文献[6]中的Holder指数计算方法,并将关键实验参数设置为λ=0.9,s=10。
4.2 传统Hurst指数检测法
根据参考文献[6-7]中的Hurst指数检测法,因Hurst指数检测法只适用于大尺度的网络模型,即时间敏感度大于1 s的网络模型,因此本文采用BJUT-1000流量进行模拟检测。采用db(3)小波分解,小波分解层数为j=10,小波移动尺度k=1,时间区间n=10。
4.3 性能比较
本文模拟的DDoS攻击包含了30 s攻击速率上升的过程,因此检测延迟在一定程度上反应了检测算法对攻击发生初期(0 s~30 s)的检测能力。
从图5可以看出本文方法在检测延迟上同Holder指数检测法性能相当。从算法误报率上看,本文方法误报率较Holder指数检测法有明显改善。因而本文方法在检测率和检测完整性上优于其他两种检测算法。如图6所示。
本文提出了一种基于多分形模型数据预处理的异常检测方法。利用小波分解的方法对网络流量进行分析。通过增加数据间相关性使得短相关的流量数据具备一定的长相关特性,而长相关数据的特性更加明显。同时使用Hurst指数方差平均值对攻击流量进行检测。相比于现有的实时检测算法,其误报率明显降低,并保持较低的检测延迟,提高了检测率和检测完整性。
参考文献
[1] JOSEPH L H, FAN Z, PEIWEZ S. Characterizing normal operation of a Web Server:application to workload forecasting and problem detection[C].Proceedings of the Computer Measurement Grouy, 1998.
[2] THOTTAN M, JI C Y. Statistical detection of enterprise network problem [J]. Journal of Network and Systems Management, 1999,7(1):27-45.
[3] 曹敏, 程东年, 张建辉,等.基于自适应阈值的网络流量异常检测算法[J].计算机工程, 2009,35(19):164-167.
[4] ABRY P, VEITCH D, Wavelet analysis of long-range dependence traffic[J]. IEEE Trans on Information Theory, 1998,44(1):2-15.
[5] 任义龙, 刘渊, 一种基于Holder指数的DDoS攻击检测方法[J]. 计算机应用研究, 2011,28(2):724-727.
[6] 任义龙, 刘渊. 一种基于小波分析的DDoS攻击检测方法[J/OL].[2011-09-29]. http://www.cnki.net/kcms/detail/11.2127.tp.20110929.1037.054.html.
[7] 李金明, 王汝传.基于VTP方法的DDoS攻击实时监测技术研究[J]. 电子学报, 2007,35(4):791-796.
[8] 胡俊, 谭献海, 覃宇飞.基于小波技术的网络流量分析与刻画[J]. 计算机应用, 2007,27(11):2659-2665.
[9] 任勋益, 王汝传, 祁正华. 消失矩对小波分析求解自相似参数Hurst的影响研究[J], 电子与信息学报, 2007,29(9):2257-2261.
[10] 任勋益, 王汝传, 王海艳. 基于自相似检测DDoS攻击的小波分析方法[J]. 通信学报, 2006,27(5):6-11.
[11] 李永利, 刘贵忠, 王海军,等.自相似数据流的Hurst指数小波求解法分析[J].电子与信息学报, 2003,25(1):100-105.