一种防护ddos攻击的方法及系统的制作方法

文档序号:7799212阅读:180来源:国知局
一种防护ddos攻击的方法及系统的制作方法
【专利摘要】本发明公开了一种防护DDOS攻击的方法及系统,所述方法包括:定时统计客户端、Ping、服务器三者间的平均延时值;判断所述平均延时值是否连续m次超过预设值;进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值;进一步判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值;启动防火墙的DDOS攻击防护功能。本发明通过定时检测Ping平均延时值的方法检测系统是否受到DDOS攻击,并及时开启防火墙DDOS攻击防护功能,有效地提高了系统的运算速度和防火墙的防护性能。
【专利说明】一种防护DDOS攻击的方法及系统
【技术领域】
[0001]本发明属于计算机网络【技术领域】,具体涉及一种防护DDOS攻击的方法及系统。
【背景技术】
[0002]当前,网络在人们的生活中占据着举足轻重的地位,足不出户就可通过网络进行购物、聊天、理财,还可预定饭店、车票、宾馆等,甚至还可进行家庭工作。在享受互联网给我们日常生活带来的便利的同时,也给网络攻击者更多的可乘之机,给我们的财产安全造成损失。
[0003]DDOS (Distributed Denial of Service)分布式拒绝服务攻击,亦称作洪水攻击。DDOS的攻击方式简单易行,攻击目标主要是针对服务器或者大型网站。如图1所示,DDOS通过向服务器提交大量请求使服务器超负荷,当服务器CPU达到满负荷,服务器耗尽资源导致失去响应而死机。服务器一旦死机,将严重影响用户正常的访问,对公司、企业甚至是国家造成巨大的经济损失。DDOS攻击破坏性很强,以及它种类复杂,难以定位的特点成为当前网络中威胁最大的攻击之一。
[0004]为解决上述问题,当前很多防火墙都具有防护DDOS攻击的功能,如图2所示,通过开启防火墙的DDOS攻击检测功能来避免服务器受到DDOS攻击,但是却存在诸多缺陷。例如:(I)、如果平时防火墙一直开启DDOS攻击防护功能,则防火墙一直需要对进来的数据包进行检查,这样会导致防火墙转发包的处理速度减慢,进而降低了防火墙的性能;(2)、如果平时防火墙并不是一直开启DDOS攻击防护功能,则DDOS攻击流量不仅会占用大量的服务器资源,也会浪费防火墙转发攻击流量的资源。
[0005]因此,有必要提供一种防护DDOS攻击的方法及系统,能够及时开启防火墙的DDOS攻击防护功能,避免了防火墙一直开启DDOS攻击防护功能而导致防火墙性能降低,以及防火墙一直不开启DDOS攻击防护功能而导致服务器受到DDOS攻击的情况发生,大幅节约了防护DDOS攻击所使用的数据流量,有效地提高了系统的运算速度。

【发明内容】

