CN115499216B - 防御攻击方法及装置、存储介质及电子设备 - Google Patents

防御攻击方法及装置、存储介质及电子设备 Download PDF

Info

Publication number
CN115499216B
CN115499216B CN202211131663.8A CN202211131663A CN115499216B CN 115499216 B CN115499216 B CN 115499216B CN 202211131663 A CN202211131663 A CN 202211131663A CN 115499216 B CN115499216 B CN 115499216B
Authority
CN
China
Prior art keywords
message
source
syn
source address
receiving
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
CN202211131663.8A
Other languages
English (en)
Other versions
CN115499216A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202211131663.8A priority Critical patent/CN115499216B/zh
Publication of CN115499216A publication Critical patent/CN115499216A/zh
Application granted granted Critical
Publication of CN115499216B publication Critical patent/CN115499216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了一种防御攻击方法及装置、存储介质及电子设备,涉及网络通信技术领域。接收用户端发送的SYN报文;记录所述SYN报文的报文地址和端口信息;将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;接收所述用户端的回复报文,确定所述用户端为合法用户;将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。实现减少上行链路网络带宽的占用,更加灵活地实现对攻击的防御。

Description

防御攻击方法及装置、存储介质及电子设备
技术领域
本公开涉及网络通信技术领域,尤其涉及一种防御攻击方法及装置、存储介质及电子设备。
背景技术
DDoS(Distributed Denial of Service,防御分布式拒绝服务)攻击是一种有组织的利用工具远程控制僵尸网络,通过伪造大量的请求消耗目标的网络和资源,已达到瘫痪网络及系统的目的,其中,SYN(Synchronize Sequence Numbers,同步序列编号)Flood(洪水)攻击则是利用三次握手TCP(Transmission Control Protocol,传输控制协议)机制的漏洞,客户端将SYN数据包发送到服务器,然后接收服务器返回的SYN-ACK(Acknowledgment Number,确认号)数据包,并且不会返回ACK数据包。因此,目标服务器留下了许多未完成的半开连接,从而阻止其他合法用户的访问,并最终导致系统资源耗尽而崩溃。
目前,源认证则是为有效区分真实用户IP和虚假的IP地址所采用的一种技术手段。在一些常用SYNFlood攻击的检测方法中,需要通过发送等量的探测报文,用以检测虚假源地址发起的DDoS攻击,但是使用该方法会导致上行链路拥塞,同时也会造成大量无用的报文在网络中转发,导致网络设备负载增大。
因此,需要一种实现对上行链路优化,并减轻网络设备负载的网络攻击防御方法。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种防御攻击方法及装置、存储介质及电子设备,至少在一定程度上克服由于相关技术的攻击检测中上行链路拥塞的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种攻击防御方法,应用于清洗设备,包括:
接收用户端发送的SYN报文;
记录所述SYN报文的报文地址和端口信息;
将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;
发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
接收所述用户端的回复报文,确定所述用户端为合法用户;
将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。
在本公开一个实施例中,还包括:
如果超过预定时间未收到所述用户端的回复报文,则确定所述用户端为非法用户,将所述非法用户加入黑名单。
在本公开一个实施例中,所述接收用户端发送的SYN报文步骤之前,还包括:
当异常流量检测设备检测到攻击流量时,发布BGP路由牵引所述攻击流量进行流量清洗。
在本公开一个实施例中,所述方法还包括:
接收所述白名单中合法用户的后续报文后,将所述后续报文通过策略路由发送至服务器端。
在本公开一个实施例中,所述记录所述SYN报文的报文地址和端口信息,包括:
确定所述SYN报文的防护方法;
根据所述防护方法确定需要记录的报文地址和端口信息。
在本公开一个实施例中,所述防护方法包括:代理握手方式和错误确认号ACK NUM方式;
所述根据所述防护方法确定需要记录的报文地址和端口信息,包括:
若所述防护方法为代理握手方式,则记录源地址、端口号和序列号;
若所述防护方法为错误ACK NUM方式,则记录源地址和端口号。
在本公开一个实施例中,所述发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端,包括:
若接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,则将所述接收到的SYN报文合成第一源地址集合,并将所述第一源地址集合发送至所述源认证代理设备;或者
若接收到的SYN报文请求超过预设时间,则将超过所述预设时间的报文合成第二源地址集合,并将所述第二源地址集合发送至所述源认证代理设备。
根据本公开的另一个方面,提供一种攻击防御方法,应用于源认证代理设备,包括:
接收清洗设备发送的报文地址、端口信息和防护方法;
接收所述清洗设备发送的源地址集合;
对所述防护方法和所述报文数据集合进行解析生成认证报文;
将所述认证报文发送至用户端。
根据本公开的再一个方面,提供一种攻击防御装置,包括:
报文接收模块,用于接收用户端发送的SYN报文;
信息记录模块,用于记录所述SYN报文的报文地址和端口信息;
第一发送模块,用于将所述SYN报文对应的报文地址、端口信息和防护方法发送至源认证代理设备;
第二发送模块,用于发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
回复接收模块,用于接收所述用户端的回复报文,确定所述用户端为合法用户;
白名单添加模块,用于将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。
根据本公开的又一个方面,提供一种攻击防御装置,包括:
第一接收模块,用于接收清洗设备发送的报文地址、端口信息和防护方法;
第二接收模块,用于接收所述清洗设备发送的报文数据集合;
报文解析模块,用于对所述防护方法和所述报文数据集合进行解析生成认证报文;
报文发送模块将所述认证报文发送至用户端。
根据本公开的另一个方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述攻击防御方法。
根据本公开的再一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的攻击防御方法。
本公开的实施例所提供的一种攻击防御方法,清洗设备由接收用户端发送的SYN报文;记录所述SYN报文的报文地址和端口信息;将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;接收所述用户端的回复报文,确定所述用户端为合法用户;将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。通过部署的清洗设备,记录收到的攻击或真实用户报文信息并进行信息聚合,通过特定链路发送到代理设备,从而实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。更加灵活地实现对攻击的防御。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开一个实施例中一种目前的防御攻击源认证流程示意图;
图2示出本公开一个实施例中一种防御攻击方法流程图;
图3示出本公开一个实施例中一种攻击防御设备间交互示意图;
图4示出本公开一个实施例中一种攻击防御方法的信息交互示意图;
图5示出本公开一个实施例中一种攻击防御方法的TCP三次握手机制示意图;
图6示出本公开一个实施例中一种防护方法的防护机制示意图;
图7示出本公开一个实施例中又一种防护方法的防护机制示意图;
图8示出本公开一个实施例中一种攻击防御方法判断框图;
图9示出本公开一个实施例中一种攻击防御方法报文结构示意图;
图10示出本公开又一个实施例中一种防御攻击方法流程图;
图11示出本公开另一个实施例中一种防御攻击方法流程图;
图12示出本公开一个实施例一种攻击防御装置的结构框图;
图13示出本公开又一个实施例一种攻击防御装置的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本申请提供的方案,涉及网络攻击防御。为了便于理解,下面首先对本申请涉及到的几个名词进行解释。
DDoS(Distributed Denial of Service,分布式拒绝服务)攻击,通常DDoS攻击者为隐匿身份且并不需要攻击对象回复,使用不同的虚假源地址能让受害主机产生更多的半开连接消耗更多资源,或将源地址修改为受害者地址,因此通常会使用虚假的源IP地址进行攻击。
SYN(Synchronize Sequence Numbers,同步序列编号)是TCP(TransmissionControl Protocol,传输控制协议)建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。
SYN Flood攻击指的是攻击者在短时间内伪造大量不存在的IP地址,向目标系统不断地发送SYN数据包,迫使目标系统需要回复大量SYN+ACK确认包,并等待发送源的确认。由于源地址不对确认包进行响应或者源地址是根本就不存在的,目标系统需要不断的重发SYN+ACK确认包直至SYN包超时,这些一直得不到确认的SYN包将长时间占用SYN队列,正常的SYN请求被丢弃或被拒绝,导致目标系统运行缓慢,严重者会引起网络堵塞甚至目标系统底层操作系统瘫痪。
本申请实施例提供的方案涉及攻击防御技术,具体通过如下实施例进行说明:
如图1所示目前的防御攻击源认证流程示意图,包括:清洗设备110、检测设备120以及服务器端130。具体的源认证流程包括:
S101:黑客通过僵尸网络发起DDoS攻击;如图1经过网络2的网关,进入网络1后,执行S102:当检测设备120检测到异常流量攻击时,清洗设备110通过发布BGP路由牵引流量;清洗设备开始清洗,执行S103:通过源认证的方式发送探测报文,僵尸主机(黑客)和合法用户都会收到认证报文;S104:正常用户会回复认证报文;S105:清洗设备110收到合法用户回复的报文后将源地址加入白名单后续报文直接通过;S106:清洗后的流量通过策略路由回注到服务器端130;S107:服务器端130返回报文到正常用户端;S108:正常用户收到服务器端130返回报文实现正常访问。其中,黑客即为攻击者,正常用户则为合法用户。
源认证则是为有效区分真实用户IP和虚假的IP地址所采用的一种技术手段。上述方法需要通过发送等量的探测报文,用以检测虚假源地址发起的DDoS攻击,使用该方法会导致上行链路拥塞,同时也造成大量无用的报文在网络中转发,导致网络设备负载增大。
如图3示出的攻击防御设备间交互示意图,其中包括设备有:清洗设备320、检测设备330、服务器端340、正常用户以及黑客。关于清洗设备接收到用户端接收SYN报文的具体过程,如图3示出的步骤S301黑客通过僵尸网络发起DDoS攻击,然后执行步骤S302当检测设备检测330到异常流量攻击时,清洗设备320通过发布BGP路由牵引流量。然后流量被牵引至清洗设备320,接着执行步骤S303清洗设备开始清洗,将源认证的源目地址序列号发送到源认证代理服务器上。S304,源认证代理设备将认证报文发送到网络边界路由器上。S305,僵尸主机和合法用户都会收到认证报文。S306,正常用户会回复认证报文。S307,清洗设备收到合法用户回复的报文后将源地址加入白名单后续报文直接通过。S308,清洗后的流量通过策略路由回注到服务器端S309,服务器返回报文到用户端。S310,用户收到服务器端返回报文实现正常访问。在网络上行关键节点例如,大带宽出口、网络边界、汇聚节点,部署源认证代理设备,通过与清洗设备联动,记录收到的攻击或真实用户报文部分信息并进行聚合,通过特定链路发送到代理设备,从而实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。
下面,将结合附图及实施例对本示例实施方式中的攻击防御方法的各个步骤进行更详细的说明。
如图2示出一种攻击防御方法流程图,在本公开的一个实施例中,提供一种攻击防御方法,应用于清洗设备,包括:
S201,接收用户端发送的SYN报文;
具体地,SYN报文包括,正常用户发送的SYN合法访问报文和攻击者发送的SYN攻击报文。关于清洗设备接收到用户端接收SYN报文的具体过程,如图3示出的步骤S301黑客通过僵尸网络发起DDoS攻击,然后执行步骤S302当检测设备检测330到异常流量攻击时,清洗设备320通过发布BGP路由牵引流量。然后流量被牵引至清洗设备320,接着执行步骤S303清洗设备开始清洗,将源认证的源目地址序列号发送到源认证代理服务器上。
结合图4示出的攻击防御方法的信息交互示意图,上述步骤S201对应于步骤S401清洗设备接收用户端发送的SYN攻击报文和合法访问报文。
S202,记录所述SYN报文的报文地址和端口信息;
其中,端口信息主要指的是端口号。报文是网络中交换与传输的数据单元,报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。对应于图4中的步骤S402清洗设备记录报文地址和端口信息。
S203,将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;
具体地,对应于图4中的步骤S403,清洗设备向源认证代理设备发送所需要防护的地址、端口信息和防护方法。以便后续源认证代理设备可以根据上述信息对获得的报文进行解析。
S204,发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
具体地,对应于图4中的步骤S404清洗设备发送源地址集合到源认证代理设备,以使执行图4中的步骤S405源认证代理设备收到DDoS设备发送的防护地址、方法和地址合集后,生成认证报文发送给用户端。其中用户端包括:攻击者或合法用户。
S205,接收所述用户端的回复报文,确定所述用户端为合法用户;
具体地,在上述将认证报文发送给用户端后,正常用户的用户端会回复报文,因此对应于执行图4中的步骤S404清洗设备接收用户端的合法用户回复源认证报文。
S206,将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。
在确定合法用户后,执行图4中的步骤S407清洗设备将合法用户的IP地址加入白名单。加入白名单后,则进行步骤S409合法用户的后续报文可以正常通过。合法用户后续报文可正常通过,攻击者报文将被拦截。
本实施例提供的攻击防御方法,一种攻击防御方法,清洗设备由接收用户端发送的SYN报文;记录所述SYN报文的报文地址和端口信息;将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;接收所述用户端的回复报文,确定所述用户端为合法用户;将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。通过部署的清洗设备,记录收到的攻击或真实用户报文信息并进行信息聚合,通过特定链路发送到代理设备,从而实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。更加灵活地实现对攻击的防御。
进一步,优化上行链路带宽减少拥塞,减少网络设备负载加重问题。适应场景更广,解决了异常流量防御算法的局限性。可灵活部署前置设备并进行联动,对前置设备性能要求不高,也可通过与其他安全设备、网络设备联动节约成本。在大流量攻击时,减少网络中认证报文的数量,减轻网络负载。
在本公开实施例中,还包括:
如果超过预定时间未收到所述用户端的回复报文,则确定所述用户端为非法用户,将所述非法用户加入黑名单。
如图4,当攻击者无回复报文时,执行步骤S408,超过预定时间未收到所述用户端的回复报文,则确定所述用户端为非法用户,将所述非法用户加入黑名单。加入黑名单后则不再接收该用户的报文。
在本公开实施例中,所述接收用户端发送的SYN报文步骤之前,还包括:
当异常流量检测设备检测到攻击流量时,发布BGP路由牵引所述攻击流量进行流量清洗。
结合上述附图3进行说明,图3示出的步骤S301黑客通过僵尸网络发起DDoS攻击,然后执行步骤S302当检测设备检测330到异常流量攻击时,清洗设备320通过发布BGP路由牵引流量。然后流量被牵引至清洗设备320,由清洗设备320进行流量清洗。
在本公开一个实施例中,所述方法还包括:
接收所述白名单中合法用户的后续报文后,将所述后续报文通过策略路由发送至服务器端。
结合附图3进行说明,通过步骤S307清洗设备320收到合法用户回复的报文后,将源地址将加入白名单,后续报文可以直接通过,然后步骤S308清洗设备将320清洗后的流量通过策略路由回注到服务器端。通过上述步骤合法用户端与服务器端成功建立连接,在此之后,则可实现步骤S309服务器返回报文到用户端,最终实现步骤S310用户收到服务器端返回报文实现正常访问。
在本公开一个实施例中,所述记录所述SYN报文的报文地址和端口信息,包括:
确定所述SYN报文的防护方法;
根据所述防护方法确定需要记录的报文地址和端口信息。
具体地,其中,防护方法包括:首包丢弃、代理三次握手和错误ACK NUM(Acknowledgment Number,确认号),对于首包丢弃的方法,清洗设备对新建连接的第一个SYN报文丢弃,等待客户端的第二次重传,执行后续检测。该方法存在缺陷,当攻击者使用相同的源地址发送报文时,流量清洗设备会认为的合法的报文,通常无法单一使用,且影响用户体验增加延时。因此,本实施例主要采用两种防护方法,包括:代理三次握手和错误ACKNUM。
具体地,在本公开一个实施例中,所述防护方法包括:代理握手方式和错误确认号ACK NUM方式;
所述根据所述防护方法确定需要记录的报文地址和端口信息,包括:
若所述防护方法为代理握手方式,则记录源地址、端口号和序列号;
若所述防护方法为错误ACK NUM方式,则记录源地址和端口号。
下面分别介绍本实施例采用的上述两种防护方法。
上述应对SYN Flood攻击,主要利用TCP三次握手的机制实现的,通常攻击者不会回应清洗设备的报文,并使用虚假的源地址进行攻击,清洗设备通过对源地的认证保障合法报文可以通过。如图5所示为TCP三次握手机制示意图。第一次握手:建立连接。客户端发送连接请求报文段,将SYN位置为1,Sequence Number为x。然后,客户端进入SYN_SEND状态,等待服务器的确认。第二次握手:服务器收到SYN报文段。服务器收到客户端的SYN报文段,需要对这个SYN报文段进行确认,设置Acknowledgment Number为x+1(Sequence Number+1)。同时,还要发送SYN请求信息,将SYN位置为1,Sequence Number为y;服务器端将上述所有信息放到一个报文段中,一并发送给客户端,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK报文段。然后将Acknowledgment Number设置为y+1,向服务器发送ACK报文段,这个报文段发送完毕以后,客户端和服务器端都进入ESTABLISHED状态,完成TCP三次握手。完成连接建立后客户端与服务端即可实现数据交互。
如图6为代理三次握手的防护机制示意图,清洗设备接收到SYN请求之后,发送正确序列号报文SYN+ACK报文段,回复后将IP地址加入白名单,最后由清洗设备服务器完成三次握手,客户端后续报文可正常访问。正常的客户端会回复一个ACK报文和中间清洗设备建立TCP连接,中间清洗设备此时会回复一个RST报文阻断该连接,客户端一般情况下会再次进行连接请求,从而经过中间清洗设备验证,直接和服务器进行通信;攻击者由于不能支持协议交互,导致SYN Flood的报文被中间清洗设备拦截,以实现防护功能。
如果收到只有一个SYN的半开连接,代理将不会与服务器进行连接,从而保护服务器不受到SYN Flood的攻击,但是这种方法比较耗费TCP代理的资源。
如图7为一种防护方法:错误ACK NUM防护机制示意图:清洗设备接收到SYN请求之后,首先流量清洗设备代理发送错误ACK NUM的报文到请求源,请求源收到一个错误ACK包,当即会发送一个RST报文断开连接,清洗设备收到报文后将源地址加入白名单,然后进行二次重传,后续报文可正常通过。
如图8示出的一种攻击防御方法判断框图,下面结合图8对本公开实施例进行说明:
步骤S801将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备。然后执行步骤S802确定防护方法,本实施例中采用的防护方法主要是上述列举中的代理三次握手和错误ACK NUM,此外还可以根据实际应用需求增加其他防护方法。每种防护方法对应记录的信息有所差别。具体地,如图8中若防护方法为代理三次握手则执行步骤S803记录源地址、端口以及seq号。若所防护方法为错误ACK NUM,则执行步骤S804记录源地址和端口号。若采用的是其它方法,则执行步骤S805采用其它记录方式。
如图9所示为报文结构示意图,对应于上述两种防护方法。报文A对应于上述代理三次握手方法的报文结构,其中IP-Port-Seq分别指代源地址、端口以及seq号,报文B展示的为ACK NUM防护方法的报文结构,其中IP-Port指代源地址和端口号。
上述实施例在实际应用场景中具有显著的效果,在某些出口节点或边界节点部署源认证代理设备。常规方式源认证一个报文为66字节,现通过合并发送源认证报文。代理三次握手方法:源地址4个字节,端口2个字节,seq号4个字节,总计10个字节,效率约是常规方式的6倍。错误ACK NUM方法:源地址4个字节,端口2个字节,seq号由代理设备随机产生,总计6个字节,效率约是常规方式10倍。因此,本实施例采用上述两种防护方法。
三次代理握手和错误ACK源认证的方法都会占用上行链路,例如,当攻击者发送一个66字节的SYN报文后,清洗设备都会回复66字节的SYN+ACK报文,如图3步骤S303所示,会导致网络1中存在大量无用的报文,同时会增加网络1中设备的负载,影响网络质量。当攻击流量大于等于链路的带宽时上行链路将会被同等数量和大小的源认证报文堵塞。
为了解决上述问题,本实施例在网络上行关键位置部署源认证代理设备,通过对源认证探测报文进行聚合的方式优化上行链路,减少网络1中的大量非业务小包,减轻网络负载。结合下述实施例进行说明。
在本公开实施例中,所述发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端,包括:
若接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,则将所述接收到的SYN报文合成第一源地址集合,并将所述第一源地址集合发送至所述源认证代理设备;或者
其中,MTU值的意思是网络上传送的最大数据包,单位是字节。为了解决上行链路堵塞的问题,结合图8进行说明,首先执行步骤S806判断累计数据是否接近MTU值。设定传输的MTU值为最大传输单元,大于该值报文需要分片影响效率。如何判断接近MTU值,本实施例可以通过位最大传输单元MTU值设定一个对应的预设MTU值区间内进行判断,也就是小于的预设MTU值的某一个值到预设MTU值之间的一个范围,即上述的预设MTU值区间。例如,汇聚后的报文数据接近MTU值1500,可选的,本实施例设定预设MTU值区间在1400-1500这个范围区间内。判断累计数据在该范围内,说明累计数据接近MTU值,并且上述MTU值区间可以根据预先根据实际应用需求进行设定,选择适合的取值和取值区间均可。则执行步骤S808将数据合成一个报文,并发送给源认证代理设备。上述源地址集合也就是合成的报文集合,第一源地址集合也就是本实施例通过预设MTU值区间进行判断后得到的报文集合。
若接收到的SYN报文请求超过预设时间,则将超过所述预设时间的报文合成第二源地址集合,并将所述第二源地址集合发送至所述源认证代理设备。
另一种情况,结合图8执行步骤S807判断报文请求是否超时,若超时则将的报文数据进行合成,也就是执行步骤S808将合成的报文集合发送至源认证代理设备,例如,超过设定的时间假定2秒则将数据合成一个报文发送至源认证代理设备。第二源地址集合是通过本实施例的进行超时判断后合成的报文集合。
通过上述步骤,最终执行步骤S809接收用户端的回复报文生成黑白名单,后续通过黑白名单实现步骤S810转发正常业务报文,丢弃异常业务报文。
本实施例通过最大MTU值的限定可以尽量减少网络中的小包数量,减少网络设备的性能消耗。通过合并网段的方式(如:172.16.1.0/24)可进一步提高优化效率。对源认证探测报文进行聚合的方式优化上行链路,减少大量非业务小包,减轻网络负载。
如图10示出又一种攻击防御方法,在本公开的另一个实施例中,提供一种攻击防御方法,应用于源认证代理设备,包括:
S1001,接收清洗设备发送的报文地址、端口信息和防护方法;
S1002,接收所述清洗设备发送的源地址集合;
S1003,对所述防护方法和所述报文数据集合进行解析生成认证报文;
S1004,将所述认证报文发送至用户端。
本实施例的步骤与上述实施例中清洗设备中所述实现的过程相对应。结合图4进行说明,通过步骤S403源认证代理设备接收清洗设备发送的报文地址、端口信息和防护方法,以及步骤S404源认证代理设备接收清洗设备发送的源地址集合,并且步骤S405沿认证代理设备将源认证报文发送至用户端。
如图11所示为一种攻击防御方法判断框图,关于步骤S1003,对所述防护方法和所述报文数据集合进行解析生成认证报文。首先执行步骤S1101接收清洗设备发送的报文地址、端口信息和防护方法,和步骤S1102接收所述清洗设备发送的源地址集合。然后执行步骤S1103判断所述防护方法。不同的防护方法对应的解析数据不同,本实施例采用的防护方法也就是上述提供两种代理三次握手和错误ACK NUM两种。代理三次握手的解析是通过步骤S1104根据收到的防护地址、端口和seq号,生成SYN+ACK报文。错误ACK NUM的解析是步骤S1105根据收到的防护地址、端口和随机生成seq号生成SYN+ACK报文。最终,步骤S1106将所述认证报文发送至用户端。其中可以根据防护方法确定所需要进行报文解析时的相关数据。
本实施例通过部署的源认证代理设备发送认证报文,从而实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。更加灵活地实现对攻击的防御。优化上行链路带宽减少拥塞,减少网络设备负载加重问题。适应场景更广,解决了异常流量防御算法的局限性。可灵活部署前置设备并进行联动,对前置设备性能要求不高,也可通过与其他安全设备、网络设备联动节约成本。在大流量攻击时,减少网络中认证报文的数量,减轻网络负载。
如图12示出的一种攻击防御装置的结构框图,在本公开的再一个实施例中,提供一种攻击防御装置1200,包括:
报文接收模块1201,用于接收用户端发送的SYN报文;
信息记录模块1202,用于记录所述SYN报文的报文地址和端口信息;
第一发送模块1203,用于将所述SYN报文对应的报文地址、端口信息和防护方法发送至源认证代理设备;
第二发送模块1204,用于发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
回复接收模块1205,用于接收所述用户端的回复报文,确定所述用户端为合法用户;
白名单添加模块1206,用于将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文。
本实施例提供的攻击防御装置1200,通过报文接收模块1201、信息记录模块1202、第一发送模块1203、第二发送模块1204、回复接收模块1205以及白名单添加模块1206,记录收到的攻击或真实用户报文信息并进行信息聚合,通过特定链路发送到代理设备,从而实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。更加灵活地实现对攻击的防御。
如图13示出的一种攻击防御装置的结构框图,在本公开的又一个实施例中,提供一种攻击防御装置1300,包括:
第一接收模块1301,用于接收清洗设备发送的报文地址、端口信息和防护方法;
第二接收模块1302,用于接收所述清洗设备发送的报文数据集合;
报文解析模块1303,用于对所述防护方法和所述报文数据集合进行解析生成认证报文;
报文发送模块1304,用于将所述认证报文发送至用户端。
本实施例提供的攻击防御装置1300,通过第一接收模块1301、第二接收模块1302、报文解析模块1303和报文发送模块1304,实现减少上行链路网络带宽的占用,减少网络中无用报文的发送,降低网络设备的负载的目标。更加灵活地实现对攻击的防御。
在本公开的另一个实施例中,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述攻击防御方法。
本实施例提供的电子设备通过处理器执行上述攻击防御方法,实现减少上行链路网络带宽的占用,更加灵活地实现对攻击的防御。
在此不再赘述。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的再一个实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的攻击防御方法。
本实施例提供的计算机可读存储介质计算机程序被处理器执行时实现上述攻击防御方法,实现减少上行链路网络带宽的占用,更加灵活地实现对攻击的防御。
在此不再赘述。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
描述了根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (11)

