低速率拒绝服务LDoS攻击、检测和防御模块的制作方法

文档序号:7602402阅读:811来源:国知局

专利名称::低速率拒绝服务LDoS攻击、检测和防御模块的制作方法
技术领域
:本发明涉及一种计算机网络安全技术,该系统模拟一种新型的低速率拒绝服务LDoS攻击,测试攻击性能,并对此种攻击进行有效的检测和防御。
背景技术
:拒绝服务(denialofservichDoS)攻击是目前互联网面临的最大威胁。传统的拒绝服务攻击主要是通过攻击机器发送海量的数据包,消耗目标服务器的网络资源或计算资源,使得用户无法使用服务器资源,以达到拒绝服务的目的,这种方式的攻击称为泛洪式拒绝服务(flooding-basedenialofservice,FDoS)攻击,典型的例子有SYN/ACK泛洪攻击、UDP泛洪攻击、ICMP泛洪攻击等。目前已经有很多针对FDoS攻击的检测和防御方法随着攻击技术的进一步发展,新的拒绝服务攻击层出不穷。LDoS就是其中一种。对于LDoS攻击的研究尚处于起步阶段,但相关研究工作主要出现在近年来一流国际会议上,说明其得到了充分的重视。2003年在计算机网络方面的顶级会议SIGC0MM上,Rice大学的Aleksandar首次提出了针对TCP协议的低速率拒绝服务攻击,主要针对TCP拥塞控制机制的漏洞,文中提出了一种潜在的低速率拒绝服务攻击(Low-RateDenialofService,LDoS)模型,通过准确计算,只需少量攻击数据就可导致受害者端拒绝服务或服务质量的下降。在2004的ICNP以及2005年的INF0C0M上,Guirguis提出了RoQ攻击,其实质也是针对TCP协议中拥塞控制以及路由器队列管理机制中的漏洞,使得特定的路由器的性能发生下降。2005年的NDSS会议上,XiapuLuo又提出了pulsing攻击,原理与LDoS攻击非常相似。2005年,在Internet2的Abilene骨干网上发现了LDoS攻击,LDoS攻击成为现实。LDoS攻击的原理TCP拥塞控制中的超时重传和AIMD两种机制分开考虑,并将针对TCP协议的LDDoS攻击分为两类基于超时重传机制的LDDoS攻击和基于AIMD机制的LDDoS攻击。1、基于超时重传机制的LDoS攻击根据TCP超时重传机制,发送端为发送出去的每个报文段设置一个定时器,如果在收到对该报文的确认之前定时器就超时了,则发送端将其发送窗口Cwnd减为1,然后重新发送此包,并根据指数退避算法将RTO设为原来的q倍(q—般取2),等待应答包的到来,如果重传包仍然超时,则继续重传,直到重传成功或放弃重传;如果重传成功收到应答包,则系统进入慢启动状态。按TCP协议,对于非重传报文段,当发送端收到其ACK时,需要根据其所测得的往返时延RTT更新此链路的RT0,式(2.1)为计算方法RTO=min{RT0max,max{RT0min,SRTT+max(G,4XVRTT)}}为了使网络达到接近最优的吞吐率,最小重传时间推荐RTOmin为Is。RTOmax为RTO上限值。G是时钟尺度,SRTT和VRTT分别表示平滑后的往返时延和往返时延的变化。2、基于AIMD机制的LDDoS攻击根据TCP协议,如果TCP发送方进入快恢复,就调用AIMD算法调整拥塞窗口。定义广义411仏,13),3>0,0<13<1。算法如下当发送方进入快恢复状态时,拥塞窗口从W减小到bXW,然后每隔一个RTT,拥塞窗口增大a,这个过程将一直持续,直到接收到另一个拥塞信号。TCPTahoe,TCPReno等都使用AIMD(1,0.5)。考虑到许多TCP实现时并不是在每收到一个包时就发送一个ACK,而是在收到连续d个包时才发送ACK。于是广义AIMD(a,b)的加法增大修改为每隔d个RTT,拥塞窗口增大a。这个结论可进一步表述为每隔1个RTT,拥塞窗口增大a/d。与基于超时重传机制的LDDoS攻击不同,基于AIMD机制的LDDoS攻击所发出的攻击脉冲强度稍弱,只会引起网络的轻度拥塞,TCP发送方所收到的拥塞信号是3个重复的ACK包,而不是重传计时器超时。根据AIMD算法,当TCP发送方收到3个重复的ACK后会立即重发此包,将其拥塞窗口Cwnd减为bXcwnd(MD算法),然后再按照和式增算法(Al)以线性规律增大窗口。在基于AIMD机制的LDDoS攻击下,链路始终处于AIMD状态下,而不会进入超时重传或慢启动状态,但是其拥塞窗口是不断减小的,系统性能逐步下降,最后拥塞窗口减少到一个极限值并维持在这个极限值左右不变,系统性能达到最差,且无法恢复。传统的DoS攻击往往针对某个目标服务器或者某种具体应用,例如针对Web服务器进行SYN攻击会向服务器的80端口发送大量的SYN包等,LDoS攻击可以影响所有通过瓶颈链路的TCP流,其影响更大。根据有关研究,LDoS攻击对于多种版本的TCP协议,包括TCPTahoe、TCPReno、TCPNewReno、TCPSACK等都有很好的攻击效果,其原因是这些版本的TCP协议在设计的时候都没有考虑安全性,容易被攻击制造的短期拥塞所欺骗。同时,瓶颈链路采用不同的队列管理机制,包括Droptail、RED、RED-PD,Choke等,对LDoS攻击的攻击效果影响不大。这些队列管理机制对较长时间尺度的流量进行统计检测,能限制长时间的大流量的异常流,但LDoS攻击只是在很短时间内发送大流量,其平均流量不大,因而容易避开检测和过滤。与传统的泛洪式拒绝服务攻击相比,LDoS攻击更为隐蔽。首先,LDoS攻击只是在较短时间拥塞链路,可以使用较小的流量达到相近的攻击目的,意味着黑客不需要控制大量傀儡机器就可以发动攻击,更容易达到攻击的目的。第二,LDoS攻击可以采用多种形式进行攻击,可以使用单台主机发动,也可以采用多台主机联合发动攻击,多台主机发动的攻击可以使得每台攻击主机的攻击流量进一步减少,更容易逃避检测。第三,LDoS攻击只需要造成链路拥塞就可以达到攻击目的,因此它可以使用任何流量,包括TCP流。攻击流混合在正常TCP流中更难被过滤,同时流量的目的地址也可以有所变化,只要流量通过瓶颈链路即可。对于LDoS的检测,传统的检测方法不再适用。YUCHEN,KAIHWANG等提出了基于数字信号处理的检测方法,利用功率谱密度来进行分析。从此基于信号处理的方法成为研究的热点。之后,KaiHwang和Yu-KwongKwok提出了的一种称为HAWK的方法来识别恶意的LDoS攻击流,可是HAWK只适用于源地址单一的攻击。前不久,LUO和CHANG发现当发起攻击后,流入的流量和流出的ACKS流量将会发生很大的变化,根据这种特性他们提出了一种基于小波分析的方法,第一部分,利用DWT(DiscreteWaveletTransform)的方法来检测异常流量,第二部分,利用一种特殊的⑶SUM(CumulativeSum)方法来检测变化点。由于基于小波变化的检测结果非常依赖于参数的选择,因此很难选定一个最优的参数来保持一个高的检测率、很低的误报率和漏报率。目前,无论是国际还是国内,如何有效地防御DoS攻击,保护目标(主机或者服务器)不被攻击已成为一个研究热点和难点。由于LDoS不同于传统的FloodDoS攻击,它具有流量小,很难被现有的检测机制检测到等特点,因此对网络具有更大的威胁性和破坏性。到目前为止,国内对这种攻击方式的研究还相对较少。同时,目前的检测方法都有一定的不足。对于LDoS攻击的防御,目前还没有比较好的防御方法。
发明内容为了对LDoS攻击效果、检测和防御方法进行研究,本发明首先研制了LDoS攻击工具,然后采用基于时间窗的检测方法提高检测效率,最后采用基于Flowtables的“黑白名单”方法过滤LDoS攻击,实验结果表明该过滤方法有效。预计LDoS将在未来大规模的爆发,成为黑色产业链的得力工具。从而,本发明有重要的经济价值。(I)LDoS攻击及攻击效果测试子系统。攻击工具主体包含攻击服务端跟攻击客户端,服务端程序先植入被攻占的主机,主要用于接收攻击指令及对目标主机发起LDoS攻击流量,客户端主要功能是设定攻击目标,攻击持续时间,指定发起攻击的主机等一些攻击设置。首先是收集被攻击目标信息,包括确定被攻击目标的IP和其开放的端口号,确定链路带宽。然后按收集到的信息,生成相应参数的攻击流量。测试工具要模拟出正常的流量,分别对HTTP服务的网页响应时间和FTP服务的流量进行测试和比较。攻击效果测试需要模拟正常的用户对服务器进行访问,比较无攻击和有攻击情况下网页响应时间的不同和FTP流量的不同。(2)LDoS检测子系统检测子系统部署在受害端。基于LDoS攻击是周期性的脉冲的事实,以t秒的间隔对受害端流量进行取样,一个时间窗为t’秒,一个判决周期为T秒;每隔t’秒检测一次突变脉冲的个数在t’秒内按照t采样间隔进行采样,得到一个序列记为权利要求1.低速率拒绝服务LDoS攻击、检测和防御模块,其特征在于以下三个子模块(1)LDoS攻击子模块;(2)LDoS攻击检测子模块;(3)LDoS攻击防御子模块。2.根据权利要求1所述的LDoS攻击、检测和防御模块,其各子模块的特征在于其中子模块(1)是LDoS攻击工具。它包含攻击服务端和攻击客户端。服务端程序先植入被攻占的主机,主要用于接收攻击指令及对目标主机发起LDoS攻击流量;客户端主要功能是选定攻击目标,设定攻击脉冲周期、攻击脉冲宽度和攻击脉冲强度。安装在控制台上的客户端完成的功能主要包括以下内容1)扫描傀儡网络,察看当前在线的傀儡主机,生成当前可用傀儡主机的IP列表文件,保存成文本文件,供程序调用;幻给傀儡机上传包含攻击参数的bin文件,并向傀儡机通告攻击目标主机的IP地址和端口号;3)设定傀儡机发起攻击的时间及持续时间,发起攻击指令。把上传到傀儡机的服务端攻击流量产生工具主要功能包括1)接收客户端发送的包含攻击参数的bin文件;幻接收攻击指令,精确设定攻击时刻;3)按照接受到的bin文件产生相应的攻击流量并发起攻击。子模块(是LDoS攻击检测模块。采用基于时间窗的统计判决方法。分为以下几个步骤1)在受害端的上一跳路由监测流量,每隔t秒的间隔对流量进行取样,一个时间窗为t’秒,一个判决周期为T秒;幻每隔t’秒检测一次突变脉冲的个数在t’秒内按照t采样间隔进行采样,得到一个序列记为χ(η)(η=0,l,2"'k-l),其中k=t,/t;从χ(η)中选择最大值max=χ(index),并记录最大值的下标index;如果index=0,判断3.根据权利要求2所述的LDoS攻击、检测和防御模块,其特征在于1)攻击子模块中设定目标主机的IP地址为10.1.10.100,傀儡机1的IP地址为10.1.20.140,傀儡机2的IP地址为10.1.20.150,傀儡机3的IP地址为10.1.20.160。目标主机端口号为7775。LDoS攻击脉冲周期为1150ms,攻击脉宽为150ms,单个攻击脉冲强度为33Mbps。检测子模块中设定t=200ms,t,=1.2s,T=6s,门限C=3,通过学习设定门限系数3=1.6、β=1.6和λ=1.8。防御子模块中使用数据库netflow来存放所有的流量,数据库netflow中有三个表,normalflows(存放正常流)、suspectflows(存放可疑流)、attackflows(存放攻击流)。本模块主要是通过编写iptables脚本生成器生成过滤规则,然后在通过内核模块Netfilter在内核对攻击流进行过滤。全文摘要本发明公开了一种低速率拒绝服务LDoS攻击、检测和防御模块。低速率拒绝服务LDoS(Low-rateDenialofService)攻击是一种新型的DoS攻击。它利用TCP的拥塞控制机制。LDoS平均攻击速率较低,能躲避传统的检测方法。本发明首先模拟产生LDoS攻击的周期流量,对攻击性能进行测试。试验表明,LDoS攻击具有隐蔽性强和破坏力大的特点。其次,发明一种基于时间窗统计的检测算法,测试结果表明该方法能够高效的检测LDoS攻击。最后,本发明采用一种基于Flowtables的“黑白名单”防御方法,结果表明该防御方法可以有效的防御LDoS攻击。使用本发明所提供的技术方案,能实现LDoS攻击,测试攻击效果,并且能够有效的检测和防御LDoS攻击。文档编号H04L29/06GK102457489SQ20101051986公开日2012年5月16日申请日期2010年10月26日优先权日2010年10月26日发明者吴志军申请人:中国民航大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1