CN103475657B - 防syn泛洪攻击的处理方法和装置 - Google Patents

防syn泛洪攻击的处理方法和装置 Download PDF

Info

Publication number
CN103475657B
CN103475657B CN201310410560.XA CN201310410560A CN103475657B CN 103475657 B CN103475657 B CN 103475657B CN 201310410560 A CN201310410560 A CN 201310410560A CN 103475657 B CN103475657 B CN 103475657B
Authority
CN
China
Prior art keywords
data packet
syn
address
syn data
preset
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
Application number
CN201310410560.XA
Other languages
English (en)
Other versions
CN103475657A (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.)
Legendsec Technology Beijing Co ltd
Secworld Information Technology Beijing Co Ltd
Original Assignee
Netlegend Technology (beijing) Co Ltd
Secworld Information Technology Beijing 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 Netlegend Technology (beijing) Co Ltd, Secworld Information Technology Beijing Co Ltd filed Critical Netlegend Technology (beijing) Co Ltd
Priority to CN201310410560.XA priority Critical patent/CN103475657B/zh
Publication of CN103475657A publication Critical patent/CN103475657A/zh
Application granted granted Critical
Publication of CN103475657B publication Critical patent/CN103475657B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A30/00Adapting or protecting infrastructure or their operation

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种防SYN泛洪攻击的处理方法和装置。其中,防SYN泛洪攻击的处理方法包括:监测客户端与服务器之间的多个SYN数据包;判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及在判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包。通过本发明,解决了现有技术中防泛洪攻击的处理方式容易导致系统性能降低的问题,进而达到了提高系统性能、提升系统网速的效果。

Description

