前置可重构DDoS攻击防御装置及方法转让专利

申请号 : CN201110093572.5

文献号 : CN102164135B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邬江兴罗兴国张兴明庞建民祝永新张铮张帆祝卫华李弋陈韬谢同飞

申请人 : 上海红神信息技术有限公司中国人民解放军信息工程大学

摘要 :

本发明涉及一种前置可重构DDoS攻击防御装置及方法,包括与外部网络相连接的接收来自网络数据流的接入模块,接入模块分别与检测模块和处理模块相连接,检测模块与控制模块相连,控制模块与TCP状态监测模块输出端口相连,TCP状态监测模块的输入端口接收IP协议栈处理部件的状态信息,TCP状态监测模块对IP协议栈的状态进行监测,依此判断是否发生DDoS攻击及攻击的程度,处理模块分别与控制模块和接入模块相连,处理模块的输出端口向IP协议栈发送经过处理后的数据包,并根据控制模块的指令完成不同级别的DDoS防护功能,根据DDoS攻击类型配置相应的检测和防御策略,实现准确高效的防护。

权利要求 :

1.一种前置可重构DDoS攻击防御装置,包括与外部网络相连接的接收来自网络数据流的接入模块,其特征在于:DDoS攻击防御装置作为一个硬化的功能模块,称之为Anti-DDoS Engin,简称ADE,部署在Web服务器IP协议栈执行部件之前;

接入模块的输入端口与外部网络相连,用于接收网络数据流;

接入模块的输出端口分别与检测模块和处理模块相连接,检测模块提取网络数据流的特征值,并根据特征值, 调用检测规则,判断是否存在DdoS攻击数据包以及检测DDoS攻击的类型,如果存在,则将检测结果反馈给控制模块;

检测模块通过输入输出端口与控制模块相连,控制模块根据反馈信息对系统行为进行控制,控制模块与TCP状态监测模块输出端口相连接,TCP状态监测模块的输入端口接收IP协议栈处理部件的状态信息,TCP状态监测模块对IP协议栈的状态进行监测,依此判断是否发生DDoS攻击及攻击的程度, 并向控制模块103反馈监测结果,避免检测模块102的漏检问题;

控制模块根据检测模块和TCP状态监测模块的反馈信息,向检测模块和处理模块发出控制命令,更新检测规则和处理策略,对输入的网络数据流进行处理,实现对不同类型DDoS攻击的精确防护;

处理模块的两个输入端口分别与控制模块和接入模块相连,处理模块的输出端口向IP协议栈发送经过处理后的数据包,并根据控制模块的指令完成不同级别的DDoS防护功能;

检测模块和处理模块采用可编程逻辑器件实现,用户通过控制模块对它们进行重配置,以检测和处理不同类型、不同程度的DDoS攻击,保证硬件实现的高效性和满足灵活性需求。

2.一种利用权利要求1所述的前置可重构DDoS攻击防御装置进行前置可重构DDoS攻击防御方法,其特征在于:按如下步骤进行:步骤1:接入模块接收经过分类的IP数据流;

步骤2:TCP状态监测模块对IP协议栈的执行状态进行监测,以便控制模块判断是否发生DDoS攻击以及服务器收到攻击的程度,并向控制模块反馈监测结果,避免检测模块的漏检问题;

步骤3:检测模块提取输入IP数据流的特征值,根据设定的检测规则或算法进行检测;

步骤4:根据检测结果判断是否存在DDoS攻击数据包,并确定攻击的类型,如果存在,则对数据流进行处理,将检测结果反馈给控制模块,否则直接转发通过;

步骤5:控制模块根据检测模块和TCP状态监测模块的反馈信息,向检测模块和处理模块发出控制命令,更新检测规则和处理策略,对输入的网络数据流进行处理,实现对不同类型DDoS攻击的精确防护,阻止潜在的DDoS攻击;

步骤6:得到安全的数据流。

说明书 :

前置可重构DDoS攻击防御装置及方法

技术领域

[0001] 本发明涉及一种计算机网络安全技术,特别涉及一种针对DDoS攻击的前置可重构DDoS攻击防御装置及方法。

背景技术