1.一种攻击防御方法,其特征在于,应用于清洗设备,包括:
接收用户端发送的SYN报文;
记录所述SYN报文的报文地址和端口信息;
将所述SYN报文对应的所述报文地址、所述端口信息和防护方法发送至源认证代理设备;
发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
接收所述用户端的回复报文,确定所述用户端为合法用户;
将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文;
其中,所述发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端,包括:
若接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,则将所述接收到的SYN报文合成第一源地址集合,并将所述第一源地址集合发送至所述源认证代理设备;或者
若接收到的SYN报文请求超过预设时间,则将超过所述预设时间的报文合成第二源地址集合,并将所述第二源地址集合发送至所述源认证代理设备。
2.根据权利要求1所述的攻击防御方法,其特征在于,还包括:
如果超过预定时间未收到所述用户端的回复报文,则确定所述用户端为非法用户,将所述非法用户加入黑名单。
3.根据权利要求1所述的攻击防御方法,其特征在于,所述接收用户端发送的SYN报文步骤之前,还包括:
当异常流量检测设备检测到攻击流量时,发布BGP路由牵引所述攻击流量进行流量清洗。
4.根据权利要求1所述的攻击防御方法,其特征在于,所述方法还包括:
接收所述白名单中合法用户的后续报文后,将所述后续报文通过策略路由发送至服务器端。
5.根据权利要求1所述的攻击防御方法,其特征在于,所述记录所述SYN报文的报文地址和端口信息,包括:
确定所述SYN报文的防护方法;
根据所述防护方法确定需要记录的报文地址和端口信息。
6.根据权利要求5所述的攻击防御方法,其特征在于,所述防护方法包括:代理握手方式和错误确认号ACK NUM方式;
所述根据所述防护方法确定需要记录的报文地址和端口信息,包括:
若所述防护方法为代理握手方式,则记录源地址、端口号和序列号;
若所述防护方法为错误ACK NUM方式,则记录源地址和端口号。
7.一种攻击防御方法,其特征在于,应用于源认证代理设备,包括:
接收清洗设备发送的报文地址、端口信息和防护方法;
接收所述清洗设备发送的源地址集合;
对所述防护方法和所述报文数据集合进行解析生成认证报文;
将所述认证报文发送至用户端;
其中,所述接收所述清洗设备发送的源地址集合,包括:接受第一源地址集合,其中,所述第一源地址集合为当清洗设备接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,使所述接收到的SYN报文合成的;或者
接收第二源地址集合,所述第二源地址集合为当清洗设备接收到的SYN报文请求超过预设时间,使超过所述预设时间的报文合成的。
8.一种攻击防御装置,其特征在于,包括:
报文接收模块,用于接收用户端发送的SYN报文;
信息记录模块,用于记录所述SYN报文的报文地址和端口信息;
第一发送模块,用于将所述SYN报文对应的报文地址、端口信息和防护方法发送至源认证代理设备;
第二发送模块,用于发送源地址集合到所述源认证代理设备,以使所述源认证代理设备根据所述源地址集合和对应的报文地址、端口信息和防护方法生成认证报文,并发送所述认证报文给所述用户端;
回复接收模块,用于接收所述用户端的回复报文,确定所述用户端为合法用户;
白名单添加模块,用于将所述合法用户的IP地址加入白名单,接收所述白名单中合法用户的后续报文;
所述第二发送模块,用于若接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,则将所述接收到的SYN报文合成第一源地址集合,并将所述第一源地址集合发送至所述源认证代理设备;或者
用于若接收到的SYN报文请求超过预设时间,则将超过所述预设时间的报文合成第二源地址集合,并将所述第二源地址集合发送至所述源认证代理设备。
9.一种攻击防御装置,其特征在于,包括:
第一接收模块,用于接收清洗设备发送的报文地址、端口信息和防护方法;
第二接收模块,用于接收所述清洗设备发送的报文数据集合;
报文解析模块,用于对所述防护方法和所述报文数据集合进行解析生成认证报文;
报文发送模块将所述认证报文发送至用户端;
所述第二接收模块,用于接受第一源地址集合,其中,所述第一源地址集合为当清洗设备接收到的SYN报文累计数据对应的MTU值在预设MTU值区间内,使所述接收到的SYN报文合成的;或者
用于接收第二源地址集合,所述第二源地址集合为当清洗设备接收到的SYN报文请求超过预设时间,使超过所述预设时间的报文合成的。
10. 一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求 1~7中任意一项所述攻击防御方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任意一项所述的攻击防御方法。
CN202211131663.8A 2022-09-15 2022-09-15 防御攻击方法及装置、存储介质及电子设备 Active CN115499216B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211131663.8A CN115499216B (zh) 2022-09-15 2022-09-15 防御攻击方法及装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211131663.8A CN115499216B (zh) 2022-09-15 2022-09-15 防御攻击方法及装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN115499216A CN115499216A (zh) 2022-12-20
CN115499216B true CN115499216B (zh) 2024-03-19