防SYN泛洪攻击的处理方法和装置
技术领域
本发明涉及安全防护领域,具体而言,涉及一种防SYN泛洪攻击的处理方法和装置。
背景技术
传统的防泛洪攻击(SYN flood)方法一般是通过SYN(Synchronize sequencenumber)代理的方式,SYN是传输控制协议/网间协议(Transmission Control Protocol/Internet Protocol,简称TCP/IP)建立连接时使用的握手信号。但是SYN代理方式会导致系统实际性能较低,在实际使用中表现就是大幅度的性能损耗。
针对相关技术中防泛洪攻击的处理方式容易导致系统性能降低的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种防SYN泛洪攻击的处理方法和装置,以解决现有技术中防泛洪攻击的处理方式容易导致系统性能降低的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种防SYN泛洪攻击的处理方法,应用于客户端与服务器之间的通信连接,处理方法包括:监测客户端与服务器之间的多个SYN数据包;判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及在判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包。
进一步地,通过以下方式判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包:比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,第一SYN数据包为多个SYN数据包中的任一数据包,第一预设值为服务器的目的IP地址阈值的第一倍数;在比较出第一SYN数据包中目的IP地址的数量大于第一预设值的情况下,确定第一SYN数据包为多个SYN数据包中超过预设上限值的数据包,否则,确定第一SYN数据包为多个SYN数据包中未超过预设上限值的数据包;在比较出第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于第一预设值的情况下,比较第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,第二预设值为服务器的目的IP地址阈值的第二倍数,第二倍数小于第一倍数;以及在比较出第一SYN数据包中源IP地址的数量大于第二预设值的情况下,确定第一SYN数据包为多个SYN数据包中存在超过预设上限值的数据包。
进一步地,在监测来自客户端的多个SYN数据包之后,并且在判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包之前,处理方法还包括:判断多个SYN数据包中是否存在安全数据包;以及在判断出多个SYN数据包中存在安全数据包的情况下,跳过对安全数据包的SYN代理,其中,判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包包括:判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,多个SYN数据包由安全数据包和非安全数据包组成。
进一步地,通过以下方式判断多个SYN数据包中是否存在安全数据包:判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,预设IP地址库为经过SYN代理,并且与服务器建立连接的客户端的源IP地址的集合,第二SYN数据包为多个SYN数据包中的任一数据包;以及在判断出第二SYN数据包中源IP地址为预设IP地址库中的IP地址的情况下,确定第二SYN数据包为安全数据包,否则,确定第二SYN数据包为非安全数据包。
进一步地,在丢弃多个SYN数据包中超过预设上限值的数据包之后,处理方法还包括:查找状态连接表中与第三SYN数据包中TCP序列号对应的差值,其中,状态连接表中存储有与不同TCP序列号对应的差值,第三SYN数据包为多个SYN数据包中的任一数据包;根据查找到的差值修改对应第三SYN数据包的报文的SYN序号和ACK序号;以及按照修改后的SYN序号和ACK序号转发第三SYN数据包。
为了实现上述目的,根据本发明的另一方面,提供了一种防SYN泛洪攻击的处理装置,该处理装置用于执行本发明上述内容所提供的任意一种防SYN泛洪攻击的处理方法。
为了实现上述目的,根据本发明的另一方面,提供了一种防SYN泛洪攻击的处理装置,处理装置应用于客户端与服务器之间的通信连接,处理装置包括:监测单元,用于监测客户端与服务器之间的多个SYN数据包;第一判断单元,用于判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及第一处理单元,用于在第一判断单元判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包。
进一步地,第一判断单元包括:第一比较模块,用于比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,第一SYN数据包为多个SYN数据包中的任一数据包,第一预设值为服务器的目的IP地址阈值的第一倍数;第一确定模块,用于在第一比较模块比较出第一SYN数据包中目的IP地址的数量大于第一预设值的情况下,确定第一SYN数据包为多个SYN数据包中超过预设上限值的数据包,否则,确定第一SYN数据包为多个SYN数据包中未超过预设上限值的数据包;第二比较模块,用于在第一比较模块比较出第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于第一预设值的情况下,比较第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,第二预设值为服务器的目的IP地址阈值的第二倍数,第二倍数小于第一倍数;以及第二确定模块,用于在第二比较模块比较出第一SYN数据包中源IP地址的数量大于第二预设值的情况下,确定第一SYN数据包为多个SYN数据包中存在超过预设上限值的数据包。
进一步地,处理装置还包括:第二判断单元,用于判断多个SYN数据包中是否存在安全数据包;以及第二处理单元,用于在第二判断单元判断出多个SYN数据包中存在安全数据包的情况下,跳过对安全数据包的SYN代理,其中,第一判断单元用于判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,多个SYN数据包由安全数据包和非安全数据包组成。
进一步地,第二判断单元包括:判断模块,用于判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,预设IP地址库为经过SYN代理,并且与服务器建立连接的客户端的源IP地址的集合,第二SYN数据包为多个SYN数据包中的任一数据包;以及第三确定模块,用于在判断模块判断出第二SYN数据包中源IP地址为预设IP地址库中的IP地址的情况下,确定第二SYN数据包为安全数据包,否则,确定第二SYN数据包为非安全数据包。
进一步地,处理装置还包括:查找单元,用于查找状态连接表中与第三SYN数据包中TCP序列号对应的差值,其中,状态连接表中存储有与不同TCP序列号对应的差值,第三SYN数据包为多个SYN数据包中的任一数据包;修改单元,用于根据查找到的差值修改对应第三SYN数据包的报文的SYN序号和ACK序号;以及转发单元,用于按照修改后的SYN序号和ACK序号转发第三SYN数据包。
本发明采用监测客户端与服务器之间的多个SYN数据包;判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及在判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包。通过预先设置SYN代理的上限值,在SYN数据包的数量超过预设上限值的情况下,将超过预设上限值部分的数据包丢弃,实现了避免出现SYN代理每单位时间内处理的SYN数据包数量上不封顶的弊端,进而避免了数据包大量传输造成的内存资源的消耗,通过对数据传输量进行限制,释放了系统内存,解决了现有技术中防泛洪攻击的处理方式容易导致系统性能降低的问题,进而达到了提高系统性能、提升系统网速的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的防SYN泛洪攻击的处理装置的示意图;以及
图2是根据本发明实施例的防SYN泛洪攻击的处理方法的流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
本发明实施例提供了一种防SYN泛洪攻击的处理装置,该处理装置主要应用于客户端与服务器之间的通信连接,以下对本发明实施例所提供的防SYN泛洪攻击的处理装置进行具体介绍:
图1是根据本发明实施例的防SYN泛洪攻击的处理装置的示意图,如图1所示,该实施例的防SYN泛洪攻击的处理装置主要包括监测单元10、第一判断单元20和第一处理单元30,其中:
监测单元10用于监测客户端与服务器之间的多个SYN数据包,具体地,SYN数据包是客户端与服务器建立连接过程中所使用的握手信号,主要是指建立传输控制协议/网间协议(Transmission Control Protocol/Internet Protocol,简称TCP/IP)连接过程中使用的信号。
第一判断单元20用于判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包,具体地,可以设置SYN代理预设上限值为满足一下条件的预设值:大于系统配置的SYN泛洪阈值。
第一处理单元30用于在第一判断单元判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包,即,将超过预设上限值部分的SYN数据包直接丢弃,后续不再对其进行SYN代理。
本发明实施例的防SYN泛洪攻击的处理装置,通过预先设置SYN代理的上限值,在SYN数据包的数量超过预设上限值的情况下,将超过预设上限值部分的数据包丢弃,实现了避免出现SYN代理每单位时间内处理的SYN数据包数量上不封顶的弊端,进而避免了数据包大量传输造成的内存资源的消耗,通过对数据传输量进行限制,释放了系统内存,解决了现有技术中防泛洪攻击的处理方式容易导致系统性能降低的问题,进而达到了提高系统性能、提升系统网速的效果。
进一步地,第一判断单元主要包括第一比较模块、第一确定模块、第二比较模块和第二确定模块,以第一SYN数据包为例来说明第一判断单元判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包的具体原理,其中,第一SYN数据包为多个SYN数据包中的任一数据包,判断第一SYN数据包是否为多个SYN数据包中超过预设上限值的数据包的具体原理为:
第一比较模块比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,第一预设值为服务器的目的IP地址阈值的第一倍数,可以将第一预设值设置为服务器的目的IP地址阈值的2N倍,在本发明实施例中,可以将N设置为2,即将第一预设值设置为服务器的目的IP地址阈值的4倍,还可以根据系统的实际需要将第一预设值设置为目的IP地址阈值的其它倍数。
第一确定模块在第一比较模块比较出第一SYN数据包中目的IP地址的数量大于第一预设值的情况下,确定第一SYN数据包为多个SYN数据包中超过预设上限值的数据包,否则,确定第一SYN数据包为多个SYN数据包中未超过预设上限值的数据包。
第二比较模块在第一比较模块比较出第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于第一预设值的情况下,比较第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,第二预设值为服务器的目的IP地址阈值的第二倍数,第二倍数小于第一倍数,在本发明实施例中,可以将第二预设值设置为服务器的目的IP地址阈值的1/4倍,还可以根据系统的实际需要将第一预设值设置为目的IP地址阈值的其它倍数。
第二确定模块在第二比较模块比较出第一SYN数据包中源IP地址的数量大于第二预设值的情况下,确定第一SYN数据包为多个SYN数据包中存在超过预设上限值的数据包。
优选地,本发明实施例的处理装置还包括第二判断单元和第二处理单元,其中:
第二判断单元用于判断多个SYN数据包中是否存在安全数据包,具体地,第二判断单元主要包括判断模块和第三确定模块,以第二SYN数据包为例来说明第二判断单元判断多个SYN数据包中是否存在安全数据包的具体原理,其中,第二SYN数据包为多个SYN数据包中的任一数据包,判断第二SYN数据包是否为安全数据包的具体原理为:
判断模块判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,预设IP地址库为经过SYN代理,并且与服务器建立连接的客户端的源IP地址的集合,即,预设IP地址库为SYN代理处理过的安全IP的集合,在本发明实施例中,可以将SYN代理处理过的安全IP记录白名单(trust)标志,对应具有白名单标志IP的数据包,后续就不用做SYN代理了。
第三确定模块在判断模块判断出第二SYN数据包中源IP地址为预设IP地址库中的IP地址的情况下,确定第二SYN数据包为安全数据包,否则,确定第二SYN数据包为非安全数据包。
第二处理单元用于在第二判断单元判断出多个SYN数据包中存在安全数据包的情况下,跳过对安全数据包的SYN代理。
其中,对于具有第二判断单元和第二处理单元的防SYN泛洪攻击的处理装置而言,该防SYN泛洪攻击的处理装置中的第一判断单元用于判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,多个SYN数据包由安全数据包和非安全数据包组成。
通过在防SYN泛洪攻击的处理装置设置第二判断单元和第二处理单元,实现了对SYN代理处理过的安全IP进行筛选,以直接跳过利用安全IP建立连接的SYN数据包的处理,进一步减少了数据包的传输数量,以更多的释放了系统内存,进一步提高了系统性能和系统网速。
进一步优选地,本发明实施例的防SYN泛洪攻击的处理装置还包括查找单元、修改单元和转发单元,以第三SYN数据包为例来说明该优选实施例的防SYN泛洪攻击的处理装置进行SYN数据包处理的具体原理,其中,第三SYN数据包为多个SYN数据包中的任一数据包,通过查找单元、修改单元和转发单元进行防SYN泛洪攻击的具体原理为:
查找单元查找状态连接表中与第三SYN数据包中TCP(传输控制协议TransmissionControl Protocol,简称TCP)序列号对应的差值,其中,状态连接表中存储有与不同TCP序列号对应的差值。
修改单元根据查找到的差值修改对应第三SYN数据包的报文的SYN序号和ACK(ACKnowledge Character)序号,ACK是TCP数据包首部中的确认标志,表示对已接收到的TCP报文进行确认。。
转发单元按照修改后的SYN序号和ACK序号转发第三SYN数据包。
通过设置状态连接表来存储与不同TCP序列号对应的差值,并通过序列号查找的方式查找与SYN数据包中TCP序列号对应的差值,进而基于查找的差值修改SYN序号和ACK序号,实现了在代理客户端和服务器之间的连接过程中,无需占用系统资源来计算SYN序号和ACK序号,进一步缩小了系统内存的占用,从而使系统性能和系统网速进一步得到提高。
本发明实施例还提供了一种防SYN泛洪攻击的处理方法,该防SYN泛洪攻击的处理方法主要应用于客户端与服务器之间的通信连接,以下对本发明实施例所提供的防SYN泛洪攻击的处理方法进行具体介绍:
图2是根据本发明实施例的防SYN泛洪攻击的处理方法的流程图,如图2所示,该方法包括如下的步骤S202至步骤S206:
S202:监测客户端与服务器之间的多个SYN数据包,具体地,SYN数据包是客户端与服务器建立连接过程中所使用的握手信号,主要是指建立传输控制协议/网间协议(Transmission Control Protocol/Internet Protocol,简称TCP/IP)连接过程中使用的信号。
S204:判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包,具体地,可以设置SYN代理预设上限值为满足一下条件的预设值:大于系统配置的SYN泛洪阈值。
S206:在判断出多个SYN数据包中存在超过预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包,即,将超过预设上限值部分的SYN数据包直接丢弃,后续不再对其进行SYN代理。
本发明实施例的防SYN泛洪攻击的处理方法,通过预先设置SYN代理的上限值,在SYN数据包的数量超过预设上限值的情况下,将超过预设上限值部分的数据包丢弃,实现了避免出现SYN代理每单位时间内处理的SYN数据包数量上不封顶的弊端,进而避免了数据包大量传输造成的内存资源的消耗,通过对数据传输量进行限制,释放了系统内存,解决了现有技术中防泛洪攻击的处理方式容易导致系统性能降低的问题,进而达到了提高系统性能、提升系统网速的效果。
进一步地,以第一SYN数据包为例来说明判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包的具体原理,其中,第一SYN数据包为多个SYN数据包中的任一数据包,判断第一SYN数据包是否为多个SYN数据包中超过预设上限值的数据包的具体原理为:
比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,第一预设值为服务器的目的IP地址阈值的第一倍数,可以将第一预设值设置为服务器的目的IP地址阈值的2N倍,在本发明实施例中,可以将N设置为2,即将第一预设值设置为服务器的目的IP地址阈值的4倍,还可以根据系统的实际需要将第一预设值设置为目的IP地址阈值的其它倍数。
在比较出第一SYN数据包中目的IP地址的数量大于第一预设值的情况下,确定第一SYN数据包为多个SYN数据包中超过预设上限值的数据包,否则,确定第一SYN数据包为多个SYN数据包中未超过预设上限值的数据包。
在比较出第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于第一预设值的情况下,比较第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,第二预设值为服务器的目的IP地址阈值的第二倍数,第二倍数小于第一倍数,在本发明实施例中,可以将第二预设值设置为服务器的目的IP地址阈值的1/4倍,还可以根据系统的实际需要将第一预设值设置为目的IP地址阈值的其它倍数。
在比较出第一SYN数据包中源IP地址的数量大于第二预设值的情况下,确定第一SYN数据包为多个SYN数据包中存在超过预设上限值的数据包。
优选地,在监测来自客户端的多个SYN数据包之后,并且在判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包之前,本发明实施例的防SYN泛洪攻击的处理方法还包括:判断多个SYN数据包中是否存在安全数据包,并在判断出多个SYN数据包中存在安全数据包的情况下,跳过对安全数据包的SYN代理,相应地,判断多个SYN数据包中是否存在超过SYN代理预设上限值的数据包则具体为:判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,多个SYN数据包由安全数据包和非安全数据包组成。
其中,以第二SYN数据包为例来说明判断多个SYN数据包中是否存在安全数据包的具体原理,其中,第二SYN数据包为多个SYN数据包中的任一数据包,判断第二SYN数据包是否为安全数据包的具体原理为:
判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,预设IP地址库为经过SYN代理,并且与服务器建立连接的客户端的源IP地址的集合,即,预设IP地址库为SYN代理处理过的安全IP的集合,在本发明实施例中,可以将SYN代理处理过的安全IP记录白名单(trust)标志,对应具有白名单标志IP的数据包,后续就不用做SYN代理了。
在判断出第二SYN数据包中源IP地址为预设IP地址库中的IP地址的情况下,确定第二SYN数据包为安全数据包,否则,确定第二SYN数据包为非安全数据包。
通过判断多个SYN数据包中是否存在安全数据包,并在判断出多个SYN数据包中存在安全数据包的情况下,跳过对安全数据包的SYN代理,实现了对SYN代理处理过的安全IP进行筛选,以直接跳过利用安全IP建立连接的SYN数据包的处理,进一步减少了数据包的传输数量,以更多的释放了系统内存,进一步提高了系统性能和系统网速。
进一步优选地,在判断出所述多个SYN数据包中存在超过所述预设上限值的数据包的情况下,丢弃多个SYN数据包中超过预设上限值的数据包之后,本发明实施例的防SYN泛洪攻击的处理方法还包括如下步骤:
首先,查找状态连接表中与第三SYN数据包中TCP序列号对应的差值,其中,状态连接表中存储有与不同TCP序列号对应的差值,第三SYN数据包为多个SYN数据包中的任一数据包;
其次,根据查找到的差值修改对应第三SYN数据包的报文的SYN序号和ACK序号;
然后,按照修改后的SYN序号和ACK序号转发第三SYN数据包。
通过设置状态连接表来存储与不同TCP序列号对应的差值,并通过序列号查找的方式查找与SYN数据包中TCP序列号对应的差值,进而基于查找的差值修改SYN序号和ACK序号,实现了在代理客户端和服务器之间的连接过程中,无需占用系统资源来计算SYN序号和ACK序号,进一步缩小了系统内存的占用,从而使系统性能和系统网速进一步得到提高。
从以上的描述中,可以看出,本发明实现了释放了系统内存,提高系统性能、提升系统网速的效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种防SYN泛洪攻击的处理方法,其特征在于,应用于客户端与服务器之间的通信连接,所述处理方法包括:
监测所述客户端与所述服务器之间的多个SYN数据包;
判断所述多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及在判断出所述多个SYN数据包中存在超过所述预设上限值的数据包的情况下,丢弃所述多个SYN数据包中超过所述预设上限值的数据包;
并且,判断所述多个SYN数据包中是否存在超过SYN代理预设上限值的数据包是通过以下方式实现的:
比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,所述第一SYN数据包为所述多个SYN数据包中的任一数据包,所述第一预设值为所述服务器的目的IP地址阈值的第一倍数;
在比较出所述第一SYN数据包中目的IP地址的数量大于所述第一预设值的情况下,确定所述第一SYN数据包为所述多个SYN数据包中超过所述预设上限值的数据包,否则,确定所述第一SYN数据包为所述多个SYN数据包中未超过所述预设上限值的数据包;
在比较出所述第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于所述第一预设值的情况下,比较所述第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,所述第二预设值为所述服务器的目的IP地址阈值的第二倍数,所述第二倍数小于所述第一倍数;以及在比较出所述第一SYN数据包中源IP地址的数量大于所述第二预设值的情况下,确定所述第一SYN数据包为所述多个SYN数据包中存在超过所述预设上限值的数据包。
2.根据权利要求1所述的处理方法,其特征在于,在监测来自所述客户端的多个SYN数据包之后,并且在判断所述多个SYN数据包中是否存在超过SYN代理预设上限值的数据包之前,所述处理方法还包括:
判断所述多个SYN数据包中是否存在安全数据包;以及在判断出所述多个SYN数据包中存在所述安全数据包的情况下,跳过对所述安全数据包的SYN代理,其中,判断所述多个SYN数据包中是否存在超过SYN代理预设上限值的数据包包括:判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,所述多个SYN数据包由所述安全数据包和所述非安全数据包组成。
3.根据权利要求2所述的处理方法,其特征在于,通过以下方式判断所述多个SYN数据包中是否存在安全数据包:
判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,所述预设IP地址库为经过SYN代理,并且与所述服务器建立连接的所述客户端的源IP地址的集合,所述第二SYN数据包为所述多个SYN数据包中的任一数据包;以及在判断出所述第二SYN数据包中源IP地址为所述预设IP地址库中的IP地址的情况下,确定所述第二SYN数据包为所述安全数据包,否则,确定所述第二SYN数据包为所述非安全数据包。
4.根据权利要求1至3中任一项所述的处理方法,其特征在于,在丢弃所述多个SYN数据包中超过所述预设上限值的数据包之后,所述处理方法还包括:
查找状态连接表中与第三SYN数据包中TCP序列号对应的差值,其中,所述状态连接表中存储有与不同TCP序列号对应的差值,所述第三SYN数据包为所述多个SYN数据包中的任一数据包;
根据查找到的差值修改对应所述第三SYN数据包的报文的SYN序号和ACK序号;以及按照修改后的所述SYN序号和所述ACK序号转发所述第三SYN数据包。
5.一种防SYN泛洪攻击的处理装置,其特征在于,所述处理装置应用于客户端与服务器之间的通信连接,所述处理装置包括:
监测单元,用于监测所述客户端与所述服务器之间的多个SYN数据包;
第一判断单元,用于判断所述多个SYN数据包中是否存在超过SYN代理预设上限值的数据包;以及第一处理单元,用于在所述第一判断单元判断出所述多个SYN数据包中存在超过所述预设上限值的数据包的情况下,丢弃所述多个SYN数据包中超过所述预设上限值的数据包;
并且,所述第一判断单元包括:
第一比较模块,用于比较第一SYN数据包中目的IP地址的数量与1和第一预设值的大小,其中,所述第一SYN数据包为所述多个SYN数据包中的任一数据包,所述第一预设值为所述服务器的目的IP地址阈值的第一倍数;
第一确定模块,用于在所述第一比较模块比较出所述第一SYN数据包中目的IP地址的数量大于所述第一预设值的情况下,确定所述第一SYN数据包为所述多个SYN数据包中超过所述预设上限值的数据包,否则,确定所述第一SYN数据包为所述多个SYN数据包中未超过所述预设上限值的数据包;
第二比较模块,用于在所述第一比较模块比较出所述第一SYN数据包中目的IP地址的数量大于或等于1,并且小于或等于所述第一预设值的情况下,比较所述第一SYN数据包中源IP地址的数量与第二预设值的大小,其中,所述第二预设值为所述服务器的目的IP地址阈值的第二倍数,所述第二倍数小于所述第一倍数;以及第二确定模块,用于在所述第二比较模块比较出所述第一SYN数据包中源IP地址的数量大于所述第二预设值的情况下,确定所述第一SYN数据包为所述多个SYN数据包中存在超过所述预设上限值的数据包。
6.根据权利要求5所述的处理装置,其特征在于,所述处理装置还包括:
第二判断单元,用于判断所述多个SYN数据包中是否存在安全数据包;以及
第二处理单元,用于在所述第二判断单元判断出所述多个SYN数据包中存在所述安全数据包的情况下,跳过对所述安全数据包的SYN代理,
其中,所述第一判断单元用于判断非安全数据包中是否存在超过SYN代理预设上限值的数据包,所述多个SYN数据包由所述安全数据包和所述非安全数据包组成。
7.根据权利要求6所述的处理装置,其特征在于,所述第二判断单元包括:
判断模块,用于判断第二SYN数据包中源IP地址是否为预设IP地址库中的IP地址,其中,所述预设IP地址库为经过SYN代理,并且与所述服务器建立连接的所述客户端的源IP地址的集合,所述第二SYN数据包为所述多个SYN数据包中的任一数据包;以及第三确定模块,用于在所述判断模块判断出所述第二SYN数据包中源IP地址为所述预设IP地址库中的IP地址的情况下,确定所述第二SYN数据包为所述安全数据包,否则,确定所述第二SYN数据包为所述非安全数据包。
8.根据权利要求5至7中任一项所述的处理装置,其特征在于,所述处理装置还包括:
查找单元,用于查找状态连接表中与第三SYN数据包中TCP序列号对应的差值,其中,所述状态连接表中存储有与不同TCP序列号对应的差值,所述第三SYN数据包为所述多个SYN数据包中的任一数据包;
修改单元,用于根据查找到的差值修改对应所述第三SYN数据包的报文的SYN序号和ACK序号;以及转发单元,用于按照修改后的所述SYN序号和所述ACK序号转发所述第三SYN数据包。
CN201310410560.XA 2013-09-10 2013-09-10 防syn泛洪攻击的处理方法和装置 Active CN103475657B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310410560.XA CN103475657B (zh) 2013-09-10 2013-09-10 防syn泛洪攻击的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310410560.XA CN103475657B (zh) 2013-09-10 2013-09-10 防syn泛洪攻击的处理方法和装置