[0002] 拒绝服务攻击(DoS)是指攻击者通过某种手段,有意地造成计算机或网络不能正常运转从而不能向合法用户提供所需要的服务或者使得服务质量降低。DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使服务器无法处理合法用户的指令。单一的DoS攻击一般是采用一对一方式的,当被攻击目标CPU速度低、内存小或者网络带宽小等各项性能指标不高,它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击变得更加困难。
[0003] 在此基础上,出现了一种新的攻击方式——DDoS(Distributed Denial of Service),即分布式拒绝服务攻击。DDoS指处于不同位置的多个攻击者同时向一个或者数个目标发起攻击,或者一个或多个攻击者控制了位于不同位置的多台计算机并利用这些计算机对受害者同时实施攻击,由于攻击的发出点是分布在不同地方的,这类攻击称为分布式拒绝服务攻击。高速广泛连接的网络给大家带来了方便,也为DDoS攻击创造了极为有利的条件。
[0004] 如图1所示,一个比较完善的DDoS攻击体系分成4部分,分别是攻击者及其计算机、控制机、攻击机和被攻击的对象(通常为服务器)。攻击者通过一些技术手段获取一些计算机的控制权或部分控制权,使其成为傀儡机,其中少量的作为控制机,另外一些作为攻击机,它们分别用做控制和实际发起攻击。对于受害者来说,DDoS的实际攻击包是从攻击傀儡机上发出的,控制机只发布命令而不参与实际的攻击。这样一来,就很难追查到DDoS的实际攻击者。
[0005] 针对不同的服务,有不同DDoS攻击方式,SYN Flood攻击是最早出现,也是最有效、最常见的攻击方式,它利用了TCP协议实现上的一个缺陷,通过向网络服务所在端口发送大量的伪造源地址的攻击报文,造成目标服务器中的半开连接队列被占满,从而阻止其他合法用户进行访问;ACK Flood攻击中,主机操作系统将耗费大量的精力接收报文、判断状态,同时要主动回应RST报文,正常的数据包就可能无法得到及时的处理;Connection Flood也称为连接耗尽攻击,它的基本思想就是将服务器上可用的连接数占满直至无法正常响应,是典型的并且非常的有效的利用小流量冲击大带宽网络服务的攻击方式。
[0006] 解决DDoS的困难在于其分布式特性,以及攻击者采用伪造、随机变化报文源IP地址、随机变化攻击报文内容等方法,使得DDoS的攻击特征难以提取,攻击源的位置难以确定。目前常用的防护策略有防火墙、包检测、流量监测与控制等,它们能有效预防特定的DDoS攻击,但在实际网络环境中,攻击模式复杂多变,因此总体效果不尽理想。
[0007] 一种现有的技术(申请号为200810067376.9的发明)中,在服务器端对服务器的运行状态或进入服务器的网络数据流进行检测,判断是否有针对本服务器的DDoS攻击发生,如果有则通知数据清洗设备对本服务器的网络数据流进行清洗。该方法的缺陷主要有:(1)通过服务器的运行状态检测到DDoS攻击时,服务器的性能已经受到很大影响;(2)由于DDoS攻击通常模仿用户的正常访问行为,因此对网络数据流进行检测并不能确保及时发现攻击行为,另外,当数据流量非常大时,检测设备会不堪重负。
[0008] 一种针对web服务器的DDoS攻击防御技术(200610034795.3)中,将防火墙设置在web服务器之前,用户向web服务器发起的tcp连接请求,防火墙将所述请求转发给web服务器,接收并检查web服务器的回应报文,当回应报文中包括差错码时,断开与所述tcp连接请求对应的tcp连接。在理论上,该方法很好的解决伪造源IP的SYN Flood攻击,但在实际的网络环境非常复杂,会产生一些不利因素。当攻击流量非常大时,如果完全进行IP地址检测,工作量会非常大,防火墙可能不堪重负最终无法响应,其次防火墙前端的网络设备将充斥着大量无用的垃圾流量,会占用大量带宽,前端的网络设备将开始出现随机丢包,攻击者的目的也就达到了。在某些情况下,由于防火墙前端的网络设备要转发大量的数据包,如果配置不当甚至可能由于负载很高而无法正常工作。

发明内容

