CN101505219B - 一种防御拒绝服务攻击的方法和防护装置 - Google Patents
一种防御拒绝服务攻击的方法和防护装置 Download PDFInfo
- Publication number
- CN101505219B CN101505219B CN2009100804469A CN200910080446A CN101505219B CN 101505219 B CN101505219 B CN 101505219B CN 2009100804469 A CN2009100804469 A CN 2009100804469A CN 200910080446 A CN200910080446 A CN 200910080446A CN 101505219 B CN101505219 B CN 101505219B
- Authority
- CN
- China
- Prior art keywords
- value
- message
- designated port
- field
- feature field
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种防御拒绝服务攻击的方法,包括:获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段;之后,对于所述指定端口所接收的报文,根据该报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文,本发明还公开了一种防御拒绝服务攻击的装置。本发明的技术方案可以有效地识别大流量的攻击报文,达到防御拒绝服务攻击的目的。
Description
技术领域
本发明涉及网络通信技术领域,尤指一种防御拒绝服务攻击的方法和防护装置。
背景技术
分布式拒绝服务(DDoS,Distributed Denial of Service)攻击是多个攻击者(主机)对同一个被攻击者(可包括主机、服务器和网络设备)发起攻击,使被攻击者不能正常工作的攻击方式。DDoS的典型特征为通过“多个打一个”的方式对被攻击者发起攻击,通过消耗被攻击者的带宽、CPU处理能力和内存占用等方式达到拒绝服务攻击的目的,而且尤以带宽消耗方式最为常见,也最为有效。
图1为现有的DDoS攻击体系结构示意图。如图1所示,攻击者通过控制成千上万的傀儡主机发送攻击报文,这种情况下,由于被攻击者的入口带宽有限,攻击报文通过挤占带宽使正常的业务流量无法访问被攻击者,从而达到拒绝服务攻击的目的。目前,最常见的DDoS攻击方式有:ICMPFLOOD、UDP FLODD、TCP SYN FLOOD、TCP ACK FLOOD等。
由于DDoS攻击的分布式、大流量特点,如果防御点靠近被攻击者部署,则由于带宽已经被挤占,被攻击者的CPU处理能力已经耗尽,往往不能达到防范效果。因此,一般采用异常流量检测加清洗模式的专用设备在靠近被攻击者的城域网侧部署。
图2是异常流量检测加清洗模式的DDoS攻击防御的原理示意图。如图2所示,正常流量在到达客户端之前被镜像到流量清洗中心;然后由异常流量检测平台根据预定的攻击防范方法进行异常流量检测,当发现攻击时通知业务管理平台;业务管理平台通知异常流量清洗平台开启攻击防御;异常流量清洗平台牵引流量,并对其中的异常流量进行清洗后回注流量;异常流量清洗平台在攻击停止时通知业务管理平台。
目前的攻击防范方法主要包括基于已知缺陷攻击防范和基于固定特征统计的防范。
基于已知缺陷攻击防范是针对已经知道的缺陷,分析其特点进行防范。例如,在ICMP FLOOD中,攻击者经常采用的方式是通过大报文进行ping攻击,以最大限度地消耗带宽,但在真实环境中这种长度超大的ICMP报文数量是非常少的,可以通过限制这种长度超大的ICMP报文的数量进行防范。又例如,在TCP SYN FLOOD中,攻击者经常发送源IP不断变化的SYN报文,一方面消耗带宽,另一方面利用一些操作系统处理单个SYN报文时也会建立状态机的缺陷,消耗被攻击者的内存资源。当前操作系统一般都弥补了这个缺陷,但仍然免不了受带宽消耗的攻击,因此针对这一攻击,通常由防护设备代替被攻击者进行应答,验证通过后的SYN报文才能通过。
基于固定特征统计的防范为:对于被保护的主机或服务器,其历史上的流量分布能够较清晰刻画其提供的服务,例如,对于一个HTTP服务器来说,访问量基本上比较平稳,如果突然某一天的流量比历史最大流量高了几倍甚至十几倍,则判定发生攻击了,可以根据历史流量进行阈值丢弃处理。例如,防护设备学习到达被保护主机或服务器TCP 80端口的流量,根据历史流量形成合适的阈值,当攻击发生时根据阈值进行报文丢弃处理。
但是,虽然基于已知缺陷攻击的防范方法对于已知的缺陷攻击可以进行精确防范,但是需要针对每种缺陷攻击专门进行处理,缺陷攻击类型越多,处理代价越高,如果攻击流量很大,针对每种缺陷攻击进行扫描是不现实的,因此,这种方案只作为辅助手段。而基于固定特征统计的防范方法只要知道被防护的服务类型和特征就可以根据历史数据得到合适的门限,也能对非法流量进行一定程度的甄别,实现简单,处理效率高,是目前DDoS防护设备采用的主要手段,但缺点是目前的服务器种类比较多,其中游戏服务器占了很大比例,每种游戏服务器的协议特征都不相同,很难根据服务类型和特征对这一类的服务器进行很好的防护。
发明内容
本发明提供了一种防御拒绝服务攻击的方法,该方法能够有效识别大流量的攻击报文。
本发明还提供了一种防御拒绝服务攻击的防护装置,该装置能够有效识别大流量的攻击报文。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明公开了一种防御拒绝服务攻击的方法,该方法包括:
获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段;
之后,对于所述指定端口所接收的报文,根据该报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文。
本发明还公开了一种防御拒绝服务攻击的防护装置,该防护装置包括:特征字段获取模块和防护模块,其中,
特征字段获取模块,用于获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段,并将该特征字段和该特征字段的取值统计分布通知给防护模块;
防护模块,用于根据所述指定端口所接收报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文。
由上述技术方案可见,本发明这种获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段;之后,根据所述指定端口所接收报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文的技术方案可以有效地识别大流量的攻击报文,达到防御拒绝服务攻击的目的。
附图说明
图1为现有的DDoS攻击体系结构示意图;
图2是异常流量检测加清洗模式的DDoS攻击防御的原理示意图;
图3是本发明实施例一种防御拒绝服务攻击的方法的流程图;
图4是本发明实施例一种防御拒绝服务攻击的防护装置的组成结构框图。
具体实施方式
图3是本发明实施例一种防御拒绝服务攻击的方法的流程图。如图3所示,该方法包括:
步骤301,获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段。
在本步骤中,所述预设的阀值可以是用户直接指定的,也可以是根据所述指定字段的取值的历史统计分获得的经验值。
步骤302,之后,对于所述指定端口所接收的报文,根据该报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文。
对于图3所示的方案,理想的情况是在完全没有攻击发生的情况下执行步骤301所述的特征字段的提取,之后执行根据所提取的特征字段进行攻击检测的步骤302。当然实际的情况并非是理想的,本发明实施例至少可以根据以下两种手段选定进行特征字段提取的时段:
在本发明的一个实施例中,根据主机或服务器的指定端口的报文流量来界定当前时段是否适于进行特征字段的提取。这是由于图3所示的方案是针对拒绝服务攻击的,而拒绝服务攻击的特点是发送大量的攻击报文,因此当所述指定端口的报文流量没有超过第二预设阀值(为了与步骤301中的判断概率值的预设阀值区分,这里称之为第二预设阀值)时,认为流量平稳,此时提取的特征字段是可信的,即执行步骤301,反之在所述指定端口的报文流量超过所述预设阀值时,认为发生拒绝服务器攻击,不再进行特征提取,而是执行步骤302所述的根据已提取的特征字段进行攻击检测的步骤。
在本发明的另一个实施例中,根据被保护设备是否向防护设备上报攻击或投诉来界定当前时段是否适于进行特征字段的提取。例如,在持续的一段时间内都没有收到被防护设备上报攻击或投诉,则认为此时提取特征字段是可信的,执行步骤301,反之,当收到被防护设备上报的攻击或投诉时,不再提取特征字段,而是根据已提取的特征字段进行攻击检测。
在实际当中,由于协议的版本更新等原因主机或服务器的指定端口所接收报文的特征字段的位置或特征字段的取值会发生变化。对此,在本发明实施例中可以周期性地执行步骤301所述的特征字段的提取工作,更新旧的特征字段,例如,一周、一个月或一年更新一次特征字段等。当然只要所提取的特征字段可信,特征字段的提取工作可以持续的进行,这样指定接口所接收报文的特征字段变化时可以及时进行更新。
图3所示的方案可以有效地识别大流量的攻击报文,达到防御拒绝服务攻击的目的。
在实际当中,图3所示的防御拒绝服务攻击的方案由防护装置执行。执行图3所示方案的这种防护装置可以以如图2所示的旁路方式配置于网络中,此时由这种防护装置充当图2中的清洗中心的角色;执行图3所示方案的这种防护装置也可以直接插入到被保护链路中,由这种防护装置对报文进行检测清洗后再转发给被保护设备。
为使本发明的目的、技术方案及优点更加清楚明白,下面以对客户端/服务器(C/S)模式中的服务器进行防护为例对本发明进一步详细说明。
在基于C/S模式的架构中所采用的协议都是有固定的格式的,报文中一般都包括协议版本号、命令字和保留字等相对内容固定的字段。其中,协议版本号一般总集中在几个值,不可能频繁变化;一个协议所支持的命令字个数也是有限的,不可能频繁变化;协议中也可能有些固定值不变(全0或全1)的字段,如协议的保留字段等。且这些内容固定的字段一般集中在报文载荷的前部。因此,根据图3所示的方案,可以通过统计报文的前几个字节的取值统计分布,如果某个字节的取值比较集中,即该字节取某个值的概率远远大于取其它值的概率,则可以把该字节当作一个特征字段。
本发明的技术方案针对C/S模式中的服务器特点进行防护,解决服务器防护中所面临的服务器种类繁多,协议特征各不相同的情况,主要对协议报文特征进行统计分析,然后自动进行特征提取,从而达到识别非法流量和合法的业务流量的目的。下面通过两个实施例进行进一步的说明。
实施例一:统计被保护主机或服务器的某个服务端口(这里称为端口A)的业务流(包括协议号、源IP、源端口、目的IP和目的端口在内的五元组信息相同的报文的集合)的首报文的前16个字节的每个字节的取值统计分布,如果这16个字节中的某个字节取同一数值的概率大于预设值,如80%,则将该字节当作一个特征字。
例如,共统计了端口A的1237条HTTP业务流的首报文的前16个字节的取值统计分布,这里将阈值设置为90%,发现其前5个字节取同一个值的概率超过90%,如下:
Byte[i]--->>>
count/total:value
Byte[0]--->>>
1173/1237:71 29/1237:80 18/1237:60 2/1237:0 2/1237:112 2/1237:115
2/1237:202 1/1237:55 1/1237:61 1/1237:70 1/1237:82 1/1237:101 1/1237:156
1/1237:209 1/1237:254 1/1237:255
说明:1173/1237:71表示共有1237条流,其中1173条流的第0个字节(Byte[0])的数值为71,71为“G”的ASCII码。29/1237:80表示共有1237条流,其中29条流的第0个字节的数值为80,以此类推。
Byte[1]--->>>
1172/1237:69 29/1237:79 20/1237:0 3/1237:105 1/1237:13 1/1237:37 1/1237:53
1/1237:61 1/1237:83 1/1237:98 1/1237:104 1/1237:114 1/1237:117 1/1237:142
1/1237:168 1/1237:169 1/1237:170
说明:1172/1237:71表示共有1237条流,其中1172条流的第1个字节(Byte[1])的数值为69,69为“E”的ASCII码。
Byte[2]--->>>
1172/1237:84 29/1237:83 21/1237:0 3/1237:110 2/1237:99 2/1237:250 1/1237:50
1/1237:52 1/1237:102 1/1237:105 1/1237:129 1/1237:155 1/1237:172 1/1237:217
说明:1172/1237:71表示共有1237条流,其中1172条流的第2个字节(Byte[2])的数值为84,84为“T”的ASCII码。
Byte[3]--->>>
1172/1237:32 29/1237:84 19/1237:0 3/1237:97 2/1237:105 1/1237:24 1/1237:29
1/1237:48 1/1237:49 1/1237:58 1/1237:75 1/1237:87 1/1237:90 1/1237:99
1/1237:103 1/1237:158 1/1237:160
说明:1172/1237:71表示共有1237条流,其中1172条流的第3个字节(Byte[3])的数值为32,32为“空格”的ASCII码。
Byte[4]--->>>
1173/1237:47 30/1237:32 9/1237:48 4/1237:1 4/1237:13 2/1237:0 2/1237:95
2/1237:124 1/1237:59 1/1237:72 1/1237:97 1/1237:99 1/1237:102 1/1237:115
1/1237:133 1/1237:151 1/1237:158 1/1237:160 1/1237:173
说明:1173/1237:71表示共有1237条流,其中1173条流的第4个字节(Byte[4])的数值为47,47为“/”的ASCII码。
可以看出前5个字节分别取“GET/”的概率均超过了90%,因此可以将前5个字节作为特征字段,统计其历史统计分布,当有攻击发生时就可以以此特征字段过滤掉可疑的报文,具体可以为:如果端口A所接收报文的前5个字节取值为特征字段取值统计分布中概率高于预设值90%的“GET/”,则确定该报文为业务报文;如果端口A所接收报文的前5个字节的取值是在特征字段取值统计分布中未曾出现过的值,则确定该报文为攻击报文,或者当该类报文的数量很小(小于一个预设门限),则也可以放过这类报文;如果所述端口A所接收报文的特征字段取某一特定值的概率高出特征字段取值统计分布中该特定值的概率一个预设的数量级,则确认所述指定端口接收的特征字段为所述特定值的报文为攻击报文,例如,当端口A所接收报文的第一个字节取值为80的概率比29/1237高5倍以上,则可以认为端口A接收的第一个字节为80的报文为攻击报文,可以将此类报文进行丢弃处理或限制其传输带宽。
实施例二:统计被保护主机或服务器的某个服务端口的业务流(包括协议号、目的IP地址和目的端口相同的报文集合)的所有报文的前16个字节的每个字节的取值统计分布,如果这16个字节中的某个字节取同一数值的概率大于预设值,则将该字节当作一个特征字。
例如,统计目的端口为服务器端口8000的报文的前16字节的取值统计分布,发现其前4个字节的取值比较集中,如下所示:
FlowNum=329,PacketNum=1502说明:共统计的329条业务流,报文总数为1502。
Byte[i]--->>>
count/total:value
Byte[0]--->>>
1202/1502:2 169/1502:3 49/1502:56 36/1502:254 21/1502:0 21/1502:4 4/1502:1
Byte[3]--->>>
1181/1502:0 99/1502:1 19/1502:8 19/1502:18 9/1502:17 5/1502:128 5/1502:240
4/1502:83 4/1502:116 4/1502:136 3/1502:34 3/1502:51 3/1502:68 3/1502:158
3/1502:164 3/1502:188 2/1502:15 2/1502:21 2/1502:22 2/1502:23 2/1502:52
2/1502:53 2/1502:62 2/1502:63 2/1502:65 2/1502:77 2/1502:78 2/1502:80 2/1502:81
2/1502:86 2/1502:88 2/1502:89 2/1502:93 2/1502:108 2/1502:117 2/1502:130
2/1502:141 2/1502:143 2/1502:154 2/1502:159 2/1502:160 2/1502:178 2/1502:192
2/1502:201 2/1502:236 2/1502:238 2/1502:251 1/1502:6 1/1502:7 1/1502:9
1/1502:10 1/1502:13 1/1502:19 1/1502:25 1/1502:29 1/1502:30 1/1502:31 1/1502:33
1/1502:37 1/1502:38 1/1502:39 1/1502:41 1/1502:48 1/1502:50 1/1502:55 1/1502:61
1/1502:71 1/1502:76 1/1502:79 1/1502:84 1/1502:85 1/1502:87 1/1502:96 1/1502:97
1/1502:98 1/1502:103 1/1502:104 1/1502:105 1/1502:106 1/1502:107 1/1502:110
1/1502:111 1/1502:114 1/1502:115 1/1502:119 1/1502:123 1/1502:124 1/1502:134
1/1502:147 1/1502:148 1/1502:153 1/1502:162 1/1502:163 1/1502:165 1/1502:170
1/1502:171 1/1502:176 1/1502:186 1/1502:189 1/1502:190 1/1502:191 1/1502:193
1/1502:194 1/1502:204 1/1502:205 1/1502:207 1/1502:210 1/1502:212 1/1502:213
1/1502:217 1/1502:218 1/1502:230 1/1502:233 1/1502:234 1/1502:235 1/1502:237
1/1502:242 1/1502:244 1/1502:253 1/1502:255
Byte[1]--->>>
992/1502:18 136/1502:17 132/1502:0 36/1502:6 30/1502:4 26/1502:1 20/1502:24
20/1502:58 18/1502:5 10/1502:67 9/1502:49 8/1502:2 8/1502:48 8/1502:50
7/1502:51 6/1502:20 6/1502:34 5/1502:68 5/1502:97 4/1502:82 4/1502:90
3/1502:113 2/1502:66 2/1502:70 2/1502:80 1/1502:22 1/1502:54 1/1502:69
Byte[2]--->>>
992/1502:3 167/1502:0 136/1502:63 16/1502:95 11/1502:111 7/1502:168 5/1502:45
5/1502:77 5/1502:117 5/1502:241 4/1502:1 4/1502:17 4/1502:122 4/1502:174
4/1502:228 3/1502:12 3/1502:54 3/1502:75 3/1502:79 3/1502:105 3/1502:173
3/1502:191 3/1502:192 3/1502:199 3/1502:240 3/1502:252 3/1502:253 3/1502:255
2/1502:9 2/1502:37 2/1502:41 2/1502:46 2/1502:47 2/1502:61 2/1502:76 2/1502:89
2/1502:110 2/1502:113 2/1502:126 2/1502:130 2/1502:142 2/1502:146 2/1502:148
2/1502:152 2/1502:185 2/1502:194 2/1502:203 2/1502:218 2/1502:229 2/1502:248
2/1502:251 1/1502:2 1/1502:8 1/1502:13 1/1502:16 1/1502:22 1/1502:30 1/1502:49
1/1502:55 1/1502:59 1/1502:68 1/1502:70 1/1502:85 1/1502:86 1/1502:88 1/1502:90
1/1502:97 1/1502:99 1/1502:101 1/1502:107 1/1502:116 1/1502:137 1/1502:139
1/1502:147 1/1502:154 1/1502:156 1/1502:163 1/1502:166 1/1502:170 1/1502:171
1/1502:175 1/1502:181 1/1502:187 1/1502:189 1/1502:190 1/1502:193 1/1502:200
1/1502:202 1/1502:213 1/1502:216 1/1502:217 1/1502:224 1/1502:225 1/1502:230
1/1502:233 1/1502:235 1/1502:238 1/1502:239 1/1502:245
这里,对各字节的取值集中程度进行了排序,可以看出前4个字节可以作为特征字段,统计其历史统计分布,当有攻击发生时就可以以此4个字节的取值联合特征分布过滤掉可疑的报文。在本实施例中,特征字节除了取某一个值的概率最大外,取其他值的概率也相对不是很小。例如,第0字节取2的概率最大,为1201/1502,约等于80%,而第0字节取3的概率为次大,为169/1502,约等于11.3%,这也是一个不小的数值。因此在实际当中,对端口8000所接收的第0字节为3的报文可以不完全定位为攻击报文,在本发明实施例中,当端口8000所接收报文的第0个字节取值为3的概率不超过11.3%时,将第0字节取值为3的报文视为正常的业务报文,而当端口8000所接收报文的第0个字节取值为3的概率超过11.3%几倍(根据实际情况设置)时,则认为发生了攻击,对端口8000所接收报文的第0个字节取值为3的报文进行丢弃处理或限制其带宽。其他特征字节以此类推。
在上述实施例中,统计了业务流的首报文或所有报文的指定字段的取值统计分布,在本发明的其他实施例中还可以对指定服务端口所接收的业务流的报文进行随机采样,统计所采样的报文的指定字段的取值统计分布,提取特征字段。这样即可以达到提取特征字段的目的,相对于统计业务流所有报文的指定字段的取值统计分布而言,还大大提高了效率。
目前常见的DDoS攻击方式是以内容固定或随机的方式发送大量报文,攻击某个IP地址开放的服务端口,一般攻击者只知道开放的服务端口是什么,并不知道该服务端口报文的具体格式,且由于目前服务器的种类很多,攻击者很难一一知晓服务端口报文的具体的格式,因此本发明的这种通过报文特征自动学习并根据所学习的报文特征区分业务报文或攻击报文的方案可以有效的阻断这一类的DDoS攻击。
以特征字段为两个字节为例,两个字节所能表示的数值有65535个,假设这两个特征字段的特征值集中在6个值上,则对于随机内容的攻击,只有有万分之一左右的攻击报文能够通过。可见特征字段越长,能够通过的攻击报文越少。
另外还需说明的是,一般较老的应用协议是基于比特的,主要是考虑当时的Internet带宽很小,基于比特可以节省带宽;而近期开发的协议都是基于字节的。在上述实施例中均以基于字节的协议为例进行了说明,在一些较老版本的Internet协议中可以采用按比特进行特征学习,做法与前述实施例相同,只是特征字段不是以字节为单位,而是以比特为单位,这里不再详细说明。
图4是本发明实施例一种防御拒绝服务攻击的防护装置的组成结构框图。如图4所示,该防护装置包括:特征字段获取模块401和防护模块402,其中:
特征字段获取模块401,用于获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段,并将该特征字段和该特征字段的取值统计分布通知给防护模块402;
防护模块402,用于根据所述指定端口所接收报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文。
在图4中,特征字段获取模块401,用于获取主机或服务器的指定端口所接收的业务流的首报文的指定字段的取值统计分布;或者,用于获取主机或服务器的指定端口所接收的业务流的所有报文的指定字段的取值统计分布;或者,用于对所述指定端口所接收的业务流的报文进行随机采样,获取所采样的报文的指定字段的取值统计分布。
在图4中,特征字段获取模块401,获取指定端口所接收报文的指定数量字节/比特中的每个字节/比特的取值统计分布,指定数量字节/比特中的任一个字节/比特取同一个值的概率高于预设阀值时,将该字节/比特作为特征字段。所述防护模块402,用于有两个以上字节/比特作为特征字段时,根据所述指定端口所接收报文的作为特征字段的两个字节/比特的取值以及这两个字节/比特的取值联合特征分布,确定该报文为攻击报文或业务报文。
在图4中,防护模块402,用于在所述指定端口所接收报文的特征字段的取值为特征字段取值统计分布中概率高于预设值的值时,确定该报文为业务报文;用于在所述指定端口所接收报文的特征字段的取值是在特征字段取值统计分布中未曾出现过的值时,确定该报文为攻击报文;用于在所述指定端口所接收报文的特征字段取某一特定值的概率高出特征字段取值统计分布中该特定值的概率一个预设的数量级时,确认所述指定端口接收的特征字段为所述特定值的报文为攻击报文。
在图4中,防护模块402,进一步用于丢弃攻击报文或限制攻击报文的传输带宽;
在图4中,特征字段获取模块401,用于在所述指定端口的报文流量低于第二预设阀值时,获取指定端口所接收报文的指定字段的取值统计分布;或者,用于在自身所属的防护装置没有收到被防护设备上报的攻击或投诉时,获取指定端口所接收报文的指定字段的取值统计分布。
图4所示的防护装置即可以以的旁路方式配置于网络中,也可以直接插入到被保护链路中,由防护装置对报文进行检测清洗后再转发给被保护设备。
综上所述,本发明这种获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段,根据所述指定端口所接收报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文的技术方案可以有效地识别大流量的攻击报文,达到防御拒绝服务攻击的目的。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种防御拒绝服务攻击的方法,其特征在于,该方法包括:
获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段;
之后,对于所述指定端口所接收的报文,根据该报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文,具体包括:
如果所述指定端口所接收报文的特征字段的取值为特征字段取值统计分布中概率高于预设值的值,则确定该报文为业务报文;
如果所述指定端口所接收报文的特征字段取某一特定值的概率高出特征字段取值统计分布中该特定值的概率一个预设的数量级,则确认所述指定端口接收的特征字段为所述特定值的报文为攻击报文。
2.如权利要求1所述的方法,其特征在于,所述获取指定端口所接收报文的指定字段的取值统计分布包括:
获取所述指定端口所接收的业务流的首报文的指定字段的取值统计分布;或者
获取所述指定端口所接收的业务流的所有报文的指定字段的取值统计分布;或者
对所述指定端口所接收的业务流的报文进行随机采样,获取所采样的报文的指定字段的取值统计分布。
3.如权利要求1所述的方法,其特征在于,
所述获取指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段包括:获取指定端口所接收报文的指定数量字节/比特中的每个字节/比特的取值统计分布,指定数量字节/比特中的任一个字节/比特取同一个值的概率高于预设阀值时,将该字节/比特作为特征字段;
所述根据指定端口所接收报文的特征字段的取值以及特征字段的取值统计分布,确定该报文为攻击报文或业务报文包括:当有两个以上字节/比特作为特征字段时,根据所述指定端口所接收报文的作为特征字段的两个字节/比特的取值以及这两个字节/比特的取值联合特征分布,确定该报文为攻击报文或业务报文。
4.如权利要求1所述的方法,其特征在于,
当所述指定端口的报文流量低于第二预设阀值时,执行所述获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布的步骤;
或者,当没有收到被防护设备上报的攻击或投诉时,执行所述获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布的步骤。
5.一种防御拒绝服务攻击的防护装置,其特征在于,该防护装置包括:特征字段获取模块和防护模块,其中,
特征字段获取模块,用于获取主机或服务器的指定端口所接收报文的指定字段的取值统计分布,如果该指定字段取同一个值的概率高于预设阀值,则将该指定字段作为特征字段,并将该特征字段和该特征字段的取值统计分布通知给防护模块;
防护模块,用于在所述指定端口所接收报文的特征字段的取值为特征字段取值统计分布中概率高于预设值的值时,确定该报文为业务报文;用于在所述指定端口所接收报文的特征字段取某一特定值的概率高出特征字段取值统计分布中该特定值的概率一个预设的数量级时,确认所述指定端口接收的特征字段为所述特定值的报文为攻击报文。
6.如权利要求5所述的防护装置,其特征在于,
所述特征字段获取模块,用于获取主机或服务器的指定端口所接收的业务流的首报文的指定字段的取值统计分布;或者,用于获取主机或服务器的指定端口所接收的业务流的所有报文的指定字段的取值统计分布;或者,用于对所述指定端口所接收的业务流的报文进行随机采样,获取所采样的报文的指定字段的取值统计分布。
7.如权利要求5所述的防护装置,其特征在于,
所述特征字段获取模块,获取指定端口所接收报文的指定数量字节/比特中的每个字节/比特的取值统计分布,指定数量字节/比特中的任一个字节/比特取同一个值的概率高于预设阀值时,将该字节/比特作为特征字段;
所述防护模块,用于有两个以上字节/比特作为特征字段时,根据所述指定端口所接收报文的作为特征字段的两个字节/比特的取值以及这两个字节/比特的取值联合特征分布,确定该报文为攻击报文或业务报文。
8.如权利要求5所述的装置,其特征在于,
所述特征字段获取模块,用于在所述指定端口的报文流量低于第二预设阀值时,获取指定端口所接收报文的指定字段的取值统计分布;或者,用于在自身所属的防护装置没有收到被防护设备上报的攻击或投诉时,获取指定端口所接收报文的指定字段的取值统计分布。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100804469A CN101505219B (zh) | 2009-03-18 | 2009-03-18 | 一种防御拒绝服务攻击的方法和防护装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100804469A CN101505219B (zh) | 2009-03-18 | 2009-03-18 | 一种防御拒绝服务攻击的方法和防护装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101505219A CN101505219A (zh) | 2009-08-12 |
CN101505219B true CN101505219B (zh) | 2011-03-16 |
Family
ID=40977304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100804469A Expired - Fee Related CN101505219B (zh) | 2009-03-18 | 2009-03-18 | 一种防御拒绝服务攻击的方法和防护装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101505219B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103856470B (zh) * | 2012-12-06 | 2018-06-19 | 腾讯科技(深圳)有限公司 | 分布式拒绝服务攻击检测方法及检测装置 |
CN103051612B (zh) * | 2012-12-13 | 2015-09-30 | 华为技术有限公司 | 防火墙及防止网络攻击方法 |
CN104038409A (zh) * | 2014-05-30 | 2014-09-10 | 汉柏科技有限公司 | 一种邮件安全管理方法和装置 |
CN105282152B (zh) * | 2015-09-28 | 2018-08-28 | 广东睿江云计算股份有限公司 | 一种异常流量检测的方法 |
CN105262760A (zh) * | 2015-10-30 | 2016-01-20 | 北京奇虎科技有限公司 | 一种防止恶意访问登录/注册接口的行为的方法和装置 |
CN106789849B (zh) * | 2015-11-24 | 2020-12-04 | 阿里巴巴集团控股有限公司 | Cc攻击识别方法、节点及系统 |
CN105610851B (zh) * | 2016-01-14 | 2018-11-09 | 北京乐动卓越科技有限公司 | 防御分布式拒绝服务攻击的方法及系统 |
CN107241304B (zh) * | 2016-03-29 | 2021-02-02 | 阿里巴巴集团控股有限公司 | 一种DDoS攻击的检测方法及装置 |
CN106656967B (zh) * | 2016-10-09 | 2019-11-19 | 广东睿江云计算股份有限公司 | 一种udp flood攻击的清洗方法及系统 |
CN106533829B (zh) * | 2016-11-04 | 2019-04-30 | 东南大学 | 一种基于比特熵的dns流量识别方法 |
CN106850349B (zh) * | 2017-02-08 | 2020-01-03 | 杭州迪普科技股份有限公司 | 一种特征信息的提取方法及装置 |
CN116264510A (zh) * | 2021-12-13 | 2023-06-16 | 中兴通讯股份有限公司 | 拒绝服务攻击防御方法及装置、可读存储介质 |
CN114866347B (zh) * | 2022-07-06 | 2022-09-30 | 浙江御安信息技术有限公司 | 一种基于人工智能进行DDoS攻击识别的网络安全预警方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1764126A (zh) * | 2005-11-11 | 2006-04-26 | 上海交通大学 | 突发性异常网络流量的检测与监控方法 |
CN1997017A (zh) * | 2006-12-20 | 2007-07-11 | 浙江大学 | 一种网络蠕虫检测方法及其系统 |
WO2008002590A2 (en) * | 2006-06-29 | 2008-01-03 | Sipera Systems, Inc. | System, method and apparatus for protecting a network or device against high volume attacks |
-
2009
- 2009-03-18 CN CN2009100804469A patent/CN101505219B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1764126A (zh) * | 2005-11-11 | 2006-04-26 | 上海交通大学 | 突发性异常网络流量的检测与监控方法 |
WO2008002590A2 (en) * | 2006-06-29 | 2008-01-03 | Sipera Systems, Inc. | System, method and apparatus for protecting a network or device against high volume attacks |
CN1997017A (zh) * | 2006-12-20 | 2007-07-11 | 浙江大学 | 一种网络蠕虫检测方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101505219A (zh) | 2009-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101505219B (zh) | 一种防御拒绝服务攻击的方法和防护装置 | |
CN108040057B (zh) | 适于保障网络安全、网络通信质量的sdn系统的工作方法 | |
CN100579003C (zh) | 一种采用网流技术防御tcp攻击的方法和系统 | |
CN104137513B (zh) | 攻击防范方法和设备 | |
US8881283B2 (en) | System and method of malware sample collection on mobile networks | |
CN101465855B (zh) | 一种同步泛洪攻击的过滤方法及系统 | |
RU2480937C2 (ru) | Система и способ уменьшения ложных срабатываний при определении сетевой атаки | |
WO2006063052A1 (en) | Method and apparatus for network immunization | |
US20020032774A1 (en) | Thwarting source address spoofing-based denial of service attacks | |
US20020032880A1 (en) | Monitoring network traffic denial of service attacks | |
CN106357685A (zh) | 一种防御分布式拒绝服务攻击的方法及装置 | |
WO2002021278A1 (en) | Coordinated thwarting of denial of service attacks | |
WO2002021296A1 (en) | Statistics collection for network traffic | |
WO2002021297A1 (en) | Architecture to thwart denial of service attacks | |
CN106657126B (zh) | 检测及防御DDoS攻击的装置及方法 | |
CN105282169A (zh) | 基于SDN控制器阈值的DDoS攻击预警方法及其系统 | |
CN109561051A (zh) | 内容分发网络安全检测方法及系统 | |
CN105007175A (zh) | 一种基于openflow的流深度关联分析方法及系统 | |
TW201124876A (en) | System and method for guarding against dispersive blocking attacks | |
CN104104669A (zh) | 适用于因特网数据中心领域的抗DDoS攻击防护系统 | |
CN101662425B (zh) | 一种检测访问控制列表生效的方法和装置 | |
CN104348749B (zh) | 一种流量控制方法、装置及系统 | |
CN101635720A (zh) | 一种未知流量过滤方法和一种带宽管理设备 | |
CN101883054A (zh) | 组播报文处理方法、装置和设备 | |
KR20110067871A (ko) | Ip 망에서 oam 패킷을 이용한 트래픽 감시 및 제어를 위한 네트워크 액세스 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110316 Termination date: 20200318 |