一种分布式拒绝服务攻击的防御方法与系统与流程

文档序号:11138640阅读:529来源:国知局
一种分布式拒绝服务攻击的防御方法与系统与制造工艺

本发明涉及计算机领域,具体而言,涉及一种分布式拒绝服务攻击的防御方法与系统。



背景技术:

分布式拒绝服务(Distributed Denial of Service,DDoS)攻击,指借助于客户端/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地拒绝服务攻击的威力。通常,攻击者使用一个偷窃账号将DDoS主控程序安装在一个计算机上,在一个设定的时间,主控程序将与大量代理程序通讯,其中,代理程序已经安装在Internet上的许多计算机上,代理程序收到指令时就发动攻击。利用客户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序的运行,因为攻击时,攻击数据包都是经过伪装的,源IP地址也进行了伪装,因而难以对攻击进行准确区分。

流量清洗技术是一种近年来新兴的异常流量检测控制技术,对DDoS攻击具有较佳的效果。流量清洗的原理是在发现网络攻击行为后,采用路由通告的方式改变流量转发方向,将流量牵引至指定节点,然后用异常流量过滤设备处理重定向流量,对重定向流量中的异常流量进行过滤、限速,而将合法流量回注到网络中,从而避免了DDoS攻击。

现有技术中有通过设置反向代理服务器的方法进行DDoS防御。

当客户机向站点提出请求时,请求将转到反向代理服务器。然后,反向代理服务器通过防火墙中的特定通路,将客户机的请求发送到内容服务器。内容服务器再通过该通路将结果回传给反向代理服务器。如果内容服务器返回错误消息,反向代理服务器会先行截取该消息并更改标头中列出的任何统一资源定位符(URL),然后再将消息发送给客户机。如此可防止外部客户机获取内部内容服务器的重定向URL。

通过解析到反向代理服务器上的虚拟IP地址,客户机的访问流量经过反向代理服务器上层的清洗后,再经过反向代理服务器回到内容服务器。

然而这样的防御方法不支持用户数据报协议(UDP协议)。另外由于不支持端口复用,所以单个用于防御的虚拟IP地址能支持的并发有限。由于一般的反向代理都要基于linux kernel的协议栈,所以性能受到协议栈的制约。

现有技术中还有采用互联网数据中心(Internet Data Center,IDC)进行防御的方法。

在IDC内部有流量监测系统,当攻击发生时,流量监测系统通过边界网关协议(BGP)将流量调度到清洗系统进行清洗。

然而这样的防御方法只能处理IDC内部网络受到DDOS攻击的问题,不能解决服务器不托管在此IDC的问题。已经不能够适用现有的云环境下的大规模应用。



技术实现要素:

基于以上问题,本发明的目的在于提供一种分布式拒绝服务攻击的防御方法与系统,能够在现有的云环境下有效地进行DDoS攻击清洗,并能够对内容服务器进行保护。

根据本发明的一个方面,提供一种分布式拒绝服务攻击的防御系统,包括:监测装置,监测装置监测客户端流向内容服务器的网络流量,监测装置在识别到攻击流量时发出受攻击信号;路由器,路由器接收受攻击信号后,将包括攻击流量的网络流量转发至高防设备;高防设备,高防设备接收包括攻击流量的网络流量并对包括攻击流量网络流量进行清洗,以获得清洗流量,高防设备将清洗流量回注内容服务器,其中,清洗流量的源IP地址被设置为高防设备的IP地址;高防设备接收内容服务器的处理数据,并将处理数据转发至客户端,其中,转发至客户端的处理数据的源IP地址被设置为高防设备的IP地址。

优选地,高防设备包括转发集群,转发集群包括交换机以及数个转发器,交换机接收网络流量,交换机将网络流量转发至数个转发器中根据负载均衡算法确定的用于清洗网络流量的当前转发器,当前转发器接收网络流量并对网络流量进行清洗,以获得清洗流量,当前转发器将清洗流量回注内容服务器。

优选地,高防设备包括第一清洗设备以及转发集群;第一清洗设备接收网络流量并对网络流量进行清洗,以获得第一清洗流量,第一清洗设备将第一清洗流量发送至转发集群,转发集群接收第一清洗流量,并对第一清洗流量进行二次清洗,以获得第二清洗流量,转发集群将第二清洗流量回注内容服务器。

优选地,转发集群包括交换机以及数个转发器,交换机接收第一清洗流量,交换机将第一清洗流量转发至数个转发器中根据负载均衡算法确定的用于清洗第一清洗流量的当前转发器,当前转发器接收第一清洗流量并对第一清洗流量进行二次清洗,以获得第二清洗流量,当前转发器将第二清洗流量回注内容服务器。

优选地,当前转发器将第二清洗流量中的源IP地址设置为转发集群的IP地址,将目标IP地址设置为内容服务器的IP地址。

