CN102291378A - 一种防御DDoS攻击的方法和设备 - Google Patents

一种防御DDoS攻击的方法和设备 Download PDF

Info

Publication number
CN102291378A
CN102291378A CN2010102114441A CN201010211444A CN102291378A CN 102291378 A CN102291378 A CN 102291378A CN 2010102114441 A CN2010102114441 A CN 2010102114441A CN 201010211444 A CN201010211444 A CN 201010211444A CN 102291378 A CN102291378 A CN 102291378A
Authority
CN
China
Prior art keywords
message
length
authentication
response message
authentication response
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.)
Granted
Application number
CN2010102114441A
Other languages
English (en)
Other versions
CN102291378B (zh
Inventor
陈光辉
孙志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201010211444.1A priority Critical patent/CN102291378B/zh
Publication of CN102291378A publication Critical patent/CN102291378A/zh
Application granted granted Critical
Publication of CN102291378B publication Critical patent/CN102291378B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提出一种防御分布式拒绝服务(DDoS)攻击的方法和设备,其中方法包括:计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP确认号(ACK)的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则服务器丢弃所述客户端的连接请求。本发明能够区分出攻击设备和正常设备,从而防御对E-mail服务器的DDoS攻击。

Description

一种防御DDoS攻击的方法和设备
技术领域
本发明涉及分布式拒绝服务(DDoS,Distributed Deny of Service)技术领域,尤其涉及一种防御DDoS攻击的方法和设备。
背景技术
随着Internet的发展,网络应用越来越多,由于互联网自身设计的开放性,各种网络应用都受到安全威胁。其中,DDoS攻击就是一种常见的攻击服务器的手段,攻击者控制大量傀儡机(此时傀儡机作为攻击设备)向被攻击的服务器发起大量的连接,占用了服务器的资源,导致服务器不能很好的服务于正常设备。
在这种背景下,产生了流量清洗设备,专门用于识别客户端是攻击设备还是正常设备,并将攻击流量过滤掉,使之不能达到服务器,以减轻对服务器的影响。然而,为了部署上的方便,现在的流量清洗设备一般采用单向引流的方式,这就为识别攻击增加了一些困难。
目前,常用的电子邮件协议有简单邮件传输协议(SMTP,Simple MessageTransfer Protocol)和邮局协议3(POP3,Post Office Protocol 3)。电子邮件(E-mail)服务器可能受到SMTP DDoS攻击或POP3DDoS攻击,现有技术中,主要采用防御SYN Flood的方法来防御SMTP DDoS攻击或POP3 DDoS攻击。防御SYN Flood的方法可以区分出非法的TCP连接,并通过SMTP/POP3状态机区分出非法的SMTP/POP3连接;然而,这种SYN Flood的方法只是对不完整的SMTP/POP3客户端(即不能完成TCP三次握手、或者不能完成合法的SMTP/POP3状态机的客户端)有效,而现有的DDoS攻击一般采用控制大量傀儡机的方式,这种方式都有完整的SMTP/POP3客户端对服务器进行攻击。因此,对于通过控制大量傀儡机对服务器进行的SMTP DDoS攻击或POP3
DDoS攻击,现有的防御方式已失去防御作用,无法完整地区分出攻击设备(即傀儡机)和正常设备。
发明内容
本发明提供了一种防御DDoS攻击的方法,用于区分出攻击设备和正常设备,从而防御对E-mail服务器的DDoS攻击。
本发明还提供了一种防御DDoS攻击的设备,用于区分出攻击设备和正常设备,从而防御对E-mail服务器的DDoS攻击。
本发明的技术方案是这样实现的:
一种防御DDoS攻击的方法,包括:
计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP ACK的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;
将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则服务器丢弃所述客户端的连接请求。
一种防御DDoS攻击的设备,所述设备与服务器连接,设备包括:计算模块、保存模块、识别模块和处理模块;其中,
所述计算模块,用于计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP ACK的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;
保存模块,用于预先保存认证成功报文的长度或认证失败报文的长度;
识别模块,用于将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则通知所述处理模块;
所述处理模块,用于当收到认证回应报文是认证失败报文的通知时,指示服务器丢弃所述客户端的连接请求。
可见,本发明提出的防御DDoS攻击的方法和设备,通过TCP ACK之差识别出服务器对客户端认证成功还是失败,如果认证失败,则说明该客户端很有可能是攻击设备,则丢弃该客户端的连接请求,从而防御对E-mail服务器的DDoS攻击。
附图说明
图1为本发明防御DDoS攻击的方法流程图;
图2为现有技术中一种典型的SMTP认证过程;
图3为本发明防御DDoS攻击的设备结构示意图。
具体实施方式
在现有的Internet中,出于安全考虑,绝大部分E-mail服务器都要求对客户端进行认证,例如,要求客户端输入正确的用户名和密码。而攻击者控制的傀儡机不可能掌握大量的真实用户来进行攻击,所以,服务器对傀儡机(即攻击设备)的认证是失败的。因此,通过认证结果就能够区分出客户端是攻击设备还是正常设备,从而防御攻击设备的DDoS攻击。并且,对于同一个服务器,其向客户端发送的认证成功报文和认证失败报文的长度是固定的,通过计算认证回应报文的长度,并将该认证回应报文的长度与预先保存的认证成功报文或认证失败报文的长度进行比较,就能够区分出该认证回应报文是认证成功报文还是认证失败报文。攻击者也可能在其控制的傀儡机中使用少量的真实用户,这种情况可以通过限制每个用户发起请求的频度来限制。
基于上述思路,本发明提出一种防御DDoS攻击的方法,如图1为本发明防御DDoS攻击的方法流程图,该方法包括:
步骤101:计算服务器向客户端发送的认证回应报文的长度;
步骤102:将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则服务器丢弃所述客户端的连接请求。
上述步骤101可以包括:
分别获取所述认证回应报文的前一条报文和后一条报文中的TCP确认号(ACK)的值,计算所述后一条报文中的TCPACK的值与所述前一条报文中的TCP ACK的值的差,该差值即为所述认证回应报文的长度。
上述步骤102中的识别过程可以包括:
将认证回应报文的长度与预先保存的认证失败报文的长度进行比较,当认证回应报文的长度与认证失败报文的长度相同时,识别出该认证回应报文是认证失败报文;
或者,将认证回应报文的长度与预先保存的认证成功报文的长度进行比较,当认证回应报文的长度与认证成功报文的长度相同时,识别出该认证回应报文不是认证失败报文。
这里,服务器可以通过手工配置或者学习的方式得到认证成功报文和认证失败报文的长度。正常情况下,服务器发送的认证成功报文多于认证失败报文,利用这一规律,可以通过服务器发送的认证回应报文长度的分布情况,得到认证成功报文和认证失败报文的长度。例如,假定在一定时间内统计出服务器向外发送的认证回应报文有1000条,其中长度为100字节的有980条,长度为60字节的有20条,根据这些报文长度的分布情况,可以得出认证成功报文的长度为100字节,认证失败报文的长度为60字节。
上述步骤102之后可以进一步包括:
当服务器丢弃该客户端的连接请求的次数超过预先设定的门限时,可以将该客户端的IP地址加入黑名单中,在预先设定的时间段内不再处理来自该客户端的报文。
以下在具体的SMTP认证过程中,详细介绍本发明提出的防御DDoS攻击的方法。
如图2为现有技术中一种典型的SMTP认证过程,包括:
步骤201:客户端向服务器发送报文1,即AUTH LOGIN报文,请求服务器对其进行认证。
步骤202:服务器向客户端发送报文2,要求客户端输入用户名。
步骤203:客户端向服务器发送报文3,携带该客户端的用户名。
步骤204:服务器向客户端发送报文4,要求客户端输入密码。
步骤205:客户端向服务器发送报文5,携带该客户端的密码。
步骤206:服务器向客户端发送报文6,即认证回应报文,该认证回应报文可能是认证成功报文、也可能是认证失败报文。
步骤207:客户端向服务器发送报文7,继续其他请求。
在背景技术部分已经提过,现有的流量清洗设备一般采用单向引流的方式进行过滤,也就是说,现有的流量清洗设备只能识别出报文1、3、5、7这些客户端发送至服务器的报文,而无法识别报文2、4、6这些服务器发送至客户端的报文,所以也就无法识别出服务器对客户端的认证结果是认证成功还是认证失败。
而本发明提出的防御DDoS的方法,可以通过认证回应报文(即报文6)的后一条报文(即报文7)的TCK ACK和前一条报文(即报文5)的TCK ACK的差计算出报文6的长度。
之后,将报文6的长度与预先报文的认证失败报文或认证成功报文的长度进行比较,识别出报文6是否为认证失败报文,如果是,则说明该客户端有可能是攻击设备,服务器则丢弃该客户端的连接请求,并可以在多次丢弃其连接请求后将该客户端放入黑名单,有效防御该客户端的攻击。
除了AUTH LOGIN认证方式,还有其他的认证方式,如AUTHCRAM-MD5,AUTH PLAIN等,都可以通过本发明提出的方式识别出攻击设备,从而有效防御攻击设备的攻击。
对于POP3DDoS攻击,本发明可以采用同样的方法进行防御。
本发明还提出一种防御DDoS攻击的设备,所述设备与服务器连接,如图3为本发明防御DDoS攻击的设备结构示意图,该设备包括:计算模块301、保存模块302、识别模块303和处理模块304;其中,
所述计算模块301,用于计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP ACK的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;
保存模块302,用于预先保存认证成功报文的长度或认证失败报文的长度;
识别模块303,用于将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则通知所述处理模块304;
所述处理模块304,用于当收到认证回应报文是认证失败报文的通知时,指示服务器丢弃所述客户端的连接请求。
上述保存模块302可以预先保存认证失败报文的长度;
上述识别模块303识别认证回应报文是否为认证失败报文的方式可以为:将认证回应报文的长度与所述认证失败报文的长度进行比较,当认证回应报文的长度与认证失败报文的长度相同时,识别出该认证回应报文是认证失败报文;
或者,
所述保存模块302可以预先保存认证成功报文的长度;
上述识别模块303识别认证回应报文是否为认证失败报文的方式可以为:将认证回应报文的长度与所述认证成功报文的长度进行比较,当认证回应报文的长度与认证成功报文的长度相同时,识别出该认证回应报文不是认证失败报文。
上述设备可以进一步包括:
锁定模块305,用于当服务器丢弃客户端的连接请求的次数超过预先设定的门限时,指示所述服务器在预先设定的时间段内不再处理来自所述客户端的报文。
综上可见,本发明提出的防御DDoS攻击的方法和设备,能够在单向流量清洗环境中通过TCP ACK之差识别出服务器对客户端认证成功还是失败,当认证失败时,则丢弃该客户端的连接请求,从而防御攻击设备对E-mail服务器的DDoS攻击。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (6)

1.一种防御分布式拒绝服务DDoS攻击的方法,其特征在于,所述方法包括:
计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP确认号ACK的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;
将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则服务器丢弃所述客户端的连接请求。
2.根据权利要求1所述的方法,其特征在于,所述识别认证回应报文是否为认证失败报文的方式为:
将认证回应报文的长度与预先保存的认证失败报文的长度进行比较,当认证回应报文的长度与认证失败报文的长度相同时,识别出该认证回应报文是认证失败报文;
或者,将认证回应报文的长度与预先保存的认证成功报文的长度进行比较,当认证回应报文的长度与认证成功报文的长度相同时,识别出该认证回应报文不是认证失败报文。
3.根据权利要求1或2所述的方法,其特征在于,所述服务器丢弃该客户端的连接请求之后,进一步包括:
当服务器丢弃该客户端的连接请求的次数超过预先设定的门限时,在预先设定的时间段内不再处理来自所述客户端的报文。
4.一种防御DDoS攻击的设备,所述设备与服务器连接,其特征在于,所述设备包括:计算模块、保存模块、识别模块和处理模块;其中,
所述计算模块,用于计算服务器向客户端发送的认证回应报文的长度,所述计算的方式为:分别获取所述认证回应报文的前一条报文和后一条报文中的TCP ACK的值,计算所述后一条报文中的TCP ACK的值与所述前一条报文中的TCP ACK的值的差,该差值为所述认证回应报文的长度;
保存模块,用于预先保存认证成功报文的长度或认证失败报文的长度;
识别模块,用于将所述认证回应报文的长度与预先保存的认证成功报文的长度或认证失败报文的长度进行比较,识别该认证回应报文是否为认证失败报文,如果是,则通知所述处理模块;
所述处理模块,用于当收到认证回应报文是认证失败报文的通知时,指示服务器丢弃所述客户端的连接请求。
5.根据权利要求4所述的设备,其特征在于,所述保存模块预先保存认证失败报文的长度;
所述识别模块识别认证回应报文是否为认证失败报文的方式为:将认证回应报文的长度与所述认证失败报文的长度进行比较,当认证回应报文的长度与认证失败报文的长度相同时,识别出该认证回应报文是认证失败报文;
或者,
所述保存模块预先保存认证成功报文的长度;
所述识别模块识别认证回应报文是否为认证失败报文的方式为:将认证回应报文的长度与所述认证成功报文的长度进行比较,当认证回应报文的长度与认证成功报文的长度相同时,识别出该认证回应报文不是认证失败报文。
6.根据权利要求4或5所述的设备,其特征在于,所述设备进一步包括:
锁定模块,用于当服务器丢弃客户端的连接请求的次数超过预先设定的门限时,指示所述服务器在预先设定的时间段内不再处理来自所述客户端的报文。
CN201010211444.1A 2010-06-18 2010-06-18 一种防御DDoS攻击的方法和设备 Expired - Fee Related CN102291378B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010211444.1A CN102291378B (zh) 2010-06-18 2010-06-18 一种防御DDoS攻击的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010211444.1A CN102291378B (zh) 2010-06-18 2010-06-18 一种防御DDoS攻击的方法和设备

Publications (2)

Publication Number Publication Date
CN102291378A true CN102291378A (zh) 2011-12-21
CN102291378B CN102291378B (zh) 2014-07-02

Family

ID=45337491

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010211444.1A Expired - Fee Related CN102291378B (zh) 2010-06-18 2010-06-18 一种防御DDoS攻击的方法和设备

Country Status (1)

Country Link
CN (1) CN102291378B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187359A (zh) * 2014-06-17 2015-12-23 阿里巴巴集团控股有限公司 检测攻击客户端的方法和装置
CN106657126A (zh) * 2017-01-05 2017-05-10 盛科网络(苏州)有限公司 检测及防御DDoS攻击的装置及方法
CN107547505A (zh) * 2017-06-21 2018-01-05 新华三技术有限公司 一种报文处理方法及装置
CN111949568A (zh) * 2020-07-31 2020-11-17 新华三半导体技术有限公司 一种报文处理方法、装置及网络芯片

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101047697A (zh) * 2006-03-29 2007-10-03 华为技术有限公司 针对web服务器进行DDOS攻击的防御方法和设备
CN101087187A (zh) * 2007-05-22 2007-12-12 网御神州科技(北京)有限公司 一种基于用户的安全访问控制的方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101047697A (zh) * 2006-03-29 2007-10-03 华为技术有限公司 针对web服务器进行DDOS攻击的防御方法和设备
CN101087187A (zh) * 2007-05-22 2007-12-12 网御神州科技(北京)有限公司 一种基于用户的安全访问控制的方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187359A (zh) * 2014-06-17 2015-12-23 阿里巴巴集团控股有限公司 检测攻击客户端的方法和装置
CN105187359B (zh) * 2014-06-17 2018-06-08 阿里巴巴集团控股有限公司 检测攻击客户端的方法和装置
CN106657126A (zh) * 2017-01-05 2017-05-10 盛科网络(苏州)有限公司 检测及防御DDoS攻击的装置及方法
CN106657126B (zh) * 2017-01-05 2019-11-08 盛科网络(苏州)有限公司 检测及防御DDoS攻击的装置及方法
CN107547505A (zh) * 2017-06-21 2018-01-05 新华三技术有限公司 一种报文处理方法及装置
CN107547505B (zh) * 2017-06-21 2020-04-03 新华三技术有限公司 一种报文处理方法及装置
CN111949568A (zh) * 2020-07-31 2020-11-17 新华三半导体技术有限公司 一种报文处理方法、装置及网络芯片
CN111949568B (zh) * 2020-07-31 2023-07-21 新华三半导体技术有限公司 一种报文处理方法、装置及网络芯片

Also Published As

Publication number Publication date
CN102291378B (zh) 2014-07-02

Similar Documents

Publication Publication Date Title
US8370937B2 (en) Handling of DDoS attacks from NAT or proxy devices
CA2565409C (en) Preventing network reset denial of service attacks using embedded authentication information
EP2346205A1 (en) A method and device for preventing network attack
EP2343851A1 (en) Network authentication method, corresponding system and client device
US7404210B2 (en) Method and apparatus for defending against distributed denial of service attacks on TCP servers by TCP stateless hogs
US20120227088A1 (en) Method for authenticating communication traffic, communication system and protective apparatus
EP1482709A2 (en) Queuing methods for mitigation of packet spoofing
Gilad et al. Off-Path Attacking the Web.
JP2004507978A (ja) ネットワークノードに対するサービス拒絶アタックに対抗するシステム及び方法
Gilad et al. Off-path TCP injection attacks
CN102291378B (zh) 一种防御DDoS攻击的方法和设备
WO2016177131A1 (zh) 防止dos攻击方法、装置和系统
US9641485B1 (en) System and method for out-of-band network firewall
CN106487790B (zh) 一种ack flood攻击的清洗方法及系统
US8973143B2 (en) Method and system for defeating denial of service attacks
US8180835B1 (en) System and method for protecting mail servers from mail flood attacks
CN108667829B (zh) 一种网络攻击的防护方法、装置及存储介质
Luckie et al. Resilience of deployed TCP to blind attacks
EP1154610A2 (en) Methods and system for defeating TCP Syn flooding attacks
Kumarasamy et al. An active defense mechanism for TCP SYN flooding attacks
EP3379808B1 (en) Device and method for forwarding connections
KR20130022089A (ko) 서비스 거부 공격에 대한 tcp연결 해제 방법 및 장치
EP2109281A1 (en) Method and system for server-load and bandwidth dependent mitigation of distributed denial of service attacks
CN108449280B (zh) 一种避免tcp报文乒乓的方法及装置
US10079857B2 (en) Method of slowing down a communication in a network

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: 20140702

Termination date: 20200618