[0009] 针对现有机制难以有效防御多种DDoS攻击的问题,本发明提供一种前置可重构DDoS攻击防御装置及方法,它根据DDoS攻击类型配置相应的检测和防御策略,实现准确高效的防护。
[0010] 本发明技术方案是这样实现的:
[0011] 一种前置可重构DDoS攻击防御装置,包括与外部网络相连接的接收来自网络数据流的接入模块,其特征在于:
[0012] DDoS攻击防御装置作为一个硬化的功能模块,称之为Anti-DDoS Engin,简称ADE,部署在Web服务器IP协议栈执行部件之前;
[0013] 接入模块的输出端口分别与检测模块和处理模块相连接,检测模块提取数据流的特征值,并根据特征值检测DDoS攻击的类型,检测模块通过输入输出端口与控制模块相连,控制模块根据反馈信息对系统行为进行控制,控制模块与TCP状态监测模块输出端口相连接,TCP状态监测模块的输入端口接收IP协议栈处理部件的状态信息,TCP状态监测模块对IP协议栈的状态进行监测,依此判断是否发生DDoS攻击及攻击的程度, 处理模块的两个输入端口分别与控制模块和接入模块相连,处理模块的输出端口向IP协议栈发送经过处理后的数据包,并根据控制模块的指令完成不同级别的DDoS防护功能[0014] 检测模块和处理模块采用可编程逻辑器件实现,用户通过控制模块对它们进行重配置,以检测和处理不同类型、不同程度的DDoS攻击,保证硬件实现的高效性和满足灵活性需求。
[0015] 一种前置可重构DDoS攻击防御方法,其特征在于:按如下步骤进行:
[0016] 步骤1:接入模块接收经过分类的IP数据流;
[0017] 步骤2:TCP状态监测模块对IP协议栈的执行状态进行监测,以便控制模块判断是否发生DDoS攻击以及服务器收到攻击的程度,并向控制模块反馈监测结果,避免检测模块的漏检问题;
[0018] 步骤3:检测模块提取输入IP数据流的特征值,根据设定的检测规则或算法进行检测;
[0019] 步骤4:根据检测结果判断是否存在DDoS攻击数据包,并确定攻击的类型,如果存在,则对数据流进行处理,将检测结果反馈给控制模块,否则直接转发通过;
[0020] 步骤5:控制模块根据检测模块和TCP状态监测模块的反馈信息,向检测模块和处理模块发出控制命令,更新检测规则和处理策略,对输入的网络数据流进行处理,实现对不同类型DDoS攻击的精确防护,阻止潜在的DDoS攻击;
[0021] 步骤6:得到安全的数据流。
[0022] 本发明中检测模块和处理模块采用可编程逻辑器件实现,用户可以通过控制模块对它们进行重配置,以检测和处理不同类型、不同程度的DDoS攻击。这样既保证了硬件实现的高效性,同时满足了灵活性需求。

附图说明

[0023] 图1为DDoS攻击示意图。
[0024] 图2为本发明的DDoS攻击防御装置原理框图。
[0025] 图3为本发明的结构示意图。
[0026] 图4为本发明实施例的防止DDoS攻击的方法流程图。

具体实施方式

[0027] 如图2、3所示,一种前置可重构DDoS攻击防御装置,它包括如下几个部分:接入模块,检测模块,TCP状态监测模块,控制模块,处理模块。接入模块接收来自网络的数据流;检测模块提取数据流的特征值,如IP地址,端口号,包信息等,并根据特征值检测DDoS攻击的类型;TCP状态监测模块对IP协议栈的状态进行监测,依此判断是否发生DDoS攻击及攻击的程度;控制模块根据反馈信息对系统行为进行控制;处理模块根据控制模块的指令完成不同级别的DDoS防护功能。
[0028] 图2给出了本发明提供的DDoS攻击防御装置原理框图,接入模块101接收网络数据流;检测模块102提取网络数据流的特征值,调用检测规则,判断是否存在DdoS攻击数据包以及攻击的类型,如果存在,则将检测结果反馈给控制模块103;TCP状态监测模块104对IP协议栈的执行状态进行监测,根据状态信息判断是否发生DDoS攻击,以及受到攻击的程度,并向控制模块103反馈监测结果,这样可以避免检测模块102的漏检问题;控制模块103根据检测模块102和TCP状态监测模块104的反馈信息,向检测模块102和处理模块
105发出控制命令,更新检测规则和处理策略,对输入的网络数据流进行处理,实现对不同类型DDoS攻击的精确防护。
[0029] 下面介绍模块之间的连接关系:接入模块输入端与外部网络相连,其输出端分别与检测模块和处理模块相连,检测模块通过输入输出端口与控制模块相连,TCP状态监测模块输入端接收IP协议栈处理部件的状态信息,输出端与控制模块相连,处理模块的两个输入端口分别与控制模块和接入模块相连,输出端向IP协议栈发送经过处理后的数据包。
[0030] 如图3所示,本实施例中,DDoS攻击防御装置作为一个硬化的功能模块,称之为Anti-DDoS Engin(ADE),部署在Web服务器IP协议栈执行部件之前。
[0031] 图4给出了本实施例提供的技术方案的流程图,具体按如下步骤进行:
[0032] 步骤1:接入模块接收经过分类的IP数据流;
[0033] 步骤2:TCP状态监测模块对IP协议栈的执行状态进行监测,以便控制模块判断是否发生DDoS攻击以及服务器收到攻击的程度,并向控制模块反馈监测结果,避免检测模块的漏检问题;
[0034] 步骤3:检测模块提取输入IP数据流的特征值,根据设定的检测规则或算法进行检测;
[0035] 步骤4:根据检测结果判断是否存在DDoS攻击数据包,并确定攻击的类型,如果存在,则对数据流进行处理,将检测结果反馈给控制模块,否则直接转发通过;
[0036] 步骤5:控制模块根据检测模块和TCP状态监测模块的反馈信息,向检测模块和处理模块发出控制命令,更新检测规则和处理策略,对输入的网络数据流进行处理,实现对不同类型DDoS攻击的精确防护,阻止潜在的DDoS攻击;
[0037] 步骤6:得到安全的数据流。