Family

ID=84468735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211131663.8A Active CN115499216B (zh) 2022-09-15 2022-09-15 防御攻击方法及装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN115499216B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107864156A (zh) * 2017-12-18 2018-03-30 东软集团股份有限公司 Syn攻击防御方法和装置、存储介质
CN109639712A (zh) * 2018-12-29 2019-04-16 北京神州绿盟信息安全科技股份有限公司 一种防护ddos攻击的方法及系统
CN114513365A (zh) * 2022-02-28 2022-05-17 北京启明星辰信息安全技术有限公司 一种针对SYN Flood攻击的检测与防御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130030086A (ko) * 2011-09-16 2013-03-26 한국전자통신연구원 비정상 세션 연결 종료 행위를 통한 분산 서비스 거부 공격 방어 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107864156A (zh) * 2017-12-18 2018-03-30 东软集团股份有限公司 Syn攻击防御方法和装置、存储介质
CN109639712A (zh) * 2018-12-29 2019-04-16 北京神州绿盟信息安全科技股份有限公司 一种防护ddos攻击的方法及系统
CN114513365A (zh) * 2022-02-28 2022-05-17 北京启明星辰信息安全技术有限公司 一种针对SYN Flood攻击的检测与防御方法

Also Published As

Publication number Publication date
CN115499216A (zh) 2022-12-20