优选地,转发集群接收内容服务器的处理数据,并将处理数据转发至客户端,其中转发集群将转发至客户端的处理数据的源IP地址设置为高防设备的IP地址。

优选地,当前转发器包括网络地址转换连接表,当前转发器通过网络地址转换连接表进行IP地址的转换设置。

根据本发明的第二个方面,提供一种分布式拒绝服务攻击的防御方法,包括步骤:监测装置监测流向内容服务器网络的网络流量,在识别到攻击流量时发出受攻击信号;路由器接收受攻击信号后,将包括攻击流量的网络流量转发至高防设备;高防设备接收包括攻击流量的网络流量并对包括攻击流量网络流量进行清洗,以获得清洗流量;高防设备将清洗流量的源IP地址设置为高防设备的IP地址,并将清洗流量回注内容服务器;高防设备接收内容服务器的处理数据,并将处理数据的源IP地址设置为高防设备的IP地址,高防设备将转换后的处理数据转发至客户端。

优选地,高防设备包括第一清洗设备以及转发集群;第一清洗设备接收网络流量并对网络流量进行清洗,以获得第一清洗流量,第一清洗设备将第一清洗流量发送至转发集群,转发集群接收第一清洗流量,并对第一清洗流量进行二次清洗,以获得第二清洗流量,转发集群将第二清洗流量回注内容服务器。

优选地,转发集群包括交换机以及数个转发器,交换机接收第一清洗流量,交换机将第一清洗流量转发至数个转发器中根据负载均衡算法确定的用于清洗第一清洗流量的当前转发器,当前转发器接收第一清洗流量并对第一清洗流量进行二次清洗,以获得第二清洗流量,当前转发器将第二清洗流量的源IP地址设置为转发集群的IP地址,将第二清洗流量回注内容服务器。

优选地,转发集群接收内容服务器的处理数据,并将处理数据的源IP地址设置为高防设备的IP地址,并将设置后的处理数据转发至客户端。

本发明中当监测到DDoS攻击时,将网络流量转发至高防设备,通过高防设备进行清洗并回注内容服务器,高防设备将清洗流量的源IP地址设置为高防设备的IP地址,从而保证内容服务器向高防设备回复处理数据。高防设备将接收到的处理数据的源IP地址设置为高防设备的IP地址,从而隐藏了内容服务器的IP地址,防止内容服务器受到进一步攻击。通过这样的设置,本发明实现了在云环境下有效地进行DDoS攻击清洗,并能够对内容服务器进行保护。

由于高防设备具有转发器,转发器采用基于用户态的处理程序实现流量的网络地址转换以及传输,不受传输协议以及网络区域范围限制,因此高防设备能够支持多个传输协议,且不受网络区域范围的限制。

由于转发集群采用网络地址转换连接表从而实现端口复用,增加了并发连接数,提供大流量的DDoS防护。

附图说明

以下结合附图和具体实施例对本发明的技术方案进行详细的说明,以使本发明的特性和优点更为明显。

图1为包括客户端、内容服务器以及本发明的分布式拒绝服务攻击的防御系统的结构示意图;

图2为未受到攻击时本发明的分布式拒绝服务攻击的防御方法的数据流向示意图;

图3为受到攻击时本发明的分布式拒绝服务攻击的防御方法的数据流向示意图;

图4为本发明的分布式拒绝服务攻击的防御方法的一个实例的数据流程图。

具体实施方式

以下将对本发明的实施例给出详细的说明。尽管本发明将结合一些具体实施方式进行阐述和说明,但需要注意的是本发明并不仅仅只局限于这些实施方式。相反,对本发明进行的修改或者等同替换,均应涵盖在本发明的权利要求范围当中。

一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

图1为包括客户端、内容服务器以及本发明的分布式拒绝服务攻击的防御系统的结构示意图。客户端101向内容服务器103发出请求信息,从而形成流向内容服务器103的网络流量,为了方便说明,本发明中仅列出了一个客户端101作为示例。如图1所示,分布式拒绝服务攻击的防御系统包括监测装置104,路由器102以及高防设备105。

当监测装置104监测到网络流量中包括攻击流量时,路由器102将流向内容服务器103的网络流量转入高防设备105,高防设备105对网络流量中的攻击流量进行清洗并将清洗后得到的清洗流量回注到内容服务器103,清洗流量的源IP地址设置被为高防设备的IP地址,从而保证内容服务器103在对清洗流量进行处理后,将处理数据返回高防设备105。高防设备105在接收到处理数据后,将处理数据的源IP地址被设置为高防设备的IP地址,从而隐藏了内容服务器103的IP地址,防止内容服务器103受到进一步攻击。

下面对分布式拒绝服务攻击的防御系统中的各个装置以及设备进行介绍。