[0006]本发明的目的是提供一种防护DDOS攻击的方法及系统,通过定时检测Ping平均延时值的方法检测系统是否受到DDOS攻击,使得检测DDOS攻击所使用的数据流量大幅降低,并在检测出系统受到DDOS攻击时及时开启防火墙DDOS攻击防护功能,有效地提高了系统的运算速度和防火墙的防护性能。
[0007]根据本发明的一个方面,提供一种防护DDOS攻击的方法,包括以下步骤:步骤SI,统计定时周期内客户端、Ping、服务器三者间的平均延时值;步骤S2,判断所述平均延时值是否连续m次超过预设值;步骤S3,如果所述平均延时值连续m次超过预设值,进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值;步骤S4,如果所述平均延时值连续m次超过预设值的次数超过预设阀值,进一步判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值;步骤S5,如果当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值,则启动防火墙的DDOS攻击防护功能;其中,m为根据服务器性能而预先设定的参数。
[0008]其中,在上述发明中,所述步骤S2包括:将步骤SI中得到的平均延时值与预设值相比较,判断该平均延时值是否超过预设值;在所述平均延时值超过预设值时,判断该平均延时值是否连续m次超过预设值。
[0009]其中,在上述发明中,所述步骤S3包括:在所述平均延时值连续m次超过预设值时,超时计数器增加一次记录值;将超时计数器的记录值与预设阀值相比较,判断平均延时值连续m次超过预设值的次数是否超过预设阀值。
[0010]其中,在上述发明中,所述预设值表示为,其中正常情况下客户端、Ping、服务器三者间的平均延时值,η为预设的系数。
[0011 ] 其中,在上述发明中,所述IP数据包预设值表示为ClPnum,其中IPnum为正常情况下单位时间内收到的新的IP地址发送的数据包的数量,C为预设的系数。
[0012]其中,在上述发明中,所述步骤S5中启动防火墙的DDOS攻击防护功能,包括:启动防火墙的IP Spoof攻击防护功能。
[0013]根据本发明的另一个方面,提供一种防护DDOS攻击的系统,包括:统计单元,用于在每隔一个定时周期,统计客户端、Ping、服务器三者间的延时值,并计算出该定时周期内客户端、Ping、服务器三者间的平均延时值;第一比较单元,用于将统计单元统计的平均延时值与预设值进行比较,判断该平均延时值是否连续m次超过预设值;第二比较单元,用于在所述第一比较单元确定平均延时值连续m次超过预设值时,判断该平均延时值连续m次超过预设值的次数是否超过预设阀值;第三比较单元,用于在所述第二比较单元确定平均延时值连续m次超过预设值的次数超过预设阀值时,判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值;执行单元,用于在所述第三比较单元确定出当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值时,启动防火墙的DDOS攻击防护功能;其中,m为根据服务器性能而预先设定的参数。
[0014]其中,在上述发明中,所述第二比较单元包括超时计数器和比较器;超时计数器,用于在平均延时值连续m次超过预设值时,增加一次记录值;比较器,用于将所述超时计数器的记录值与预设阀值进行比较,判断该记录值是否超过预设阀值。
[0015]其中,在上述发明中,所述执行单元启动的DDOS攻击防护功能为IPSpoof攻击防护功能。
[0016]其中,在上述发明中,所述预设值表示为,其中t平均为正常情况下客户端、Ping、服务器三者间的平均延时值,η为预设的系数;以及所述IP数据包预设值表示为cIPnum,其中IPnum为正常情况下单位时间内收到的新的IP地址发送的数据包的数量,c为预设的系数。
[0017]根据本发明的一种防护DDOS攻击的方法及系统,通过定时检测Ping平均延时值的方法检测系统是否受到DDOS攻击,由于Ping包所占流量很小,使得DDOS攻击的检测简易且实时有效,并降低了检测中所使用的数据流量,且在检测出系统受到DDOS攻击时及时开启防火墙DDOS攻击防护功能,有效地提高了系统的运算速度和防火墙的防护性能。本发明的防护DDOS攻击的方法及系统具有显著的防护效果,对应用层DDOS攻击防护和网络层DDOS攻击防护均可适用。【专利附图】

