CN114567484B - 一种报文处理方法、装置、电子设备及存储介质 - Google Patents
一种报文处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114567484B CN114567484B CN202210191853.2A CN202210191853A CN114567484B CN 114567484 B CN114567484 B CN 114567484B CN 202210191853 A CN202210191853 A CN 202210191853A CN 114567484 B CN114567484 B CN 114567484B
- Authority
- CN
- China
- Prior art keywords
- message
- client
- time interval
- attack
- determining
- 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
- 238000003672 processing method Methods 0.000 title abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000004590 computer program Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 abstract description 6
- 230000001681 protective effect Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000007123 defense Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000779 depleting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
-
- 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
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)
- Computer And Data Communications (AREA)
Abstract
本申请公开一种报文处理方法、装置、电子设备及存储介质,属于网络安全技术领域,该方法包括:防护设备接收到客户端发送的任一会话的首个报文时,保存首个报文的报文信息,丢弃首个报文;若接收到的第一报文符合首个报文的重传条件,则确定第一报文与首个报文的接收时间间隔;基于接收时间间隔是否位于预设时间区间内,确定客户端是否是攻击客户端,预设时间区间的区间上限和区间下限是基于DDoS的报文发送特征确定的;基于确定的客户端是否是攻击客户端的结果,处理第一报文。这样,借助于重传机制验证客户端是否是攻击客户端,不需要再进行反弹报文即可防御DDoS,既可避免回程链路拥塞又可避免影响防护设备的性能。
Description
技术领域
本申请涉及网络安全技术领域,尤其涉及一种报文处理方法、装置、电子设备及存储介质。
背景技术
分布式拒绝服务攻击(Distributed denial of service attack,DDoS)是一类常见的网络攻击,其包括同步序列编号(Synchronize Sequence Numbers,SYN)、域名系统(Domain Name System,DNS)、HTTP flood等攻击。
现有技术中,在防御DDoS时,针对同步SYN攻击采用源探测技术、针对DNS攻击和HTTPflood攻击采用重定向技术。然而此类方法需要反弹报文,这样,会加重回程链路的带宽负担,引起回程链路拥塞,并且,由于反弹需要重新组装报文,所以还会影响防护设备的性能。
由此可见,现有技术中在防御DDoS时存在着防御不合理的问题。
发明内容
本申请实施例提供一种报文处理方法、装置、电子设备及存储介质,用以解决现有技术中在防御DDoS时存在的防御不合理的问题。
第一方面,本申请实施例提供一种报文处理方法,包括:
防护设备接收到客户端发送的任一会话的首个报文时,保存所述首个报文的报文信息,丢弃所述首个报文,所述报文信息至少包括接收时间;
若接收到的第一报文符合所述首个报文的重传条件,则基于所述接收时间和所述第一报文的接收时间,确定所述第一报文与所述首个报文的接收时间间隔;
基于所述接收时间间隔是否位于预设时间区间内,确定所述客户端是否是攻击客户端,所述预设时间区间的区间上限和区间下限是基于分布式拒绝服务攻击的报文发送特征确定的;
基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文。
在一些实施例中,根据以下步骤确定所述第一报文符合所述重传条件:
对所述第一报文对应的会话信息进行哈希运算;
若哈希运算结果与所述首个报文对应的会话信息的哈希运算结果相同,则确定所述第一报文符合所述重传条件。
在一些实施例中,基于所述接收时间间隔是否位于预设时间区间内,确定所述客户端是否是攻击客户端,包括:
若所述接收时间间隔位于所述预设时间区间内,则确定所述客户端不是攻击客户端;
若所述接收时间间隔不位于所述预设时间区间内,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括报文标识时,还包括:
若所述接收时间间隔位于所述预设时间区间内,则对所述第一报文的报文标识和所述首个报文的报文标识进行比对;
若所述第一报文的报文标识与所述首个报文的报文标识不同,则确定所述客户端不是攻击客户端;
若所述第一报文的报文标识与所述首个报文的报文标识相同,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括源IP地址时,还包括:
在所述接收时间间隔小于所述区间下限时,对所述第一报文的源IP地址和所述首个报文的源IP地址进行比对;
若所述第一报文的源IP地址和所述首个报文的源IP地址相同,则确定所述客户端是攻击客户端;
若所述第一报文的源IP地址和所述首个报文的源IP地址不同,则确定所述客户端不是攻击客户端。
在一些实施例中,基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文,包括:
若确定所述客户端不是攻击客户端,则将所述第一报文对应的会话信息添加到会话列表中,并将所述第一报文发送给服务器进行处理;
若确定所述客户端是攻击客户端,则丢弃所述第一报文。
在一些实施例中,在将所述第一报文对应的会话信息添加到会话列表中之后,还包括:
若接收到的第二报文对应的会话信息包含在所述会话列表中,则将所述第二报文发送给所述服务器进行处理。
第二方面,本申请实施例提供一种报文处理装置,包括:
接收模块,用于接收到客户端发送的任一会话的首个报文时,保存所述首个报文的报文信息,丢弃所述首个报文,所述报文信息至少包括接收时间;
确定模块,用于若接收到的第一报文符合所述首个报文的重传条件,则基于所述接收时间和所述第一报文的接收时间,确定所述第一报文与所述首个报文的接收时间间隔;
判定模块,用于基于所述接收时间间隔是否位于预设时间区间内,确定所述客户端是否是攻击客户端,所述预设时间区间的区间上限和区间下限是基于分布式拒绝服务攻击的报文发送特征确定的;
处理模块,用于基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文。
在一些实施例中,所述确定模块具体用于根据以下步骤确定所述第一报文符合所述重传条件,
对所述第一报文对应的会话信息进行哈希运算;
若哈希运算结果与所述首个报文对应的会话信息的哈希运算结果相同,则确定所述第一报文符合所述重传条件。
在一些实施例中,所述判定模块具体用于,
若所述接收时间间隔位于所述预设时间区间内,则确定所述客户端不是攻击客户端;
若所述接收时间间隔不位于所述预设时间区间内,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括报文标识时,所述判定模块还用于,
若所述接收时间间隔位于所述预设时间区间内,则对所述第一报文的报文标识和所述首个报文的报文标识进行比对;
若所述第一报文的报文标识与所述首个报文的报文标识不同,则确定所述客户端不是攻击客户端;
若所述第一报文的报文标识与所述首个报文的报文标识相同,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括源IP地址时,所述判定模块还用于,
在所述接收时间间隔小于所述区间下限时,对所述第一报文的源IP地址和所述首个报文的源IP地址进行比对;
若所述第一报文的源IP地址和所述首个报文的源IP地址相同,则确定所述客户端是攻击客户端;
若所述第一报文的源IP地址和所述首个报文的源IP地址不同,则确定所述客户端不是攻击客户端。
在一些实施例中,所述处理模块具体用于,
若确定所述客户端不是攻击客户端,则将所述第一报文对应的会话信息添加到会话列表中,并将所述第一报文发送给服务器进行处理;
若确定所述客户端是攻击客户端,则丢弃所述第一报文。
在一些实施例中,所述处理模块还用于,
在将所述第一报文对应的会话信息添加到会话列表中之后,若接收到的第二报文对应的会话信息包含在所述会话列表中,则将所述第二报文发送给所述服务器进行处理。
第三方面,本申请实施例提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
存储器存储有可被至少一个处理器执行的计算机程序,该计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述报文处理方法。
第四方面,本申请实施例提供一种存储介质,当所述存储介质中的计算机程序由电子设备的处理器执行时,所述电子设备能够执行上述报文处理方法。
本申请实施例中,防护设备接收到客户端发送的任一会话的收个报文时,保存该首个报文的报文信息并丢弃该首个报文,报文信息至少包括接收时间,若接收到了首个报文的第一报文,则基于接收时间和第一报文的接收时间,确定第一报文与首个报文的接收时间间隔,基于接收时间间隔是否位于预设时间区间内,确定客户端是否为攻击客户端,基于确定的客户端是否为攻击客户端的结果,处理第一报文,其中,预设时间区间的区间上限和区间下限是基于DDoS的报文发送特征确定的。这样,基于DDoS的报文发送特征预先确定第一报文合理的时间区间,基于时间区间和接收到的第一报文,借助于重传机制验证客户端是否是攻击客户端,不需要再进行反弹报文即可防御DDoS,既可避免回程链路拥塞又可避免影响防护设备的性能,因此,对DDoS的防御方式更合理。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种报文处理方法的应用场景示意图;
图2为本申请实施例提供的一种报文处理方法的流程图;
图3为本申请实施例提供的又一种报文处理方法的流程图;
图4为本申请实施例提供的一种报文处理方法的交互流程图;
图5为本申请实施例提供的一种报文处理装置的结构示意图;
图6为本申请实施例提供的一种用于实现报文处理方法的电子设备的硬件结构示意图。
具体实施方式
为了解决现有技术中在防御DDoS时存在的防御不合理的问题,本申请实施例提供了一种报文处理方法、装置、电子设备及存储介质。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1为本申请实施例提供的一种报文处理方法的应用场景图,01为攻击客户端,02为正常客户端(即不是攻击客户端),03为防护设备,04为受保护区域,受保护区域中包括服务器1、服务器2……服务器n,其中攻击客户端01、正常客户端02以及防护设备03属于外部网络,受保护区域04属于内部网络。
实际应用中,攻击客户端01和正常客户端02向任一服务器发送的报文均先到达防护设备03,防护设备03可对接收到的报文进行分析处理,基于处理结果确定报文对应的客户端是否属于攻击客户端,若确定报文对应的客户端属于攻击客户端,则丢弃攻击报文,若确定报文对应的客户端不属于攻击客户端,则将报文发送给对应的服务器即允许报文达到对应的服务器。
这样,防护设备对防护区域中的服务器能够起到很好的防护作用,以到达DDOS防御如防御SYN、SYN-ACK、ACK、DNS、HTTP flood等攻击的目的。
在介绍了本申请实施例的应用场景后,下面以具体实施例对本申请提出的报文处理方法进行说明。
图2为本申请实施例提供的一种报文处理方法的流程图,该方法应用于图1的防护设备中,且该方法包括以下步骤。
在步骤201中,接收到客户端发送的任一会话的首个报文时,保存首个报文的报文信息,丢弃首个报文,报文信息至少包括接收时间。
具体实施时,当接收到客户端发送的任一报文时,可对该报文对应的会话信息进行哈希计算,以哈希计算结果作为Key,查询Key对应的Value,若Value中没有任何的报文信息,则确定这个报文是一个会话的首个报文。
一般地,报文使用的协议包括传输控制协议(Transmission Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)。若上述报文是TCP报文(即报文使用的协议为TCP),则对应的会话信息可以是:源IP+源端口+IP协议;若上述报文是UDP报文(即报文使用的协议为UDP),则对应的会话信息可以是:源IP+源端口+DNS域名。
这样,可处理的报文类型(如TCP报文和UDP报文)比较丰富,利于提升防御效果。
在步骤202中,若接收到的第一报文符合首个报文的重传条件,则基于接收时间和第一报文的接收时间,确定第一报文与首个报文的接收时间间隔。
一般地,TCP是有重传机制的,而UDP是没有重传机制的,因此,当首个报文是TCP报文时,正常情况下是可以收到首个报文的重传报文的,而当首个报文是UDP报文时,是无法收到首个报文的重传报文的。为了能够处理这两种类型的报文,可设置一个重传条件,只要接收到的第一报文符合这个重传条件,就可判定第一报文是首个报文的重传报文。
具体实施时,可对接收到的第一报文对应的会话信息进行哈希运算,若哈希运算结果与首个报文的会话信息的哈希运算结果相同,则确定第一报文符合重传条件。类似地,当第一报文对应的协议不同时,对应的会话信息也不同。即,若第一报文是TCP报文,则第一报文对应的会话信息是:源IP+源端口+IP协议;若第一报文是UDP报文,则第一报文对应的会话信息是:源IP+源端口+DNS域名。
在步骤203中,基于接收时间间隔是否位于预设时间区间内,确定客户端是否是攻击客户端,预设时间区间的区间上限和区间下限是基于DDoS的报文发送特征确定的。
一般地,DDoS包括快速攻击和慢速攻击,其中,快速攻击是指攻击客户端在短时间内发送大量报文而不管是否收到回包;慢速攻击是指攻击客户端每隔较长一段时间发送一个报文,以保持与服务器之间的会话连接,从而耗尽服务器的连接数。基于DDoS中的这些报文发送特征和正常情况下重传报文的接收时间间隔,可确定出一个合理的接收时间间隔下限(即区间上限)和一个合理的接收时间间隔上线(即区间下限),从而得到一个预设时间区间。
后续,在得到接收时间间隔时,可将接收时间间隔与预设时间区间进行比较,若接收时间间隔位于预设时间区间内,则可确定客户端不是攻击客户端;若接收时间间隔不位于预设时间区间内,则可确定客户端是攻击客户端。这样,借助于DDoS中的报文发送特征和报文重传机制即可有效防御DDoS。
在步骤204中,基于确定的客户端是否是攻击客户端的结果,处理第一报文。
具体实施时,若确定客户端不是攻击客户端,则可将第一报文对应的会话信息添加到会话列表中,并将第一报文发送给服务器进行处理;若确定客户端是攻击客户端,则可丢弃第一报文,从而避免服务器被攻击。
图3为本申请实施例提供的又一种报文处理方法的流程图,该方法应用于图1中的防护设备中,且该方法包括以下步骤:
在步骤301中,接收到客户端发送的任一会话的首个报文时,保存首个报文的报文信息,丢弃首个报文,报文信息包括接收时间、源IP地址和报文标识。
其中,报文标识如报文的序列号,一个客户端发送的任一报文的序列号可用这个客户端的源IP地址+这个报文的序列号来表示。
在步骤302中,若接收到的第一报文符合首个报文的重传条件,则基于接收时间和第一报文的接收时间,确定第一报文与首个报文的接收时间间隔。
在步骤303中,判断接收时间间隔是否小于预设时间区间的区间下限,若是,则进入步骤304,若否,则进入步骤307。
其中,预设时间区间的区间上限和区间下限是基于DDOS中的报文发送特征确定的。
在步骤304中,判断第一报文的源IP地址和首个报文的源IP地址是否相同,若是,则进入步骤305;若否,则进入步骤306。
考虑到哈希碰撞的问题,即在极少数情况下可能会出现不同的源IP对应的哈希运算结果相同的情况,即Hash(源IP1+源端口1+IP协议1)=Hash(源IP2+源端口1+IP协议1)。为了避免哈希碰撞引入的误判,在确定接收时间间隔小于预设时间区间的区间下限后,还可借助于第一报文和首个报文的源IP地址来判断客户端是否是攻击客户端。
具体实施时,可判断第一报文的源IP地址和首个报文的源IP地址是否相同,若第一报文与首个报文的源IP相同,则说明发送第一报文与首个报文的客户端是同一客户端,即未发生哈希碰撞,进而可判定对应客户端确实是攻击客户端;若第一报文与首个报文的源IP不同,则说明发送第一报文与首个报文的客户端不是同一客户端,而不同客户端对应的会话信息经过哈希运算却得到了相同的哈希运算结果,则说明发生了哈希碰撞,进而可判定对应客户端不是攻击客户端。
在步骤305中,确定客户端是攻击客户端并丢弃第一报文。
这样,可避免攻击客户端的报文到达服务器,从而对服务器起到保护作用。
在步骤306中,确定客户端不是攻击客户端,将第一报文对应的会话信息添加到会话列表中,并将第一报文发送给服务器进行处理。
后续,可由服务器正常处理第一报文。
在步骤307中,判断接收时间间隔是否大于预设时间区间的区间上限,若是,则进入步骤305,若否,则进入步骤308。
在步骤308中,判断第一报文的报文标识与首个报文的报文标识是否相同,若是,则进入步骤305,若否,则进入步骤306。
以报文标识为报文的序列号为例,一般地,一个会话中不同报文的序列号不同,而在某些DDoS攻击类型中,攻击客户端发送的多个报文的序列号是相同的。
基于此,当第一报文与首个报文的接收时间间隔大于预设时间区间上限且小于预设时间区间上限,即处于预设时间区间段内时,还可判断第一报文与首个报文的序列号是否相同,在第一报文与首个报文的序列号相同时,仍可判定对应客户端是攻击客户端;在第一报文与首个报文的序列号不同时,再判定对应客户端是攻击客户端。这样,利于提升判断的准确性,从而提升防御效果。
此外,在上述任一实施例中,在将第一报文对应的会话信息添加到会话列表中之后,若接收到的第二报文对应的会话信息包含在会话列表中,则可直接将第二报文发送给服务器进行处理。这样,方便正常客户端后续发送的报文更快捷地传输至服务器。
另外,在会话结束后,还可将会话列表中这个会话对应的会话信息删除,以节省存储空间。
本申请实施例中,基于DDoS中的报文发送特征确定预设时间区间,根据接收到的第一报文与丢弃的会话的首个报文的接收时间间隔和预设时间区间,判断客户端是否是攻击客户端,在判断结果为是攻击客户端时,还可结合第一报文与首个报文的报文标识是否相同,来进一步判断客户端是否是攻击客户端,判断的准确性比较高。并且,可基于判断结果,直接丢弃攻击客户端发送的报文而放行正常客户端发送的报文,不仅可避免增加回程链路带宽,而且可减少防护设备的处理流程、提高防御性能。另外,本申请实施例提供的报文处理方法是一种通用的DDoS防御方法,对常见的SYN、SYN-ACK、ACK、DNS、HTTP flood等攻击均有较好的防御效果。
图4为本申请实施例提供的又一种报文处理方法的交互流程图,包括以下步骤:
在步骤401中,客户端向防护设备发送报文a1。
在步骤402中,防护设备对报文a1对应的会话信息进行哈希计算。
在步骤403中,防护设备以哈希计算结果为key1,若key1对应的value1中的数据为空,则确定报文a1是一个会话的首个报文。
在步骤404中,防护设备在value1中保存报文a1的报文信息,并丢弃报文a1,其中,报文信息包括报文a1的接收时间、源IP地址和报文标识。
其中,丢弃报文a1的目的是触发非攻击客户端进行报文重传。
在步骤405中,防护设备对接收到的报文a2对应的会话信息进行哈希计算。
在步骤406中,防护设备以哈希计算结果为key2,若key2与key1相同,则判定报文a2与报文a1属于同一会话,在value1中保存报文a2的报文信息,其中,报文信息包括报文a2的接收时间、源IP地址和报文标识。
在步骤407中,防护设备计算报文a2与报文a1的接收时间间隔Δt。
在步骤408中,防护设备判断时间间隔Δt是否小于预设时间区间的区间下限t1,若是,则进入步骤409,若否,则进入步骤413。
在步骤409中,防护设备判断报文a2与报文a1的源IP地址是否相同,若是,则进入步骤410,若否,则进入步骤411。
在步骤410中,防护设备判定客户端是攻击客户端,丢弃报文a2。
在步骤411中,防护设备判定客户端不是攻击客户端。
在步骤412中,防护设备将报文a2发送给服务器。
在步骤413中,防护设备判定时间间隔Δt是否大于预设时间区间的区间上限t2,若是,则进入步骤410,若否,则进入步骤414。
在步骤414中,防护设备判断报文a2与报文a1的报文标识是否相同,若是,则进入步骤410,若否,则进入步骤411。
本申请实施例中,基于报文的重传机制进行DDoS防御,既能够避免对攻击客户端发送的报文进行探测验证,导致反弹流量过大而导致回程链路拥塞,还可减少防护设备的性能损耗,因此,DDoS防御方式更合理。
基于相同的技术构思,本申请实施例还提供一种报文处理装置,报文处理装置解决问题的原理与上述报文处理方法相似,因此报文处理装置的实施可参见报文处理方法的实施,重复之处不再赘述。
图5为本申请实施例提供的一种报文处理装置的结构示意图,包括接收模块501、确定模块502、判定模块503、处理模块504。
接收模块501,用于接收到客户端发送的任一会话的首个报文时,保存所述首个报文的报文信息,丢弃所述首个报文,所述报文信息至少包括接收时间;
确定模块502,用于若接收到的第一报文符合所述首个报文的重传条件,则基于所述接收时间和所述第一报文的接收时间,确定所述第一报文与所述首个报文的接收时间间隔;
判定模块503,用于基于所述接收时间间隔是否位于预设时间区间内,确定所述客户端是否是攻击客户端,所述预设时间区间的区间上限和区间下限是基于分布式拒绝服务攻击的报文发送特征确定的;
处理模块504,用于基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文。
在一些实施例中,所述确定模块502具体用于根据以下步骤确定所述第一报文符合所述重传条件,
对所述第一报文对应的会话信息进行哈希运算;
若哈希运算结果与所述首个报文对应的会话信息的哈希运算结果相同,则确定所述第一报文符合所述重传条件。
在一些实施例中,所述判定模块503具体用于,
若所述接收时间间隔位于所述预设时间区间内,则确定所述客户端不是攻击客户端;
若所述接收时间间隔不位于所述预设时间区间内,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括报文标识时,所述判定模块503还用于,
若所述接收时间间隔位于所述预设时间区间内,则对所述第一报文的报文标识和所述首个报文的报文标识进行比对;
若所述第一报文的报文标识与所述首个报文的报文标识不同,则确定所述客户端不是攻击客户端;
若所述第一报文的报文标识与所述首个报文的报文标识相同,则确定所述客户端是攻击客户端。
在一些实施例中,当所述报文信息还包括源IP地址时,所述判定模块503还用于,
在所述接收时间间隔小于所述区间下限时,对所述第一报文的源IP地址和所述首个报文的源IP地址进行比对;
若所述第一报文的源IP地址和所述首个报文的源IP地址相同,则确定所述客户端是攻击客户端;
若所述第一报文的源IP地址和所述首个报文的源IP地址不同,则确定所述客户端不是攻击客户端。
在一些实施例中,所述处理模块504具体用于,
若确定所述客户端不是攻击客户端,则将所述第一报文对应的会话信息添加到会话列表中,并将所述第一报文发送给服务器进行处理;
若确定所述客户端是攻击客户端,则丢弃所述第一报文。
在一些实施例中,所述处理模块504还用于,
在将所述第一报文对应的会话信息添加到会话列表中之后,若接收到的第二报文对应的会话信息包含在所述会话列表中,则将所述第二报文发送给所述服务器进行处理。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,本申请各实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。各个模块相互之间的耦合可以是通过一些接口实现,这些接口通常是电性通信接口,但是也不排除可能是机械接口或其它的形式接口。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
在介绍了本申请示例性实施方式的报文处理方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
下面参照图6来描述根据本申请的这种实施方式实现的电子设备130。图6显示的电子设备130仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备130以通用电子设备的形式表现。电子设备130的组件可以包括但不限于:上述至少一个处理器131、上述至少一个存储器132、连接不同系统组件(包括存储器132和处理器131)的总线133。
总线133表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器132可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1321和/或高速缓存存储器1322,还可以进一步包括只读存储器(ROM)1323。
存储器132还可以包括具有一组(至少一个)程序模块1324的程序/实用工具1325,这样的程序模块1324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备130也可以与一个或多个外部设备134(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与电子设备130交互的设备通信,和/或与使得该电子设备130能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口135进行。并且,电子设备130还可以通过网络适配器136与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器136通过总线133与用于电子设备130的其它模块通信。应当理解,尽管图中未示出,可以结合电子设备130使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在示例性实施例中,还提供了一种存储介质,当存储介质中的计算机程序由电子设备的处理器执行时,电子设备能够执行上述报文处理方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,本申请的电子设备可以至少包括至少一个处理器,以及与这至少一个处理器通信连接的存储器,其中,存储器存储有可被这至少一个处理器执行的计算机程序,计算机程序被这至少一个处理器执行时可使这至少一个处理器执行本申请实施例提供的任一报文处理方法的步骤。
在示例性实施例中,还提供一种计算机程序产品,当计算机程序产品被电子设备执行时,电子设备能够实现本申请提供的任一示例性方法。
并且,计算机程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、闪存、光纤、光盘只读存储器(Compact Disk Read Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请实施例中用于报文处理的程序产品可以采用CD-ROM并包括程序代码,并可以在计算设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络如局域网(Local AreaNetwork,LAN)或广域网(Wide Area Network,WAN)连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (8)
1.一种报文处理方法,其特征在于,包括:
防护设备接收到客户端发送的任一会话的首个报文时,保存所述首个报文的报文信息,丢弃所述首个报文,所述报文信息包括接收时间、报文标识和源IP地址,所述会话的任一报文使用的协议为传输控制协议TCP或用户数据报协议UDP;
对接收到的第一报文对应的会话信息进行哈希运算,当哈希运算结果与所述首个报文对应的会话信息的哈希运算结果相同时,确定所述第一报文符合所述首个报文的重传条件,并基于所述接收时间和所述第一报文的接收时间,确定所述第一报文与所述首个报文的接收时间间隔;
当所述接收时间间隔位于预设时间区间内时,若所述第一报文的报文标识与所述首个报文的报文标识不同,则确定所述客户端不是攻击客户端,若所述第一报文的报文标识与所述首个报文的报文标识相同,则确定所述客户端是攻击客户端,所述预设时间区间的区间上限和区间下限是基于分布式拒绝服务攻击的报文发送特征确定的;
当所述接收时间间隔小于所述区间下限时,若所述第一报文的源IP地址和所述首个报文的源IP地址相同,则确定所述客户端是攻击客户端,若所述第一报文的源IP地址和所述首个报文的源IP地址不同,则确定所述客户端不是攻击客户端;
当所述接收时间间隔大于所述区间上限时,确定所述客户端是攻击客户端;
基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文。
2.如权利要求1所述的方法,其特征在于,基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文,包括:
若确定所述客户端不是攻击客户端,则将所述第一报文对应的会话信息添加到会话列表中,并将所述第一报文发送给服务器进行处理;
若确定所述客户端是攻击客户端,则丢弃所述第一报文。
3.如权利要求2所述的方法,其特征在于,在将所述第一报文对应的会话信息添加到会话列表中之后,还包括:
若接收到的第二报文对应的会话信息包含在所述会话列表中,则将所述第二报文发送给所述服务器进行处理。
4.一种报文处理装置,其特征在于,包括:
接收模块,用于接收到客户端发送的任一会话的首个报文时,保存所述首个报文的报文信息,丢弃所述首个报文,所述报文信息包括接收时间、报文标识和源IP地址,所述会话的任一报文使用的协议为传输控制协议TCP或用户数据报协议UDP;
确定模块,用于对接收到的第一报文对应的会话信息进行哈希运算,当哈希运算结果与所述首个报文对应的会话信息的哈希运算结果相同时,确定所述第一报文符合所述首个报文的重传条件,并基于所述接收时间和所述第一报文的接收时间,确定所述第一报文与所述首个报文的接收时间间隔;
判定模块,用于当所述接收时间间隔位于预设时间区间内时,若所述第一报文的报文标识与所述首个报文的报文标识不同,则确定所述客户端不是攻击客户端,若所述第一报文的报文标识与所述首个报文的报文标识相同,则确定所述客户端是攻击客户端,所述预设时间区间的区间上限和区间下限是基于分布式拒绝服务攻击的报文发送特征确定的;当所述接收时间间隔小于所述区间下限时,若所述第一报文的源IP地址和所述首个报文的源IP地址相同,则确定所述客户端是攻击客户端,若所述第一报文的源IP地址和所述首个报文的源IP地址不同,则确定所述客户端不是攻击客户端;当所述接收时间间隔大于所述区间上限时,确定所述客户端是攻击客户端;
处理模块,用于基于确定的所述客户端是否是攻击客户端的结果,处理所述第一报文。
5.如权利要求4所述的装置,其特征在于,所述处理模块具体用于,
若确定所述客户端不是攻击客户端,则将所述第一报文对应的会话信息添加到会话列表中,并将所述第一报文发送给服务器进行处理;
若确定所述客户端是攻击客户端,则丢弃所述第一报文。
6.如权利要求5所述的装置,其特征在于,所述处理模块还用于,
在将所述第一报文对应的会话信息添加到会话列表中之后,若接收到的第二报文对应的会话信息包含在所述会话列表中,则将所述第二报文发送给所述服务器进行处理。
7.一种电子设备,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中:
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-3任一所述的方法。
8.一种存储介质,其特征在于,当所述存储介质中的计算机程序由电子设备的处理器执行时,所述电子设备能够执行如权利要求1-3任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210191853.2A CN114567484B (zh) | 2022-02-28 | 2022-02-28 | 一种报文处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210191853.2A CN114567484B (zh) | 2022-02-28 | 2022-02-28 | 一种报文处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114567484A CN114567484A (zh) | 2022-05-31 |
CN114567484B true CN114567484B (zh) | 2024-03-12 |
Family
ID=81716351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210191853.2A Active CN114567484B (zh) | 2022-02-28 | 2022-02-28 | 一种报文处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114567484B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102739683A (zh) * | 2012-06-29 | 2012-10-17 | 杭州迪普科技有限公司 | 一种网络攻击过滤方法及装置 |
KR20190041324A (ko) * | 2017-10-12 | 2019-04-22 | 주식회사 윈스 | Ddos 공격 차단 장치 및 방법 |
CN110198293A (zh) * | 2018-04-08 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 服务器的攻击防护方法、装置、存储介质和电子装置 |
CN110266678A (zh) * | 2019-06-13 | 2019-09-20 | 深圳市腾讯计算机系统有限公司 | 安全攻击检测方法、装置、计算机设备及存储介质 |
CN110519265A (zh) * | 2019-08-27 | 2019-11-29 | 新华三信息安全技术有限公司 | 一种防御攻击的方法及装置 |
CN110798451A (zh) * | 2019-09-29 | 2020-02-14 | 新华三信息安全技术有限公司 | 一种安全认证的方法及装置 |
CN111970308A (zh) * | 2020-09-03 | 2020-11-20 | 杭州安恒信息技术股份有限公司 | 一种防护SYN Flood攻击的方法、装置及设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7609625B2 (en) * | 2005-07-06 | 2009-10-27 | Fortinet, Inc. | Systems and methods for detecting and preventing flooding attacks in a network environment |
US9485243B2 (en) * | 2014-05-23 | 2016-11-01 | Google Inc. | Securing a wireless mesh network via a chain of trust |
-
2022
- 2022-02-28 CN CN202210191853.2A patent/CN114567484B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102739683A (zh) * | 2012-06-29 | 2012-10-17 | 杭州迪普科技有限公司 | 一种网络攻击过滤方法及装置 |
KR20190041324A (ko) * | 2017-10-12 | 2019-04-22 | 주식회사 윈스 | Ddos 공격 차단 장치 및 방법 |
CN110198293A (zh) * | 2018-04-08 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 服务器的攻击防护方法、装置、存储介质和电子装置 |
CN110266678A (zh) * | 2019-06-13 | 2019-09-20 | 深圳市腾讯计算机系统有限公司 | 安全攻击检测方法、装置、计算机设备及存储介质 |
CN110519265A (zh) * | 2019-08-27 | 2019-11-29 | 新华三信息安全技术有限公司 | 一种防御攻击的方法及装置 |
CN110798451A (zh) * | 2019-09-29 | 2020-02-14 | 新华三信息安全技术有限公司 | 一种安全认证的方法及装置 |
CN111970308A (zh) * | 2020-09-03 | 2020-11-20 | 杭州安恒信息技术股份有限公司 | 一种防护SYN Flood攻击的方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114567484A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10404742B2 (en) | Coordinated detection and differentiation of denial of service attacks | |
EP2739002B1 (en) | Systems and methods for transparently monitoring network traffic for denial of service attacks | |
EP1433076B1 (en) | Protecting against distributed denial of service attacks | |
EP2289221B1 (en) | Network intrusion protection | |
CN109005175B (zh) | 网络防护方法、装置、服务器及存储介质 | |
CN110198293B (zh) | 服务器的攻击防护方法、装置、存储介质和电子装置 | |
CN110266650B (zh) | Conpot工控蜜罐的识别方法 | |
US11349866B2 (en) | Hardware acceleration device for denial-of-service attack identification and mitigation | |
CN111314328A (zh) | 网络攻击防护方法、装置、存储介质及电子设备 | |
CA3159619A1 (en) | Packet processing method and apparatus, device, and computer-readable storage medium | |
Mohammadi et al. | SYN‐Guard: An effective counter for SYN flooding attack in software‐defined networking | |
CN110213204B (zh) | 攻击防护方法及装置、设备及可读存储介质 | |
Boppana et al. | Analyzing the vulnerabilities introduced by ddos mitigation techniques for software-defined networks | |
CN110661763B (zh) | 一种DDoS反射攻击防御方法、装置及其设备 | |
RU2358395C2 (ru) | Способ уменьшения времени прохождения исполняемого файла через контрольную точку | |
EP3618396B1 (en) | Protection method and system for http flood attack | |
CN114567484B (zh) | 一种报文处理方法、装置、电子设备及存储介质 | |
Hubballi et al. | Detecting TCP ACK storm attack: a state transition modelling approach | |
CN110035041B (zh) | 一种识别应用攻击源的方法和设备 | |
Niemi et al. | Evading deep inspection for fun and shell | |
CN114124489B (zh) | 防止流量攻击的方法、清洗装置、设备和介质 | |
US11909762B2 (en) | Thwarting SYN flood DDOS attacks | |
CN112565309B (zh) | 报文处理方法、装置、设备以及存储介质 | |
CN115499216B (zh) | 防御攻击方法及装置、存储介质及电子设备 | |
WO2024099078A1 (zh) | 检测攻击流量的方法及相关设备 |
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 |