具体而言,监测装置104监测客户端101流向内容服务器103的网络流量,监测方法可采用现有技术的监测方法,例如采集访问内容服务器的网络流量,对关注的指标进行存储,并描绘成曲线,对曲线进行攻击检测。当监测装置104监测到攻击流量时发出受攻击信号。

路由器102进行网络流量转发。当路由器102未接收到受攻击信号时,路由器102将网络流量直接转发至内容服务器103。当路由器102接收到受攻击信号时,路由器102将网络流量转发至高防设备105。

高防设备105用于对包括攻击流量的网络流量进行清洗,并将清洗流量回注到内容服务器103。具体而言,本实施例中高防设备105包括第一清洗设备106以及转发集群107,需要清洗的网络流量首先由第一清洗设备106进行清洗,再由第一清洗设备106转发至转发集群107进行二次清洗,从而得到清洗流量。需要注意的是,在其他实施例中也可以仅设置转发集群107而不设置第一清洗设备106,然而设置第一清洗设备106实现二次清洗能够更好地保障攻击流量被清洗而防止遗漏,并且减轻攻击流量对转发集群107的性能影响。第一清洗设备106可以使用IDC中设备,也可以通过独立的设备实现。

其中,转发集群107包括交换机109以及数个转发器1081,1082,1083,本实施例中转发集群107示例性地包括三个转发器1081,1082,1083。数据发送到转发集群107时,首先由交换机109接收数据,转发集群107根据负载均衡算法确定数个转发器1081,1082,1083中的用于处理当前数据的当前转发器1081后,交换机109将数据转发至当前转发器1081。在本发明中,转发器1081,1082,1083采用基于用户态的处理程序实现流量的网络地址转换以及传输,能够支持多个传输协议,且不受网络区域范围的限制。转发器1081,1082,1083采用英特尔数据面开发套件(Intel DataPlaneDevelopmentKit,Intel DPDK)数据处理框架。Intel DPDK是Intel公司提出的一种高速网络数据包的软件开发套件,Intel DPDK通过旁路Linux系统网络协议栈,直接对网卡进行读写,结合对多核CPU中不同内核的绑定,能够实现1Gbit网络小包流量下的线速收发。在Intel DPDK数据处理框架下具体接收以及发送数据的方法,可以采用现有的Intel DPDK数据处理方法。

图2为未受到攻击时本发明的分布式拒绝服务攻击的防御方法的数据流向示意图。

如图2所示,标识了数据流向。例如,客户端101向域名为www.abc.com发出请求信息,监测装置104监测流向域名为www.abc.com的网络流量。路由器102接收网络流量,当监测装置104未监测出攻击流量时,路由器102将www.abc.com的域名解析为内容服务器103的IP地址5.5.5.5,进而路由器102将网络流量直接转发至内容服务器103。

内容服务器103接收请求信息,对请求信息响应处理,并向客户端101返回处理数据。

图4为本发明的分布式拒绝服务攻击的防御方法的一个实例的数据流程图。如图4所示,本发明的分布式拒绝服务攻击的防御方法主要实施以下步骤:

S101:监测装置104识别攻击流量并发出受攻击信号;

S102:路由器102接收受攻击信号后,将包括攻击流量的网络流量转发至第一清洗设备106;

S103:第一清洗设备106接收网络流量并进行清洗,获得第一清洗流量;

S104:交换机109接收第一清洗流量,并转发至当前转发器1081;

S105:当前转发器1081接收第一清洗流量并进行二次清洗,获得第二清洗流量;

S106:当前转发器1081将第二清洗流量的源IP地址设置为转发集群107的IP地址,将第二清洗流量回注内容服务器103;

S107:转发集群107接收内容服务器103的处理数据,并将处理数据的源IP地址设置为高防设备105的IP地址,并转发至客户端101。

图3为受到攻击时本发明的分布式拒绝服务攻击的防御方法的数据流向示意图。

结合3以及图4,标识了客户端101发出的网络流量到当前转发器1081的数据流向。

具体而言,如步骤S101,监测装置104监测流向域名为www.abc.com的网络流量,当监测装置104监测到攻击流量时,监测装置104发出受攻击信号。

如步骤S102,路由器102接收到受攻击信号后,将www.abc.com的域名解析为高防设备105的IP地址1.1.1.1,从而将包括攻击流量的网络流量转发至高防设备105。

在本实施例中,如步骤S103,高防设备105中的第一清洗设备106接收网络流量并对网络流量进行清洗,从而获得第一清洗流量。在本实施例中,第一清洗设备106负责对网络流量进行网络层、传输层流量型攻击的清洗。网络流量的清洗方法可以采用现有的清洗算法。例如针对SYN Flood攻击,采用SYN cookie算法进行清洗。