Publications (2)

Publication Number Publication Date
CN103475657A CN103475657A (zh) 2013-12-25
CN103475657B true CN103475657B (zh) 2019-01-08

Family

ID=49800353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310410560.XA Active CN103475657B (zh) 2013-09-10 2013-09-10 防syn泛洪攻击的处理方法和装置

Country Status (1)

Country Link
CN (1) CN103475657B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104378369A (zh) * 2014-11-11 2015-02-25 上海斐讯数据通信技术有限公司 一种无线防止泛洪攻击的方法
CN105991632A (zh) * 2015-04-20 2016-10-05 杭州迪普科技有限公司 网络安全防护方法及装置
CN105516080B (zh) * 2015-11-24 2019-03-15 网宿科技股份有限公司 Tcp连接的处理方法、装置及系统
CN105827646B (zh) * 2016-05-17 2019-06-11 浙江宇视科技有限公司 Syn攻击防护的方法及装置
CN109714135B (zh) * 2018-12-24 2021-10-15 北京威努特技术有限公司 一种数据包传输方法及装置
CN111740870B (zh) * 2020-08-27 2021-02-02 苏州浪潮智能科技有限公司 一种网络动态管理方法、系统及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599957A (zh) * 2009-06-04 2009-12-09 东软集团股份有限公司 一种syn洪水攻击的防御方法和装置
CN101616129A (zh) * 2008-06-27 2009-12-30 成都市华为赛门铁克科技有限公司 防网络攻击流量过载保护的方法、装置和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101616129A (zh) * 2008-06-27 2009-12-30 成都市华为赛门铁克科技有限公司 防网络攻击流量过载保护的方法、装置和系统
CN101599957A (zh) * 2009-06-04 2009-12-09 东软集团股份有限公司 一种syn洪水攻击的防御方法和装置