【附图说明】
[0018]图1显示了 DDOS攻击服务器的示意图;
[0019]图2显示了现有技术的防护DDOS攻击的原理图;
[0020]图3显示了本发明的防护DDOS攻击的原理图;
[0021]图4显示了本发明的防护DDOS攻击方法的流程图;
[0022]图5显示了本发明优选实施例的防护DDOS攻击方法的流程图;
[0023]图6显示了本发明具体实施例的防护DDOS攻击方法的流程图;
[0024]图7显示了本发明的防护DDOS攻击系统的结构示意图;
[0025]图8显示了本发明的第二比较单元的结构示意图。
【具体实施方式】
[0026]为使本发明的目的、技术方案和优点更加清楚明了,下面结合【具体实施方式】并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
[0027]图3显示了本发明的防护DDOS攻击的原理图。
[0028]如图3所示,本发明通过定时检测客户端、Ping、服务器三者间的平均延时值,来检服务器是否受到DDOS攻击,并在服务器受到DDOS攻击时,及时开启防火墙的DDOS攻击防护功能。这里,Ping是用于检测网络通或不通的命令,也叫时延,其值越大则速度越慢。
[0029]DDOS攻击者的目的是耗费尽服务器资源,让用户无法正常访问,当攻击者发起大量的连续请求时,大量的连续请求会占用大量资源而造成客户端、Ping、服务器三者间的平均延时比平时高出很多,因此可以通过检测客户端、Ping、服务器三者间的平均延时值,并将平均延时值与预设值相比较,即可检测服务器是否受到DDOS攻击。由于Ping包所占流量很小,通过检测Ping平均延时值来检测服务器是否受到DDOS攻击的机制,在检测出系统受到DDOS攻击时,及时开启防火墙DDOS攻击防护功能,有效地提高了系统的运算速度和防火墙的防护性能。
[0030]图4显示了本发明的防护DDOS攻击方法的流程图。
[0031]如图4所示,本发明的防护DDOS攻击的方法,包括以下步骤:
[0032]步骤SI,统计定时周期内客户端、Ping、服务器三者间的平均延时值。
[0033]一般地,DDOS攻击服务器时,攻击者会向服务器发送大量的连续请求,通过大量的连续请求来来占用过多的服务资源,从而使服务器无法处理合法用户的指令,此时客户端、Ping、服务器三者间的平均延时会比平时高出很多。这种情况下,可以每隔一个定时周期,对客户端、Ping、服务器三者间的延时值进行统计,并计算出该定时周期内客户端、Ping、服务器三者间的平均延时值。
[0034]步骤S2,判断所述平均延时值是否连续m次超过预设值。
[0035]在本发明中,m为根据服务器性能而预先设定的参数。
[0036]在步骤SI中可以得出每隔一个定时周期的客户端、Ping、服务器三者间的平均延时值。将该平均延时值与预设值进行比较,判断该平均延时值是否连续m次超过预设值。[0037]步骤S3,如果所述平均延时值连续m次超过预设值,进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值。
[0038]根据步骤S2的判断结果,确定是否进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值。具体来说,如果步骤S2确定平均延时值没有连续m次超过预设值,则说明客户端、Ping、服务器三者间的平均延时值高出预设值的概率不高,通常意义下不符合DDOS攻击的特征,因此将直接跳至结束命令;如果步骤S2确定平均延时值连续m次超过预设值,则进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值。
[0039]步骤S4,如果所述平均延时值连续m次超过预设值的次数超过预设阀值,进一步判断当前单位时间内收到的新的IP地址发送的数据包的数量是否大于IP数据包预设值。
[0040]根据步骤S3的判断结果,确定是否进一步判断当前单位时间内收到的新的IP地址发送的数据包的数量是否大于IP数据包预设值。DDOS攻击方通常会发送大量无实际意义的IP数据包对服务器进行攻击,在初步判断服务器可能受到DDOS攻击时,可通过判断新建连接数是否迅速增加来确定当前单位时间内收到的新的IP地址发送的数据包是否明显增加,从而进一步确认服务器受到DDOS攻击的真实性。具体来说,如果步骤S3确定平均延时值连续m次未超过预设值的次数超过预设阀值,则直接跳至结束命令;如果步骤S3确定平均延时值连续m次超过预设值的次数超过预设阀值,则说明服务器很有可能受到了 DDOS攻击,需要进行进一步判断,来确定服务器真的受到DDOS攻击,即进一步判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值。
[0041]步骤S5,如果当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值,则启动防火墙的DDOS攻击防护功能。
[0042]根据步骤S4的判断结果,确定服务器是否真的受到了 DDOS攻击,即是否需要启动防火墙的DDOS攻击防护功能。如果步骤S4确定当前单位时间内收到的新的IP地址发送的数据包数量小于IP数据包预设值,则说明确定服务器没有受到DDOS攻击,直接跳至结束命令;如果步骤S4确定当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值,则说明确定服务器已经受到DDOS攻击,此时将启动防火墙的DDOS攻击防护功能,以避免服务器再次受到DDOS攻击。
[0043]通过采用上述流程,定时对客户端、Ping、服务器三者间的平均延时值进行检测,并在该平均延时值连续一定次数大于预设值时,进一步判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值,如果大于则确定服务器受到了 DDOS攻击,开始开启防火墙的DDOS攻击防护功能,避免了防火墙一直开启DDOS攻击防护功能而导致防火墙处理数据速度降低,进而降低防火墙性能和系统的运算速度的现象发生。
[0044]图5显示了本发明优选实施例的防护DDOS攻击方法的流程图。
[0045]如图5所示,本发明优选实施例的防护DDOS攻击的方法,包括下述步骤:
[0046]步骤SI,设定每a秒一个定时周期T,对客户端、Ping、服务器三者间的平均延时值t进行统计。
[0047]步骤S21,判断是否成立,即将平均延时值与预设值相比较,判断该平均延时值t是否超过预设值其中,丨^^为正常情况下客户端、Ping、服务器三者间的平均延时值,η为系数,η的大小与服务器的安全性能要求有关,一般地,服务器的安全性能要求越高,η的取值越小。[0048]步骤S22,如果t>nt¥tt成立,进一步判断连续有m次否成立,即在平均延时值超过预设值nt时,判断该平均延时值是否连续m次超过预设值,否则执行结束命令。
[0049] 步骤S3,如果连续m次t>nt〒tt成立,则判断连续m次t>nt〒tt的次数是否超过预设阈值,即在平均延时值连续m次超过预设值,进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值,否则执行结束命令。
[0050]具体来说,在该平均延时值t连续m次超过预设值时,超时计数器增加一次记录值,即超时计数器在原来的计数值上+1 (例如由I变为2),然后通过将超时计数器的记录值与预设阀值b (b的值由服务器性能决定)相比较,来判断平均延时值t连续m次超过预设值nt的次数是否超过预设阀值b。
[0051 ] 步骤S4,如果连续m次t>nt 的次数超过预设阈值b成立,进一步判断IPNn?>cIPnim是否成立,即在该平均延时值连续m次超过预设值的次数超过预设阀值时,进一步判断当前单位时间内收到的新的IP地址发送的数据包的数量(表示为IPltaffl)是否大于IP数据包预设值cIPM,否则执行结束命令。这里,IPnum为正常情况下单位时间内收到的新的IP地址发送的数据包的数量,C为预设的系数,表示当前的新IP地址发送的数据包的数量是平时的c倍,说明当前的IP包数量明显增多。
[0052]步骤S5,启动防火墙的IP Spoof攻击防护功能。在IPNnum>cIPnum成立时,即在当前单位时间内收到的新的IP地址发送的数据包的数量大于正常情况下新的IP地址发送的数据包数量(作为预设值设置)时,开启防火墙的IP Spoof攻击防护功能,以避免服务器再次受到DDOS攻击。
[0053]需要说明的是,本发明中的参数(m、a、n、b、c)视用户对服务器安全性能的要求程度而设定,网络管理员也可以根据实际需求自行定义。
[0054]图6显示了本发明具体实施例的防护DDOS攻击方法的流程图。
[0055]如图6所示,在本发明的具体实施例中,取m=2、a=5s、n=2、b=5, c=2。系统每隔5s对客户端、Ping、服务器三者间的平均延时值t进行统计,将统计到的平均延时值t与正常情况下客户端、Ping、服务器三者间的平均延时值相比较,判断02丨_是否成立;如果
成立,进一步判断是否连续有2次t>2tTtt ;如果连续有2次t>2tTtt,则超时计数器增加一次记录值,并判断超时计数器的记录值是否超过5 ;如果超时计数器的记录值超过5,进一步判断当前单位时间内收到的新的IP地址发送的数据包的数量IPnim (数据包/秒),比如正常情况下单位时间内收到的新的IP地址发送的数据包的数量IPnum的值是200,如果IPltoumMOO,系统就会开启防火墙的IP Spoof攻击防护功能。
[0056]图7显示了本发明的防护DDOS攻击系统的结构示意图;图8显示了本发明的第二比较单元的结构示意图。
[0057]如图7所示,本发明的防护DDOS攻击系统备,包括:统计单元1、第一比较单元2、第二比较单元3、第三比较单元4以及执行单元5。
[0058]统计单元1,用于在每隔一个定时周期,统计客户端、Ping、服务器三者间的延时值,并计算出该定时周期内客户端、Ping、服务器三者间的平均延时值。统计单元I统计出客户端、Ping、服务器三者间的平均延时值之后,将该平均延时值发送至第一比较单元2。
[0059]第一比较单元2,其与统计单元I相连,用于将统计单元I统计的平均延时值与预设值进行比较,判断该平均延时值是否连续m次超过预设值。第一比较单元2接收到来自统计单元I发送的客户端、Ping、服务器三者间的平均延时值后,将该平均延时值与系统的预设值进行比较,并将比较结果发送至第二比较单元3。
[0060]第二比较单元3,其与第一比较单元2相连,用于在所述第一比较单元2确定平均延时值连续m次超过预设值时,判断该平均延时值连续m次超过预设值的次数是否超过预设阀值。如图8所示,该第二比较单元3包括超时计数器31和比较器32,超时计数器31用于在平均延时值连续m次超过预设值时,增加一次记录值,比较器32用于将所述超时计数器的记录值与预设阀值进行比较,判断该记录值是否超过预设阀值。
[0061]第三比较单元4,其与第二比较单元3相连,用于在所述第二比较单元3确定平均延时值连续m次超过预设值的次数超过预设阀值时,判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值。
[0062]执行单元5,其与第三比较单元4相连,用于在所述第三比较单元4确定出当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值时,启动防火墙的DDOS攻击防护功能。在本发明中,根据网络实际情况,启动相应的攻击防御机制,以避免服务器再次受到DDOS攻击,优先地,启动防护墙的IP Spoof攻击防护功来防护DDOS攻击。
[0063]在本发明中,预设值表示为,其中t平均为正常情况下客户端、Ping、服务器三者间的平均延时值,η为预设的系数;ΙΡ数据包预设值表示为cIPnum,其中IPnum为正常情况下单位时间内收到的新的IP地址发送的数据包的数量,c为预设的系数。只有在经过第一比较单元2、第二比较单元3和第三比较单元4的层层比较判断,并得出当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值时,执行单元5才会启动防火墙的DDOS攻击防护功能。
[0064]本发明能够及时开启防火墙的DDOS攻击防护功能,避免了防火墙一直开启DDOS攻击防护功能而导致防火墙性能降低和防火墙一直不开启DDOS攻击防护功能而导致服务器受到DDOS攻击的情况发生。
[0065]如上所述,根据本发明的一种防护DDOS攻击的方法及系统,通过定时检测Ping平均延时值的方法检测系统是否受到DDOS攻击,由于Ping包所占流量很小,使得DDOS攻击的检测简易且实时有效,并降低了检测中所使用的数据流量,且在检测出系统受到DDOS攻击时及时开启防火墙DDOS攻击防护功能,有效地提高了系统的运算速度和防火墙的防护性能。本发明的防护DDOS攻击的方法及系统具有显著的防护效果,对应用层DDOS攻击防护和网络层DDOS攻击防护均可适用。
[0066]应当理解的是,本发明的上述【具体实施方式】仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
【权利要求】
1.一种防护DDOS攻击的方法,其特征在于,包括以下步骤: 步骤SI,统计定时周期内客户端、Ping、服务器三者间的平均延时值; 步骤S2,判断所述平均延时值是否连续m次超过预设值; 步骤S3,如果所述平均延时值连续m次超过预设值,进一步判断该平均延时值连续m次超过预设值的次数是否超过预设阀值; 步骤S4,如果所述平均延时值连续m次超过预设值的次数超过预设阀值,进一步判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值; 步骤S5,如果当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值,则启动防火墙的DDOS攻击防护功能; 其中,m为根据服务器性能而预先设定的参数。
2.根据权利要求1所述的方法,其特征在于,所述步骤S2包括: 将步骤SI中得到的平均延时值与预设值相比较,判断该平均延时值是否超过预设值; 在所述平均延时值超过预设值时,判断该平均延时值是否连续m次超过预设值。
3.根据权利要求1所述的方法,其特征在于,所述步骤S3包括: 在所 述平均延时值连续m次超过预设值时,超时计数器增加一次记录值; 将超时计数器的记录值与预设阀值相比较,判断平均延时值连续m次超过预设值的次数是否超过预设阀值。
4.根据权利要求1所述的方法,所述预设值表示为,其中为正常情况下客户端、Ping、服务器三者间的平均延时值,η为预设的系数。
5.根据权利要求1所述的方法,所述IP数据包预设值表示为ClPnum,其中IPm为正常情况下单位时间内收到的新的IP地址发送的数据包的数量,c为预设的系数。
6.根据权利要求1所述的方法,其特征在于,所述步骤S5中启动防火墙的DDOS攻击防护功能包括:启动防火墙的IP Spoof攻击防护功能。
7.一种防护DDOS攻击的系统,其特征在于,包括: 统计单元(1),用于在每隔一个定时周期,统计客户端、Ping、服务器三者间的延时值,并计算出该定时周期内客户端、Ping、服务器三者间的平均延时值; 第一比较单元(2),用于将统计单元(I)统计的平均延时值与预设值进行比较,判断该平均延时值是否连续m次超过预设值; 第二比较单元(3),用于在所述第一比较单元(2)确定平均延时值连续m次超过预设值时,判断该平均延时值连续m次超过预设值的次数是否超过预设阀值; 第三比较单元(4 ),用于在所述第二比较单元(3 )确定平均延时值连续m次超过预设值的次数超过预设阀值时,判断当前单位时间内收到的新的IP地址发送的数据包数量是否大于IP数据包预设值; 执行单元(5),用于在所述第三比较单元(4)确定出当前单位时间内收到的新的IP地址发送的数据包数量大于IP数据包预设值时,启动防火墙的DDOS攻击防护功能; 其中,m为根据服务器性能而预先设定的参数。
8.根据权利要求7所述的系统,其特征在于,所述第二比较单元(3)包括超时计数器(31)和比较器(32); 超时计数器(31),用于在平均延时值连续m次超过预设值时,增加一次记录值;比较器(32),用于将所述超时计数器(31)的记录值与预设阀值进行比较,判断该记录值是否超过预设阀值。
9.根据权利要求7所述的系统,其特征在于,所述执行单元(5)启动的DDOS攻击防护功能为IP Spoof攻击防护功能。
10.根据权利要求7所述的系统,所述预设值表示为,其中t平均为正常情况下客户端、Ping、服务器三者间的平均延时值,η为预设的系数;以及 所述IP数据包预设值表示为cIPnum,其中IPnum为正常情况下单位时间内收到的新的IP地址发送的数据 包的数量,c为预设的系数。
【文档编号】H04L29/06GK103916387SQ201410098469
【公开日】2014年7月9日 申请日期:2014年3月18日 优先权日:2014年3月18日
【发明者】王宇 申请人:汉柏科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1