第一清洗设备106将第一清洗流量发送至转发集群105,由转发集群105对第一清洗流量进行二次清洗。具体如步骤S104,转发集群105中的交换机109接收第一清洗流量。转发集群105根据负载均衡算法确定处理第一清洗流量的当前转发器1081,交换机109将第一清洗流量发送当前转发器1081。

如步骤S105,当前转发器1081接收第一清洗流量并进行二次清洗,从而获得第二清洗流量。在本实施例中,当前转发器1081主要负责应用层攻击清洗,以及在第一清洗设备106清洗时漏过的网络层以及传输层攻击流量清洗。具体的清洗算法可采用现有的清洗算法。

图3中,标识了当前转发器1081与内容服务器103之间的数据流向。

如步骤S106,当前转发器1081将第二清洗流量的源IP地址设置为转发集群107的IP地址2.2.2.2,将第二清洗流量回注内容服务器103。

转发器1081,1082,1083包括网络地址转换(Network Address Translation,NAT)连接表,当前转发器1081通过NAT连接表进行IP地址的转换设置。

具体例如,当前转发器1081接收的第一清洗流量的源IP地址为客户端101IP地址3.3.3.3,源端口号为客户端101端口号2222,目标IP地址为高防设备105的IP地址1.1.1.1,目标端口号为高防设备105端口号80。当前转发器1081基于目标IP地址,源IP地址在NAT连接表中进行查找。找到后,执行相应命令将清洗后的第二清洗流量的目标IP地址设置为内容服务器103的IP地址5.5.5.5,目标端口号为内容服务器103的端口号80,将源IP地址设置为转发集群107的IP地址2.2.2.2,源端口号为转发集群107的端口号,需要注意的是,这里转发集群107的端口号是随机虚拟的,例如1024。

由于转发集群107的端口号可以复用,即源自不同客户端的第二清洗流量可以使用同一个源端口号,例如1024,因此增加了所能支持的并发连接数,从而能够应对大流量的攻击防护。也就是说,转发集群107通过NAT连接表,实现了端口复用。

同时,由于转发器1081,1082,1083采用Intel DPDK数据处理框架进行数据转发,优化了数据处理过程,从而加快数据处理速率,进一步适应大流量的攻击防护。

接着,内容服务器103接收第二清洗流量,并对第二清洗流量进行应答处理。由于第二清洗流量的源IP地址为转发集群107的IP地址2.2.2.2,因此内容服务器103向转发集群107返回处理数据,此时,处理数据的源IP地址为内容服务器103的IP地址5.5.5.5,源端口号为内容服务器103的端口号80,目标IP地址为转发集群107的IP地址2.2.2.2,目标端口号为转发集群107的端口号1024。

如步骤S107,转发集群107接收内容服务器103的处理数据,并将处理数据的源IP地址设置为高防设备105的IP地址,并转发至客户端101。步骤S107的数据流向可以参照图3中标识所示。

具体而言,转发集群107的交换机109接收处理数据,转发集群根据负载均衡算法确定当前转发器,需要注意的是,此处的当前转发器可以是和步骤S104中相同的转发器,也可以是不同的转发器。为了方便说明,本实施例中当前转发器仍是和步骤S104中相同的转发器1081。交换机109将处理数据转发至当前转发器1081。当前转发器1081通过网络地址转换连接表进行IP地址的转换设置,当前转发器1081基于目标IP地址,源IP地址在NAT连接表中进行查找。找到后,当前转发器1081将处理数据的源IP地址被设置为高防设备105的IP地址5.5.5.5,源端口号为高防设备105端口号80,目标IP地址设置为客户端101的IP地址3.3.3.3,目标端口号为客户端101的端口号2222。

当前转发器1081将设置后的处理数据转发至客户端101。由于客户端101接收到的处理数据的源IP地址为高防设备105的IP地址,因此有效地隐藏了内容服务器103的IP地址,从而避免内容服务器103被攻击。

从以上描述可看出,本发明所提供的分布式拒绝服务攻击的防御系统以及防御方法通过基于用户态的转发器实现对攻击流量的清洗以及对内容服务器IP地址的隐藏。由于高防设备具有转发器,转发器采用基于用户态的处理程序实现流量的网络地址转换以及传输,不受传输协议以及网络区域范围限制,因此高防设备能够支持多个传输协议,能够不受网络区域范围的限制。转发集群采用NAT连接表从而实现端口复用,增加了并发连接数,提供大流量的DDoS防护。高防设备通过两层清洗,有效地防止了攻击流量对转发器的性能影响。同时,对于内容服务器的提供商而言,要使用发明所提供的分布式拒绝服务攻击的防御系统以及防御方法,只需要改动域名解析即可,无需作出大的业务改动。

以上仅是本发明的具体应用范例,对本发明的保护范围不构成任何限制。除上述实施例外,本发明还可以有其它实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明所要求保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1