基于非参数CUSUM算法的DDoS攻击防御策略
2014-10-24严长虹
严长虹
(盐城工学院 信息学院,江苏 盐城 224000)
基于非参数CUSUM算法的DDoS攻击防御策略
严长虹
(盐城工学院 信息学院,江苏 盐城 224000)
分布式拒绝服务攻击(DDoS)具有突发性、攻击主机分布广等特点,对其防御尤显困难.从分析DDoS攻击原理及常见的防御策略入手,根据非参数CUSUM算法,给出了基于流连接密度时间序列分析的DDoS攻击防御策略及其模型,并进行了与理论值比较的实验取证.结果表明:该防御模型能够在很大程度上有效防御DDoS攻击.
网络安全;分布式拒绝服务;流连接密度;时间序列;防御策略
在因特网安全防御领域,防御分布式拒绝服务攻击已成为不容忽视的重要方面.分布式拒绝服务攻击(Distributed Denial of Service,DDoS)是一种破坏性较强的攻击方式,由于实施简便、难于防范,且危害性极大而被黑客广泛使用.黑客进行DDoS式攻击的工具简单易开发,实施方式隐蔽多样化,且攻击技术与日俱增,造成的危害则难以估量.如2003年初,黑客攻击者采用新型DDoS攻击技术,对北美、欧洲、亚洲等多地区进行大规模因特网攻击,使近几十万台计算机瘫痪、近10万台网络服务器不能运行,造成了无法估计的经济损失和恶劣的社会影响[1].面对DDoS攻击愈演愈烈之势,全球不断加强了DDoS攻击防御方案的研制和实施.IDC的一项研究认为,2012—2017年DDoS攻击和DoS攻击防御解决方案市场预计增长18.2%,相关经费开支将达到8.7亿美元[2].
针对DDoS攻击事件的多发性、突发性,以及攻击主机分布广,防御困难等特点,本文从DDoS攻击原理入手,通过常见的防御策略分析,提出了基于非参数CUSU M算法的DDoS攻击防御策略及其模型,并对该模型进行了实验验证.
1 DDoS攻击原理
DDos攻击之所以成为黑客攻击惯用的手段之一,在于它所产生的破坏力极大.攻击者不仅采用常用的黑客手段入侵,而且控制部分网站,在网站的服务器上安装并启动控制进程,这些进程会听命于攻击者发出的特殊指令.当攻击者把攻击目标的IP地址作为指令下达给受控进程时,这些进程就开始向目标主机发动疯狂地攻击[34].有一个形象的比喻,DDoS攻击犹如1万个人同时拨打同一部手机,该手机除了被打爆外别无选择.
DDoS攻击主要利用了网络传输协议——TCP/IP协议的本身漏洞和不足,将主机节点、交换机、路由器等网络设备作为攻击目标,通过调用网络中地理位置分散的计算机(作为攻击主机)向被攻击目标发送大量的数据信息,不仅造成被攻击主机的资源或网络带宽被大量消耗,更导致其不胜负荷以至于瘫痪.结果不但使得合法用户不能访问或使用该资源,同时被攻击主机也不能提供任何服务.DDoS攻击的原理如图1所示.
图1 DDoS攻击原理Fig.1 Attacking principle of DDoS
2 常见的DDoS防御策略分析
为了防御DDoS攻击,人们根据DDoS攻击原理从多方面入手,探讨了多种DDoS防御策略.由图1可知,攻击主机端的核心路由器是网络的代理端主机,经过中间网络的路由器向被攻击主机转发.因此,从DDoS角度分析,整个网络体系可分为3部分:攻击端网络、中间层网络和被攻击端网络,与之对应的DDoS防御策略也分为攻击端防御、中间层网络防御和被攻击端防御.
2.1 攻击端防御
攻击端防御策略是在互联网的入口路由器部署防御节点,节点通过监控入口路由器的数据包信息,并对这些信息进行统计分析流量,再将统计值与正常流量模型进行反复比较,从而滤掉异常的危险数据包.这样不仅可以追踪攻击端的信息,也有利于避免外界对网络的进一步伤害.攻击端防御策略也存在一定的不足,如攻击流在攻击端并未实现汇聚,其正常流量模型建立则很困难,并会导致对数据包的误判率增高,从而造成合法数据信息的丢失.当前,最典型的源端防御策略是Jelena Mirkovic等人提出的D-WARD模型[5].
2.2 中间层网络防御
该策略主要以网络的入侵检测系统进行防御.入侵检测系统通过捕获、分析网络数据包来检测是否遭受攻击.若网络遭受攻击,即采取措施对攻击数据流进行相应的速率限制.这种策略的长处在于,一旦检测到攻击,就可以对流量迅速抑制,从而显著减轻对被攻击端的危害.缺点是中间层网络路由器的数据流量较大,不仅耗费较多的资源,同时也给区分流量信息是否合法带来一些困难,最终会对网络合法流量造成损害,影响网络的整体性能.
2.3 被攻击端防御
被攻击端是DDoS攻击的直接受害者,将防御体系部署在被攻击端是最直接也是最有利的,能够有效防御DDoS攻击,这是该策略的突出优点.缺点在于被攻击端是DDos攻击的重点,当攻击力度超强,致使防御节点的存储和处理能力系统瘫痪时,可能无法响应防御体系部署在整个路径中攻击强度最大的位置,将造成对于攻击的响应程度极其有限.尽管如此,均衡利弊,将防御体系部署在被攻击者端仍是有益的选择,问题在于能否研制一种好的防御策略,使DDoS攻击在被攻击端不能发挥作用,进而达到保护被攻击主机安全的目的.
3 基于非参数CUSUM算法的攻击防御策略及其模型
为在被攻击端有效地防御DDoS攻击,本文基于非参数CUSUM算法[4-5],提出并设计了相关的防御策略及其防御模型,主要通过对被攻击端口进行流量统计检测,较为及时和准确地检测出DDoS攻击,从而达到有效防御被其攻击的目的.
3.1 防御策略
1)分析数据报.计算机网络的数据传输是以数据包的形式进行的.在因特网中,为了克服网络的异构性,保证数据的正确传输,由IP协议定义了一种统一的数据包格式,称为IP数据报,其结构如图2所示.
图2 IP数据报的结构Fig.2 Structure of datagram
由图2可见,对于因特网中传输的任何数据包,包括DDoS攻击的数据包,都必须以IP数据报的形式进行组织.IP数据报除了指明需要传输的数据本身外,还必须指明发送数据报主机的IP地址和接收数据报主机的IP地址.依据DDoS攻击原理,其攻击特点是从地理上分散的网络中的多台主机,通过发送大量的数据包来攻击受害主机的.因此,可以对到达该主机的IP数据报的源IP地址和目的IP地址以及端口号进行分析,如果从地理上分散的网络中若干台主机发送的是大量的数据报,则认定为DDoS攻击,从而加以防范.
2)分析流连密度.网络在一定时间内所截取的一个相同的数据包集合,即含有相同的源地址端口号、目的地址端口以及端口号,称为一个流连接,该流连接的个数,即为此时间内的流连接密度.可采用以下形式表示:设单位时间网络流量内的IP数据包集合为R={p1,…,pi,…,pM},其中相关数据包集合为{R1,R2,…,PN},则可定义此网络流内流连接密度为相关数据包集合的个数(N)[4].
表1反映了单位时间内某一网络流内获取的IP数据包集合.
表1 单位时间内某一网络流内获取的IP数据包集合信息Tab.1 Collection information of IP data package in one network flow per unit time
分析表1可知,在单位时间内的该网络流内,通过对比相同的IP数据包集合,得出的相关
式中:Zn为时间序列值;Yn为的累积正值;x为检测的统计特征.首先,计算出Zn的值,再通过式(1)、(2)计算出Yn.当(Zn+Yn-1)>0,则Yn=Zn+Yn-1;否则Yn=0.判决函数为数据包集合有:{p0,p1}、{p4,C}、{p3,R}.根据定义,单位时间内该网络流的流连接密度为3(该网络单位时间内相关的数据包集合有3个).因而可根据流连接密度的疏密来分析网络流量的异常,并籍此判断分布式拒绝服务攻击是否真实存在.
3)以非参数CUSUM算法改进流连密度的计算.基于非参数CUSUM算法改进流连接密度计算的基本思想是:通过运算某一时间Δt内新增加的源IP地址,得出一个时间序列{Zn},这个时间序列是多个Δt时间内得到的流连接密度序列.
可由下列公式实现:
式中:M为DDoS攻击的检测门限定值;dN(Yn)为在某一生成时刻对于M的判决结果.当函数dN(Yn)值为1时,表明有大量DDoS攻击发生;函数dN(Yn)值为0时,表明此时网络正常,没有遭遇DDoS攻击.
3.2 防御模型
基于非参数CUSUM算法改进流连接密度计算的DDoS攻击防御模型(以下简称防御模型),主要由3大模块组成,即采集模块、时间序列模块和过滤模块.
1)采集模块.进行每隔一定的Δt时间采集主机接收的IP数据包,并根据时间序列模块、过滤模块需要的数据格式进行格式转换,同时将数据分层次传递给时间序列分析模块和过滤模块.
2)时间序列模块.从采集模块接收每隔一定Δt时间内采集的新增加的源IP地址数据包,抽象计算出流连接密度,并结合之前接受n-1个Δt时间内得到的流连接密度数据组成时间序列{Zn},根据式(1)、(2)和式(3)计算函数dN(Yn)的判断结果,将最终的函数dN(Yn)判决结果送至过滤模块.
3)过滤模块.根据处理某数据包后所得出的数据信息,以及时间序列分析模块传送过来的函数dN(Yn)的判决结果,决定对该数据包正常接收还是抛弃.
防御模型如图3所示.
图3 防御模型Fig.3 Defending model
防御模型的运行机制为:1)该系统首先通过采集模块获取指定时间内的数据,然后对获取的数据包进行分析(内容包括数据包的源地址、目的地址和具体的目的端号),并根据时间序列模块、过滤模块需要的数据格式进行格式转换,将数据分层次传递给时间序列分析模块和IP包过滤模块.2)到达时间序列模块的数据,对统计新增加的源IP地址的数据包进行计算,求出具体的流连接密度.即从采集模块接收每隔一定的Δt时间内采集的新增加的源IP地址数据包,抽象计算出流连接密度,并结合之前接受n-1个Δt时间内得到的流连接密度数据组成时间序列{Zn},按CUSUM算法基本求其累积正值,再根据式(1)~(3)计算函数dN(Yn)的判断结果,将最终的函数dN(Yn)判决结果送往过滤模块.3)过滤模块将流连接密度累积正值与门限值进行比较,若累积正值大于门限值,则根据数据采集模块传来的数据包信息,决定是否丢弃相关数据包或者正常传送.
4 结语
本文通过分析基于流连接密度检测DDoS攻击的算法,给出了基于流连接密度时间序列分析的DDoS攻击防御策略及其模型.针对该防御模型,笔者进行了一系列的实验取证,将理论值与实验运行结果进行比较,实验值的出错率仅为3.618%.分析其原因,主要是识别延误和网络噪声等外在因素所造成的.对于这些外在因素,可以通过一系列措施来解决.如对于识别延误,可通过改进系统灵敏装置等适当方法使之减小,从而进一步降低出错率.综合实验结果可以看出,该防御模型能检测出大量的DDoS攻击,及时过滤发出攻击的恶意数据包信息,从而能够在很大程度上有效地防御DDoS攻击,保障主机或网络的运行安全.
[1] 徐川.应用层DDoS攻击检测算法研究及实现[D].重庆:重庆大学,2012:1-10.
[2] 杨燕婷.DDoS攻击之忧[J].中国教育网络,2014(1):21-22.
[3] 王永杰,鲜明,陈志杰,等.DDoS攻击分类与效能评估方法研究[J].计算机科学,2006,33(10):97-100.
[4] 严长虹.基于流连接密度的DDoS攻击检测与防御技术的研究与实现[D].苏州:苏州大学,2009:5-47.
[5] 张喆.基于CUSUM算法改进DDoS攻击检测系统D-WARD[D]//中国优秀博硕士学位论文全文数据库.长春:吉林大学,2005:5-20.
On defending strategy for DDoS attack based on nonparametric CUSUM algorithm
YAN Chang-hong
(School of Information Engineering,Yancheng Institute of Technology,Yancheng,Jiangsu 224000,China)
Distributed Denial of Service(DDoS)has features including burstiness and wide distribution of attacked host which makes it difficult to defend it.Starting from analysis on the principle of DDoS attack and common defending strategies,this paper gives defending strategy for DDoS attack based on time series analysis of flow connection density and the model according to nonparametric CUSUM algorithm,and carries out experimental evidence comparing with theoretical values.Results show that the defending model can defend DDoS attack effectively to a large extent.
network security;Distributed Denial of Service;flow connection density;time series;defending strategy
TP 393.8
A
2095-3550(2014)04-0026-04
2014-08-26
严长虹,女,江苏建湖人,讲师,硕士.
E-mail:hycit@ycit.cn
(责任编辑:赵国淮)