CN107454065B - 一种UDP Flood攻击的防护方法及装置 - Google Patents
一种UDP Flood攻击的防护方法及装置 Download PDFInfo
- Publication number
- CN107454065B CN107454065B CN201710566958.0A CN201710566958A CN107454065B CN 107454065 B CN107454065 B CN 107454065B CN 201710566958 A CN201710566958 A CN 201710566958A CN 107454065 B CN107454065 B CN 107454065B
- Authority
- CN
- China
- Prior art keywords
- terminal
- message
- udp
- information
- list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种UDP Flood攻击的防护方法及装置,应用于清洗设备,所述方法包括:接收终端发送的UDP报文,判断信任列表或限制列表中是否记录有所述终端的信息;如果否,基于TCP协议或ICMP协议向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,将所述UDP报文转发至服务器,如果否,对所述UDP报文进行限速处理。由于在本发明实施例中,清洗设备中保存有信任列表和限制列表,如果终端未记录在上述任一列表中,清洗设备基于TCP协议或ICMP协议向所述终端发送探测报文,从而确定是否将该终端记录在上述列表中,并对该UDP报文进行相应处理,使得当终端规模很大时,也能达到有效防护的目的。
Description
技术领域
本发明涉及网络通信安全领域,尤其涉及一种用户数据报协议泛洪(UserDatagram Protocol Flood,UDP Flood)攻击的防护方法及装置。
背景技术
用户数据报协议泛洪(UDP Flood)是日渐猖獗的流量型拒绝服务(Denial ofService,DoS)攻击,常见的情况是利用大量用户数据报协议(User Datagram Protocol,UDP)小包冲击DNS服务器或Radius认证服务器、流媒体视频服务器。100k pps的UDP Flood经常将线路上的骨干设备,例如防火墙打瘫,造成整个网段的瘫痪。由于UDP协议是一种无连接的协议,在UDP Flood攻击中,攻击者可发送大量虚假源IP地址的小UDP包。但是,由于UDP协议是一种无连接的协议,在进行数据传输之前,源IP不必与服务器进行连接,只要服务器有一个UDP的端口提供相关服务的话,那么源IP就可针对相关服务对所述服务器进行攻击。
现有技术中,在对UDP Flood攻击进行防护时,由于UDP协议是一种无连接的协议,清洗设备不能基于用户的连接状态分析源IP是否是虚假源IP,只能简单粗暴的做基于源IP的限速处理来达到缓解攻击对服务器的影响。这种限速处理是针对全部的源IP进行限速的,不能区分真实源IP和虚假源IP。正是由于UDP协议是一种无连接的协议,攻击者很容易伪造大量的虚假源IP发起攻击。现有技术中基于源IP限速的方法,当源IP规模很大时,基本不能发挥作用,放过的总流量往往大于服务器的承受能力,如果再进一步做基于出口的限速处理,又会造成对真实源IP的UDP报文的误杀,引发大量的投诉,用户的满意度难以保证。因此,现有技术中,在对UDP Flood攻击进行防护时,存在当源IP规模很大时,基本不能进行有效防护的问题。
发明内容
本发明实施例提供了一种UDP Flood攻击的防护方法及装置,用以解决现有技术中在对UDP Flood攻击进行防护时,存在当源IP规模很大时,基本不能进行有效防护的问题。
本发明实施例提供了一种UDP Flood攻击的防护方法,应用于清洗设备,该方法包括:
接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;
如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;
否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。
进一步地,所述判断自身保存的信任列表或限制列表中是否记录有所述终端的信息之前,所述方法还包括:
获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,进行后续步骤。
进一步地,所述探测报文包括以下至少一种:
基于TCP协议的请求SYN报文或者确认ACK报文和基于ICMP协议的回声请求ICMPecho报文。
进一步地,所述判断是否接收到所述终端发送的响应报文包括:
判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
进一步地,所述对所述UDP报文进行限速处理包括:
获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;
判断所述总流量是否大于所述服务器能接受的最大的理论流量;
如果是,确定对所述UDP报文限速处理后的转发速率为0;
如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
另一方面,本发明实施例提供了一种UDP Flood攻击的防护装置,所述装置包括:
接收判断模块,用于接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;
第一处理模块,用于如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;
第二处理模块,用于基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。
进一步地,所述装置还包括:
获取判断模块,用于获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,触发接收判断模块。
进一步地,所述第二处理模块,具体用于判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
进一步地,所述第一处理模块和第二处理模块,具体用于获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;判断所述总流量是否大于所述服务器能接受的最大的理论流量;如果是,确定对所述UDP报文限速处理后的转发速率为0;如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
本发明实施例提供了一种UDP Flood攻击的防护方法及装置,应用于清洗设备,所述方法包括:接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。由于在本发明实施例中,清洗设备中保存有信任列表和限制列表,因此可以针对记录在不同列表中的终端发送的UDP报文进行相应处理,如果终端未记录在上述任一列表中,基于TCP协议或ICMP协议向所述终端发送探测报文,从而确定是否将该终端记录在上述列表中,并对该UDP报文进行相应处理,因此能有效封杀限制列表中的终端发送的UDP报文,保护信任列表中的终端发送的UDP报文,使得当终端规模很大时,也能达到有效防护的目的。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的UDP Flood攻击的防护过程示意图;
图2为本发明实施例2提供的UDP Flood攻击的防护过程示意图;
图3为本发明实施例提供的UDP Flood攻击的防护装置结构示意图。
具体实施方式
下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1:
图1为本发明实施例提供的一种UDP Flood攻击的防护过程示意图,该过程包括以下步骤:
S101:接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息。
本发明实施例提供的UDP Flood攻击的防护方法应用于清洗设备,清洗设备中保存有信任列表和限制列表,所述信任列表和限制列表中记录有终端的信息,所述终端的信息可以为终端的IP地址。所述清洗设备可以是抗UDP Flood攻击的产品,例如:绿盟科技的抗拒绝服务系统(NSFOCUS Anti-DDoS System,NSFOCUS ADS),也可以是具有防护功能的网关等设备,另外本发明实施例中的终端可以是平板电脑、PC等设备。
所述清洗设备可以接收终端基于UDP协议发送的UDP报文,根据所述UDP报文,可以获取所述终端的信息。由于清洗设备中保存有信任列表和限制列表,因此,在获取到所述终端的信息后,可以判断自身保存的信任列表中或限制列表中是否记录有所述终端的信息。
S102:如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理。
所述清洗设备中保存的信任列表中的终端可以认为是真实终端,即信任列表中的终端发送的UDP报文认为是正常的用户发送的UDP报文。清洗设备接收终端发送的UDP报文,根据所述UDP报文获取所述终端的信息之后,如果判断信任列表中记录有所述终端的信息,则直接将所述UDP报文转发至服务器。
所述清洗设备中保存的限制列表中的终端可以认为是虚假终端,即限制列表中的终端发送的UDP报文认为是,虚假用户为了攻击服务器而发送的UDP报文。清洗设备接收终端发送的UDP报文,根据所述UDP报文获取所述终端的信息之后,如果判断限制列表中记录有所述终端的信息,则需要对所述接收到的UDP报文进行限速处理,从而对攻击服务器的所述UDP报文进行有效防护。其中,可以采用常用的限速处理方法对所述UDP报文进行限速处理,在此不再进行赘述。
S103:否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。
清洗设备接收终端发送的UDP报文,根据所述UDP报文获取所述终端的信息之后,有可能判断自身保存的信任列表和限制列表中都没有记录所述终端的信息。此时,为了对攻击服务器的UDP报文进行防护,并且不影响正常用户发送的UDP报文到服务器,需要判断所述终端是真实终端还是虚假终端。
由于真实终端具有完整的协议栈,在进行报文传输的时候满足TCP协议和ICMP协议,即真实终端接收到基于TCP协议或ICMP协议发送的报文之后,会发送响应报文;而虚假终端不满足TCP协议和ICMP协议,即虚假终端接收到基于TCP协议或ICMP协议发送的报文之后,不会发送响应报文。因此,可以根据所述终端是否满足TCP协议或ICMP协议,来确定所述终端是真实终端还是虚假终端。
具体的,清洗设备可以基于TCP协议或ICMP协议,向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,则说明所述终端为真实终端。在确定所述终端为真实终端后,可以将所述终端的信息添加到信任列表中,并且将所述UDP报文转发至服务器。清洗设备基于TCP协议或ICMP协议向所述终端发送探测报文,如果未接收到所述终端发送的响应报文,则说明所述终端为虚假终端。在确定所述终端为虚假终端后,可以将所述终端的信息添加到限制列表中,并且对所述UDP报文进行限速处理。
清洗设备可以向终端发送探测报文,所述探测报文包括以下至少一种:
基于TCP协议的请求SYN报文、确认ACK报文和基于ICMP协议的回声请求ICMP echo报文。
其中SYN报文和ACK报文是基于TCP协议的探测报文,ICMP echo报文是基于ICMP协议的探测报文。清洗设备向终端发送SYN报文、ACK报文和ICMP echo报文中的任意一种时,如果所述终端是真实终端,因为真实终端满足TCP协议和ICMP协议,因此清洗设备会接收到对应的响应报文,接收到的响应报文和发送的探测报文是存在对应关系的,所述对应关系是由TCP协议或ICMP协议规定的。
清洗设备可以向终端发送SYN报文、ACK报文和ICMP echo报文中的任意一种,例如发送SYN报文,如果接收到SYN报文对应的响应报文,则确定所述终端为真实终端,否则确定所述终端为虚假终端。也可以向终端发送SYN报文、ACK报文和ICMP echo报文中的任意两种,例如发送ACK报文和ICMP echo报文,如果接收到ACK报文对应的响应报文和ICMP echo报文对应的响应报文,则确定所述终端为真实终端,否则确定所述终端为虚假终端。当然,也可以向终端发送SYN报文、ACK报文和ICMP echo报文,如果接收到SYN报文对应的响应报文、ACK报文对应的响应报文和ICMP echo报文对应的响应报文,则确定所述终端为真实终端,否则确定所述终端为虚假终端。
由于在本发明实施例中,清洗设备中保存有信任列表和限制列表,因此可以针对记录在不同列表中的终端发送的UDP报文进行相应处理,如果终端未记录在上述任一列表中,基于TCP协议或ICMP协议向所述终端发送探测报文,从而确定是否将该终端记录在上述列表中,并对该UDP报文进行相应处理,因此能有效封杀限制列表中的终端发送的UDP报文,保护信任列表中的终端发送的UDP报文,使得当终端规模很大时,也能达到有效防护的目的。
实施例2:
由于本案提供的防护方法是针对UDP Flood攻击的,在进行防护之前,可以判断是否存在UDP Flood攻击,如果判断不存在UDP Flood攻击,则不需要进行防护,只有在判断存在UDP Flood攻击,才需要对UDP Flood攻击进行防护。为了节约清洗设备的防护资源,在上述实施例的基础上,在本发明实施例中,所述判断自身保存的信任列表或限制列表中是否记录有所述终端的信息之前,所述方法还包括:
获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,进行后续步骤。
清洗设备接收终端发送的UDP报文之后,在判断自身保存的信任列表或限制列表中是否记录有所述终端的信息之前,可以首先判断是否存在UDP Flood攻击,如果判断不存在UDP Flood攻击,则不需要判断自身保存的信任列表或限制列表中是否记录有所述终端的信息,可以直接将终端发送的UDP报文转发到服务器,而当判断存在UDP Flood攻击时,才需要对UDP Flood攻击进行防护。
存在UDP Flood攻击时,攻击者一般会伪造大量的虚假终端对服务器发起攻击,这样就会导致服务器的当前流量大于不存在UDP Flood攻击时服务器的流量。因此可以根据服务器的当前流量确定是否存在UDP Flood攻击。
具体的,清洗设备可以获取服务器的当前流量,并且清洗设备中保存有预设的流量阈值,获取服务器的当前流量后,判断所述当前流量是否大于预设的流量阈值,如果是,则确定存在UDP Flood攻击,需要对UDP Flood攻击进行防护,即进行判断自身保存的信任列表或限制列表中是否记录有所述终端的信息的步骤。如果所述当前流量不大于预设的流量阈值,则确定不存在UDP Flood攻击,不需要对UDP Flood攻击进行防护,因此可以直接将接收到的UDP报文转发到服务器。
图2为本发明实施例提供的一种UDP Flood攻击的防护过程示意图,该过程包括以下步骤:
S201:获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击。
S202:接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息。
S203:如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理。
S204:否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。
由于在本发明实施例中,在判断自身保存的信任列表或限制列表中是否记录有所述终端的信息之前,可以根据服务器的当前流量,确定是否存在UDP Flood攻击,当确定存在UDP Flood攻击时,再进行后续防护的步骤,而确定不存在UDP Flood攻击时,直接将接收到的UDP报文转发到服务器,因此节约了清洗设备的防护资源。
实施例3:
为了提高终端真实性确定的准确性,在上述各实施例的基础上,在本发明实施例中,所述判断是否接收到所述终端发送的响应报文包括:
判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
按照TCP协议和ICMP协议的规则,清洗设备在基于TCP协议或ICMP协议,向所述终端发送探测报文后,所述终端会在设定时间长度内向清洗设备发送响应报文,也就是说清洗设备会在设定时间长度内向接收到所述终端发送的响应报文。如果在设定时间长度内接收到所述终端发送的响应报文,那么可以认为所述终端满足TCP协议或ICMP协议,因此,可以确定所述终端为真实终端。如果在设定时间长度内没有接收到所述终端发送的响应报文,那么可以认为所述终端不满足TCP协议或ICMP协议,因此,可以确定所述终端为虚假终端。
具体的,清洗设备中可以设置一个计时器,在清洗设备基于TCP协议或ICMP协议向所述终端发送探测报文的同时,启动计时器开始计时,并且计时器的计时时长为第一设定时间长度,清洗设备判断在计时器的计时时长内是否接收到所述终端发送的响应报文,如果接收到,则确定所述终端为真实终端,如果在计时器的计时时长内未接收到所述终端发送的响应报文,则确定所述终端为虚假终端。
另外,由于清洗设备可以向所述终端发送的探测报文可以是SYN报文、ACK报文和ICMP echo报文中的一个或多个,如果清洗设备向所述终端分别发送SYN报文、ACK报文和ICMP echo报文,则在发送每个报文时,都启动计时器开始计时,针对发送的每个报文,保存对应的计时时长,所述SYN报文、ACK报文和ICMP echo报文对应的计时时长可以相同也可以不同。在发送SYN报文、ACK报文和ICMP echo报文之后,分别判断在对应的计时时长内是否接收到对应的响应报文,如果是,则确定所述终端为真实终端,否则确定所述终端为虚假终端。
实施例4:
在上述各实施例的基础上,在本发明实施例中,所述对所述UDP报文进行限速处理包括:
获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;
判断所述总流量是否大于所述服务器能接受的最大的理论流量;
如果是,确定对所述UDP报文限速处理后的转发速率为0;
如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
在上述各实施例中,清洗设备基于TCP协议或ICMP协议向所述终端发送探测报文,如果未接收到所述终端发送的响应报文,则确定所述终端为虚假终端,在所述限制列表中添加所述终端的信息。但是,当网络不稳定时,有可能出现清洗设备发送的探测报文丢失,或者所述终端发送的响应报文丢失的情况,在这种情况下,即使所述终端是真实终端,清洗设备也不会接收到所述终端发送的响应报文,这时清洗设备就会将真实终端误判为虚假终端,并将真实终端的信息添加到限制列表中。因此,限制列表中的终端不一定全部都是虚假终端。
因此,在对UDP报文进行限速处理时,如果信任列表中的终端发送的总流量达到服务器能接受的最大的理论流量,此时如果将所述UDP报文转发至服务器,则会对服务器的正常运行产生影响,即对服务器产生攻击,因此确定对所述UDP报文限速处理后的转发速率为0,即不将所述UDP报文转发到服务器。但是,如果服务器能接受的最大的理论流量能够满足信任列表中的终端发送的总流量,则根据所述服务器能接受的最大的理论流量和所述信任列表中的终端发送的总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文,这样在保证对UDP Flood攻击进行防护的同时,使得所述UDP报文也能够以较低的速率转发到服务器,这样,如果发送所述UDP报文的终端是被误判为虚假终端的真实终端,则可以保证所述终端发送的UDP报文传输到服务器。如果发送所述UDP报文的终端是虚假终端,由于所述终端发送UDP报文的速率是根据所述服务器能接受的最大的理论流量和所述信任列表中的终端发送的总流量的差值确定的,因此所述UDP报文也不会使服务器崩溃。其中,可以采用常用的限速处理方法,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,在此不再进行赘述。
具体的,清洗设备可以获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量,判断所述总流量是否大于所述服务器能接受的最大的理论流量,如果是,即信任列表中的终端在第二设定时间长度内发送的UDP报文的总流量,已经达到了所述服务器能接受的最大的理论流量,这时,如果将所述UDP报文转发至服务器,则会对服务器的正常运行产生影响,即对服务器产生攻击,因此确定对所述UDP报文限速处理后的转发速率为0,即不将所述UDP报文转发到服务器。如果所述总流量小于所述服务器能接受的最大的理论流量,即信任列表中的终端在第二设定时间长度内发送的UDP报文的总流量未达到了所述服务器能接受的最大的理论流量,这时,可以根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
图3为本发明实施例提供的UDP Flood攻击的防护装置结构示意图,所述装置包括:
接收判断模块31,用于接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;
第一处理模块32,用于如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;
第二处理模块33,用于基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。
所述装置还包括:
获取判断模块34,用于获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,触发接收判断模块31。
所述第二处理模块33,具体用于判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
所述第一处理模块32和第二处理模块33,具体用于获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;判断所述总流量是否大于所述服务器能接受的最大的理论流量;如果是,确定对所述UDP报文限速处理后的转发速率为0;如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
本发明实施例提供了一种UDP Flood攻击的防护方法及装置,应用于清洗设备,所述方法包括:接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理。由于在本发明实施例中,清洗设备中保存有信任列表和限制列表,因此可以针对记录在不同列表中的终端发送的UDP报文进行相应处理,如果终端未记录在上述任一列表中,基于TCP协议或ICMP协议向所述终端发送探测报文,从而确定是否将该终端记录在上述列表中,并对该UDP报文进行相应处理,因此能有效封杀限制列表中的终端发送的UDP报文,保护信任列表中的终端发送的UDP报文,使得当终端规模很大时,也能达到有效防护的目的。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种用户数据报协议泛滥UDP Flood攻击的防护方法,其特征在于,应用于清洗设备,所述方法包括:
接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;
如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;
否则,基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理;
其中,所述探测报文包括基于TCP协议的请求SYN报文、确认ACK报文和基于ICMP协议的回声请求ICMP echo报文;
向所述终端发送SYN报文、ACK报文和ICMP echo报文,如果接收到SYN报文对应的响应报文、ACK报文对应的响应报文和ICMP echo报文对应的响应报文,则在所述信任列表中添加所述终端的信息,否则在所述限制列表中添加所述终端的信息;
所述对所述UDP报文进行限速处理包括:
获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;
判断所述总流量是否大于所述服务器能接受的最大的理论流量;
如果是,确定对所述UDP报文限速处理后的转发速率为0;
如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
2.如权利要求1所述的方法,其特征在于,所述判断自身保存的信任列表或限制列表中是否记录有所述终端的信息之前,所述方法还包括:
获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,进行后续步骤。
3.如权利要求1所述的方法,其特征在于,所述判断是否接收到所述终端发送的响应报文包括:
判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
4.一种用户数据报协议泛滥UDP Flood攻击的防护装置,其特征在于,所述装置包括:
接收判断模块,用于接收终端发送的UDP报文,判断自身保存的信任列表或限制列表中是否记录有所述终端的信息;
第一处理模块,用于如果信任列表中记录有所述终端的信息,将所述UDP报文转发至服务器,如果限制列表中记录有所述终端的信息,对所述UDP报文进行限速处理;
第二处理模块,用于基于传输控制协议TCP或控制报文协议ICMP向所述终端发送探测报文,判断是否接收到所述终端发送的响应报文,如果是,在所述信任列表中添加所述终端的信息,并将所述UDP报文转发至服务器,如果否,在所述限制列表中添加所述终端的信息,并对所述UDP报文进行限速处理;
其中,所述探测报文包括基于TCP协议的请求SYN报文、确认ACK报文和基于ICMP协议的回声请求ICMP echo报文;
向所述终端发送SYN报文、ACK报文和ICMP echo报文,如果接收到SYN报文对应的响应报文、ACK报文对应的响应报文和ICMP echo报文对应的响应报文,则在所述信任列表中添加所述终端的信息,否则在所述限制列表中添加所述终端的信息;
所述第一处理模块和第二处理模块,具体用于获取所述信任列表中的每个终端,在第二设定时间长度内发送的UDP报文的总流量;判断所述总流量是否大于所述服务器能接受的最大的理论流量;如果是,确定对所述UDP报文限速处理后的转发速率为0;如果否,根据所述服务器能接受的最大的理论流量和所述总流量的差值,确定限速后的所述UDP报文的转发速率,并根据限速后的转发速率转发所述UDP报文。
5.如权利要求4所述的装置,其特征在于,所述装置还包括:
获取判断模块,用于获取所述服务器的当前流量,判断所述当前流量是否大于预设的流量阈值,如果是,确定存在UDP Flood攻击,触发接收判断模块。
6.如权利要求4所述的装置,其特征在于,所述第二处理模块,具体用于判断在第一设定时间长度内是否接收到所述终端发送的响应报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710566958.0A CN107454065B (zh) | 2017-07-12 | 2017-07-12 | 一种UDP Flood攻击的防护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710566958.0A CN107454065B (zh) | 2017-07-12 | 2017-07-12 | 一种UDP Flood攻击的防护方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107454065A CN107454065A (zh) | 2017-12-08 |
CN107454065B true CN107454065B (zh) | 2020-07-10 |
Family
ID=60488964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710566958.0A Active CN107454065B (zh) | 2017-07-12 | 2017-07-12 | 一种UDP Flood攻击的防护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107454065B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108769284B (zh) * | 2018-05-04 | 2022-02-18 | 网宿科技股份有限公司 | 一种域名解析方法、服务器及系统 |
CN110784464B (zh) * | 2019-10-24 | 2022-09-09 | 新华三信息安全技术有限公司 | 泛洪攻击的客户端验证方法、装置、系统及电子设备 |
CN112104553B (zh) * | 2020-08-27 | 2022-07-12 | 新华三技术有限公司 | 一种选择路径的方法、装置、路由设备和存储介质 |
CN112055028B (zh) * | 2020-09-11 | 2023-08-08 | 北京知道创宇信息技术股份有限公司 | 网络攻击防御方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101321055A (zh) * | 2008-06-28 | 2008-12-10 | 华为技术有限公司 | 一种攻击防范方法和装置 |
CN104660572A (zh) * | 2013-11-25 | 2015-05-27 | 上海益尚信息科技有限公司 | 新型接入网络中拒绝服务攻击的模式数据的控制方法及装置 |
CN105827646A (zh) * | 2016-05-17 | 2016-08-03 | 浙江宇视科技有限公司 | Syn攻击防护的方法及装置 |
CN106506527A (zh) * | 2016-12-05 | 2017-03-15 | 国云科技股份有限公司 | 一种防御udp无连接洪水攻击的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100370757C (zh) * | 2004-07-09 | 2008-02-20 | 国际商业机器公司 | 识别网络内分布式拒绝服务攻击和防御攻击的方法和系统 |
CN102404334A (zh) * | 2011-12-07 | 2012-04-04 | 山石网科通信技术(北京)有限公司 | 拒绝服务攻击防护方法及装置 |
-
2017
- 2017-07-12 CN CN201710566958.0A patent/CN107454065B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101321055A (zh) * | 2008-06-28 | 2008-12-10 | 华为技术有限公司 | 一种攻击防范方法和装置 |
CN104660572A (zh) * | 2013-11-25 | 2015-05-27 | 上海益尚信息科技有限公司 | 新型接入网络中拒绝服务攻击的模式数据的控制方法及装置 |
CN105827646A (zh) * | 2016-05-17 | 2016-08-03 | 浙江宇视科技有限公司 | Syn攻击防护的方法及装置 |
CN106506527A (zh) * | 2016-12-05 | 2017-03-15 | 国云科技股份有限公司 | 一种防御udp无连接洪水攻击的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107454065A (zh) | 2017-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110445770B (zh) | 网络攻击源定位及防护方法、电子设备及计算机存储介质 | |
CN107395632B (zh) | SYN Flood防护方法、装置、清洗设备及介质 | |
CN107454065B (zh) | 一种UDP Flood攻击的防护方法及装置 | |
EP3481029A1 (en) | Internet defense method and authentication server | |
US7301899B2 (en) | Prevention of bandwidth congestion in a denial of service or other internet-based attack | |
US9288218B2 (en) | Securing an accessible computer system | |
US20100095351A1 (en) | Method, device for identifying service flows and method, system for protecting against deny of service attack | |
CN110784464B (zh) | 泛洪攻击的客户端验证方法、装置、系统及电子设备 | |
CN107547503B (zh) | 一种会话表项处理方法、装置、防火墙设备及存储介质 | |
US7404210B2 (en) | Method and apparatus for defending against distributed denial of service attacks on TCP servers by TCP stateless hogs | |
CN109040140B (zh) | 一种慢速攻击检测方法及装置 | |
CN112187793B (zh) | 一种ACK Flood攻击的防护方法及装置 | |
CN111970308A (zh) | 一种防护SYN Flood攻击的方法、装置及设备 | |
CN108737344B (zh) | 一种网络攻击防护方法和装置 | |
CN110191104A (zh) | 一种安全防护的方法及装置 | |
US20140215599A1 (en) | Method and system for defeating denial of service attacks | |
CN108418844B (zh) | 一种应用层攻击的防护方法及攻击防护端 | |
WO2019096104A1 (zh) | 攻击防范 | |
CN107547561B (zh) | 一种进行ddos攻击防护处理的方法及装置 | |
JP6932375B2 (ja) | 通信装置 | |
CN108471427B (zh) | 一种防御攻击的方法及装置 | |
CN101795277A (zh) | 一种单向流检测模式下的流量检测方法和设备 | |
CN114697088B (zh) | 一种确定网络攻击的方法、装置及电子设备 | |
CN105592055A (zh) | 一种用于tcp syn flood的防攻击方法和装置 | |
CN108449280B (zh) | 一种避免tcp报文乒乓的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Patentee after: NSFOCUS Technologies Group Co.,Ltd. Patentee after: NSFOCUS TECHNOLOGIES Inc. Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Patentee before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd. Patentee before: NSFOCUS TECHNOLOGIES Inc. |
|
CP01 | Change in the name or title of a patent holder |