Similar Documents

Publication Publication Date Title
CN105827646B (zh) Syn攻击防护的方法及装置
Yi et al. Resisting flooding attacks in ad hoc networks
Yang et al. A DoS-limiting network architecture
Gupta et al. Denial of service attacks at the MAC layer in wireless ad hoc networks
US5958053A (en) Communications protocol with improved security
US6973040B1 (en) Method of maintaining lists of network characteristics
Ambrosin et al. Lineswitch: Efficiently managing switch flow in software-defined networking while effectively tackling dos attacks
CA2516975C (en) Using tcp to authenticate ip source addresses
US20070195774A1 (en) Systems and methods for access port ICMP analysis
CN110266678B (zh) 安全攻击检测方法、装置、计算机设备及存储介质
US7404210B2 (en) Method and apparatus for defending against distributed denial of service attacks on TCP servers by TCP stateless hogs
Jamal et al. Denial of service attack in wireless LAN
CA2492494A1 (en) Denial of service defense by proxy
Kavisankar et al. A mitigation model for TCP SYN flooding with IP spoofing
CN100420197C (zh) 一种实现网络设备防攻击的方法
Mohammadi et al. SYN‐Guard: An effective counter for SYN flooding attack in software‐defined networking
Wang et al. Efficient and low‐cost defense against distributed denial‐of‐service attacks in SDN‐based networks
CN108667829A (zh) 一种网络攻击的防护方法、装置及存储介质
US20090138971A1 (en) Detecting Intrusion by Rerouting of Data Packets in a Telecommunications Network
Kumarasamy et al. An active defense mechanism for TCP SYN flooding attacks
CN112383559B (zh) 地址解析协议攻击的防护方法及装置
Dulik Network attack using TCP protocol for performing DoS and DDoS attacks
Gurusamy et al. Detection and mitigation of UDP flooding attack in a multicontroller software defined network using secure flow management model
CN115499216B (zh) 防御攻击方法及装置、存储介质及电子设备
Fowler et al. Impact of denial of service solutions on network quality of service

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