Also Published As

Publication number Publication date
CN103475657A (zh) 2013-12-25

Similar Documents

Publication Publication Date Title
CN103475657B (zh) 防syn泛洪攻击的处理方法和装置
CN108667730B (zh) 基于负载均衡的报文转发方法、装置、存储介质和设备
US9930013B2 (en) Control of out-of-band multipath connections
US10505838B2 (en) System and method for diverting established communication sessions
TWI677222B (zh) 應用於伺服器負載均衡中的連接建立方法及裝置
US8379515B1 (en) TCP throughput control by imposing temporal delay
CN106230744B (zh) 一种数据流乱序重组的方法及转发设备
US7636305B1 (en) Method and apparatus for monitoring network traffic
CN104184749B (zh) 一种sdn网络访问方法及系统
EP2741463B1 (en) Data packet transmission method
CN103347016A (zh) 一种攻击的防御方法
CN110213224B (zh) 数据包异步转发方法和系统、数据处理系统及共识节点终端
CN103227777B (zh) 一种防止dpd探测失败导致ipsec隧道震荡的方法
WO2017114200A1 (zh) 报文清洗方法及装置
US20210243157A1 (en) Maintaining internet protocol security tunnels
CN106576108A (zh) 通信系统中的通信方法和设备及系统
CN102510385A (zh) 防ip数据报分片攻击的方法
CN107800723A (zh) Cc攻击防护方法及设备
CN105812318A (zh) 用于在网络中防止攻击的方法、控制器和系统
CN106534048A (zh) 一种防范sdn拒绝服务攻击的方法、交换机和系统
CN108124504B (zh) Tfo传输方法、代理服务器和系统
CN107104892A (zh) 网络加速的方法和装置
CN112217735A (zh) 信息同步方法与负载均衡系统
CN100479419C (zh) 防止拒绝服务型攻击的方法
CN108449280B (zh) 一种避免tcp报文乒乓的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 2nd Floor, Building 1, Yard 26, Xizhimenwai South Road, Xicheng District, Beijing, 100032

Patentee after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Patentee after: Legendsec Technology (Beijing) Co.,Ltd.

Address before: 100085 1st floor, Section II, No.7 Kaifa Road, Shangdi Information Industry base, Haidian District, Beijing

Patentee before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

Patentee before: Legendsec Technology (Beijing) Co.,Ltd.