CN112822262B - 报文处理方法和装置、报文处理设备及存储介质 - Google Patents
报文处理方法和装置、报文处理设备及存储介质 Download PDFInfo
- Publication number
- CN112822262B CN112822262B CN202110003627.2A CN202110003627A CN112822262B CN 112822262 B CN112822262 B CN 112822262B CN 202110003627 A CN202110003627 A CN 202110003627A CN 112822262 B CN112822262 B CN 112822262B
- Authority
- CN
- China
- Prior art keywords
- message
- session
- request
- packet
- request confirmation
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供的报文处理方法和装置、报文处理设备及存储介质,涉及通信技术领域。在本申请中,首先,基于目标设备发送的第一请求确认报文建立第一会话;其次,基于第一请求确认报文向目标设备发送请求报文,基于请求报文建立第二会话;然后,在获取到第二请求确认报文时,确定第二请求确认报文与第一会话和第二会话之间的关系;之后,若第二请求确认报文属于第二会话,基于第二请求确认报文和请求报文对第二会话进行验证;最后,若第二请求确认报文属于第一会话,在第二会话已经通过验证时,将第二请求确认报文的源互联网协议地址确定为合法地址。通过上述方法,可以改善现有的报文地址验证技术存在的适用范围较窄问题。
Description
技术领域
本申请涉及领域,具体而言,涉及一种报文处理方法和装置、报文处理设备及存储介质。
背景技术
在通信技术领域中,不同设备之间,在进行数据报文交互之前,一般会先基于协议报文进行交互,以建立连接,如TCP协议中基于协议报文进行的三次握手等。基于此机制,在一些情况下,设备可能会受到大量无效报文的攻击。其中,在一种常规的方案,可以在对报文的源互联网协议地址的合法性进行校验之后,返回连接重置报文。
经发明人研究发现,基于上述连接重置报文的存在,可能会导致设备之间难以进行有效的连接的问题,如此,使得上述的源互联网协议地址合法性验证技术存在适用范围较窄问题。
发明内容
有鉴于此,本申请的目的在于提供一种报文处理方法和装置、报文处理设备及存储介质,以改善现有的报文地址验证技术中存在的适用范围较窄问题。
为实现上述目的,本申请实施例采用如下技术方案:
一种报文处理方法,应用于报文处理设备,该报文处理设备通信连接有目标服务器,用于将获取的源互联网协议地址为合法地址的请求确认报文发送给该目标服务器,所述方法包括:
基于目标设备发送的第一请求确认报文建立第一会话;
基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话,其中,该第二会话不同于所述第一会话;
在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系;
若所述第二请求确认报文属于所述第二会话,则基于该第二请求确认报文和所述请求报文对该第二会话进行验证;
若所述第二请求确认报文属于所述第一会话,则在所述第二会话已经通过验证时,将该第二请求确认报文的源互联网协议地址确定为合法地址。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话的步骤,包括:
基于预先确定的源端口和所述第一请求确认报文中的第一报文五元组信息确定第二报文五元组信息,其中,该源端口与该第一报文五元组信息中的目的端口不同;
基于所述第二报文五元组信息向所述目标设备发送请求报文,并基于该第二报文五元组信息建立第二会话,其中,所述第一会话基于所述第一报文五元组信息建立。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述基于预先确定的源端口和所述第一请求确认报文中的第一报文五元组信息确定第二报文五元组信息的步骤,包括:
在目标端口范围包括的端口中确定一个端口,其中,所述第一请求确认报文中第一报文五元组信息中的目的端口为该目标端口范围外的端口;
将确定出的所述端口作为源端口,并结合所述第一报文五元组信息中目的端口以外的其它信息,确定第二报文五元组信息。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述方法还包括:
基于所述第一会话确定是否需要丢弃所述第一请求确认报文;
若确定不需要丢弃所述第一请求确认报文,则执行所述基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话的步骤。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述基于所述第一会话确定是否需要丢弃所述第一请求确认报文的步骤,包括:
确定是否已经对所述第一会话进行预设的过滤处理;
若已经对所述第一会话进行所述预设的过滤处理,则确定不需要丢弃所述第一请求确认报文。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述确定是否已经对所述第一会话进行预设的过滤处理的步骤,包括:
确定是否已经对所述第一会话进行首包丢弃处理;
若已经对所述第一会话进行所述首包丢弃处理,则确定所述第一请求确认报文是否属于首包重传报文;
若所述第一请求确认报文属于所述首包重传报文,则确定已经对所述第一会话进行预设的过滤处理。
在本申请实施例较佳的选择中,在上述报文处理方法中,所述方法还包括:
若所述第二请求确认报文属于所述第二会话,则基于该第二请求确认报文向所述目标设备发送连接重置报文,以终止该目标设备与所述报文处理设备之间属于该第二会话的报文交互。
本申请实施例还提供了一种报文处理装置,应用于报文处理设备,该报文处理设备通信连接有目标服务器,用于将获取的源互联网协议地址为合法地址的请求确认报文发送给该目标服务器,所述装置包括:
第一报文处理模块,用于基于目标设备发送的第一请求确认报文建立第一会话,其中,该第一请求确认报文的源互联网协议地址未被确定为合法地址;
第二报文处理模块,用于基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话,其中,该第二会话不同于所述第一会话;
关系确定模块,用于在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系;
会话验证模块,用于在所述第二请求确认报文属于所述第二会话时,基于该第二请求确认报文和所述请求报文对该第二会话进行验证;
地址确定模块,用于在所述第二请求确认报文属于所述第一会话时,且在所述第二会话已经通过验证时,将该第二请求确认报文的源互联网协议地址确定为合法地址。
在上述基础上,本申请实施例还提供了一种报文处理设备,包括:
存储器,用于存储计算机程序;
与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现上述的报文处理方法。
在上述基础上,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被执行时,实现上述的报文处理方法。
本申请提供的报文处理方法和装置、报文处理设备及存储介质,通过在获取到目标设备发送的第一请求确认报文之后,建立第一会话,然后,基于该第一请求确认报文向目标设备发送请求报文,并基于该请求报文建立第二会话,从而使得可以基于该第二会话是否通过验证,确定属于第一会话的其它请求确认报文(如第二请求确认报文)的源互联网协议地址是否为合法地址。基于此,由于第二会话的存在,使得可以不用对第一会话进行重置连接处理(即不用发送连接重置报文),使得可以避免由于目标设备不具备连接重置报文的处理能力(程序)而导致适用范围较窄的问题。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
图1为本申请实施例提供的报文处理设备的结构框图。
图2为本申请实施例提供的报文处理方法的流程示意图。
图3为图2中步骤S120包括的子步骤的流程示意图。
图4为图3中步骤S121包括的子步骤的流程示意图。
图5为本申请实施例提供的报文处理装置的方框示意图。
图标:10-报文处理设备;12-存储器;14-处理器;100-报文处理装置;110-第一报文处理模块;120-第二报文处理模块;130-关系确定模块;140-会话验证模块;150-地址确定模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本申请的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,本申请实施例提供了一种报文处理设备10,可以包括存储器12、处理器14和报文处理装置100。
其中,所述存储器12和处理器14之间直接或间接地电性连接,以实现数据的传输或交互。例如,相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述报文处理装置100包括至少一个可以软件或固件(firmware)的形式存储于所述存储器12中的软件功能模块。所述处理器14用于执行所述存储器12中存储的可执行的计算机程序,例如,所述报文处理装置100所包括的软件功能模块及计算机程序等,以实现本申请实施例提供的报文处理方法,从而对报文的源互联网协议地址进行合法性验证。
可选地,所述存储器12可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。
并且,所述处理器14可以是一种通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)等。
可以理解,图1所示的结构仅为示意,所述报文处理设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
例如,所述报文处理设备10还可以包括用于与其它设备(如基于请求报文、请求确认报文进行交互的目标设备,以及该目标设备需要访问的服务器等)进行信息交互的通信单元。
并且,所述报文处理设备10的具体类型也不受限制,只要具有一定的数据处理能力即可,例如,可以是一种服务器等。
结合图2,本申请实施例还提供一种报文处理方法,可应用于上述的报文处理设备10。其中,所述报文处理方法有关的流程所定义的方法步骤可以由所述报文处理设备10实现。
下面将对图2所示的具体流程,进行详细阐述。
步骤S110,基于目标设备发送的第一请求确认报文建立第一会话。
在本实施例中,在获得目标设备发送的第一请求确认报文之后,所述报文处理设备10可以基于该第一请求确认报文建立第一会话。
步骤S120,基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话。
在本实施例中,在获得所述第一请求确认报文之后,所述报文处理设备10可以基于该第一请求确认报文向所述目标设备发送请求报文,并且,还可以基于该请求报文建立第二会话。
其中,所述第二会话可以不同于所述第一会话。
步骤S130,在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系。
在本实施例中,在基于步骤S110和步骤S120分别建立所述第一会话和所述第二会话之后,所述报文处理设备10获取所述目标设备发送的第二请求确认报文,然后,可以确定该第二请求确认报文与该第一会话和该第二会话之间的关系,即确定该第二请求确认报文是属于该第一会话,还是属于该第二会话。
其中,一方面,在确定所述第二请求确认报文属于所述第二会话之后,可以执行步骤S140;另一方面,在确定所述第二请求确认报文属于所述第一会话之后,可以执行步骤S150。
步骤S140,基于所述第二请求确认报文和所述请求报文,对所述第二会话进行验证。
在本实施例中,在基于步骤S130确定所述第二请求确认报文属于所述第二会话之后,所述报文处理设备10可以基于该第二请求确认报文和所述请求报文,对该第二会话进行验证,以确定该第二会话是否通过验证。
步骤S150,在所述第二会话已经通过验证时,将所述第二请求确认报文的源互联网协议地址,确定为合法地址。
在本实施例中,在基于S130确定所述第二请求确认报文属于所述第一会话之后,所述报文处理设备10可以先确定所述第二会话是否已经通过验证,然后,在该第二会话已经通过验证时,将所述第二请求确认报文的源互联网协议地址确定为合法地址。如此,所述报文处理设备10在获取到所述目标设备发送的报文之后,若该报文的源互联网协议地址为合法地址,可以将该报文发送给通信连接的目标服务器,从而实现该目标设备与该目标服务器的报文交互(如将该目标服务器回应的报文发送给该目标设备)。
基于上述方法,由于第二会话的存在,使得可以不用对第一会话进行重置连接处理(即不用发送连接重置报文),使得可以避免由于目标设备不具备连接重置报文的处理能力(程序)而导致适用范围较窄的问题。
第一方面,对于步骤S110需要说明的是,基于建立所述第一会话的具体方式不受限制,可以根据实际应用需求进行选择,如基于所述第一请求确认报文的具体内容不同,可以有不同的选择。
例如,在一种可以替代的示例中,所述第一请求确认报文可以基于传输控制协议(TCP,Transmission Control Protocol)的SYN-ACK报文,且该第一请求确认报文中携带有报文五元组信息(在其它示例中,该第一请求确认报文可以携带有报文七元组信息),如第一报文五元组信息。
其中,所述第一报文五元组信息可以包括协议号、源互联网协议地址(源IP地址)、目的互联网协议地址(目的IP地址)、源端口地址、目的端口地址。如此,可以基于该第一报文五元组信息建立所述第一会话。
第二方面,对于步骤S120需要说明的是,发送所述请求报文和建立所述第二会话的具体方式不受限制,可以根据实际应用需求进行选择。
例如,在一种可以替代的示例中,所述第一请求确认报文可以中携带有第一五元组信息,基于此,结合图3,步骤S120可以包括步骤S121和步骤S122,具体内容如下所述。
步骤S121,基于预先确定的源端口和所述第一请求确认报文中的第一报文五元组信息确定第二报文五元组信息。
在本实施例中,在获取到所述第一请求确认报文之后,可以先获得该第一请求确认报文中的第一报文五元组信息,然后,可以基于该第一报文五元组信息和预设确定的源端口(即所述报文处理设备10的一个端口),确定出一个不同于该第一报文五元组信息的报文五元组信息。如此,可以得到第二报文五元组信息。
其中,所述源端口与所述第一报文五元组信息中的目的端口不同。
步骤S122,基于所述第二报文五元组信息向所述目标设备发送请求报文,并基于该第二报文五元组信息建立第二会话。
在本实施例中,在基于步骤S121确定所述第二报文五元组信息之后,可以基于该第二报文五元组信息生成请求报文(如基于传输控制协议的SYN报文),然后,将该请求报文发送给所述目标设备,并基于该第二报文五元组信息建立第二会话。
其中,由于所述源端口与所述第一报文五元组信息中的目的端口不同,因而,基于所述第一报文五元组信息建立的所述第一会话,不同于基于该源端口建立的所述第二会话。
可选地,在上述示例中,基于步骤S121确定所述第二报文五元组信息的具体方式不受限制,可以根据实际应用需求进行选择。
例如,可以在所述报文处理设备10包括的多个端口中,任意选择一个不同于所述第一报文五元组信息中的目的端口的端口,作为所述源端口,从而确定所述第二报文五元组信息。
又例如,在另一种可以替代的示例中,为了避免发生端口资源冲突的问题,以保证其它报文交互可以有效完成,结合图4,步骤S121可以包括步骤S121a和步骤S121b,具体内容如下所述。
步骤S121a,在目标端口范围包括的端口中确定出一个端口。
在本实施例中,在获取到所述第一请求确认报文之后,可以先在预设的目标端口范围包括的至少一个端口中,确定出一个端口。
其中,所述第一请求确认报文中的第一报文五元组信息中的目的端口为所述目标端口范围外的端口,也就是说,一般情况下,其它报文进行交互时采用的端口可以是该目标端口范围外的端口。
步骤S121b,将确定出的所述端口作为源端口,并结合所述第一报文五元组信息中目的端口以外的其它信息,确定第二报文五元组信息。
在本实施例中,在基于步骤S121a确定出一个端口后,可以将该端口作为源端口,如此,可以结合所述第一报文五元组信息中目的端口以外的其它信息,确定第二报文五元组信息。
也就是说,所述源端口可以作为所述第二报文五元组信息中的源端口,所述第一报文五元组信息中的源端口可以作为所述第二报文五元组信息中的目的端口,所述第一报文五元组信息中的目的互联网协议地址可以作为所述第二报文五元组信息中的源互联网协议地址,所述第一报文五元组信息中的源互联网协议地址可以作为所述第二报文五元组信息中的目的互联网协议地址。如此,可以得到所述第二报文五元组信息。
可以理解的是,在上述示例中,所述目标端口范围的具体范围不受限制,可以根据实际应用需求进行选择。
例如,经过本申请的发明人研究发现,在进行正常的报文交互时,一般不会采用端口号在1024以下的端口,因而,所述目标端口范围可以为[0,1024],在一种可以替代的示例中,确定的所述源端口的端口号可以为1023,所述第一报文五元组信息中的目的端口的端口号可以为5000。
第三方面,对于步骤S130需要说明的是,确定所述第二请求确认报文与所述第一会话和所述第二会话之间的关系的具体方式不受限制,可以根据实际应用需求进行选择,如基于建立所述第一会话和所述第二会话的具体内容不同,可以有不同的选择。
例如,在一种可以替代的示例中,所述第一会话和所述第二会话可以基于不同的报文五元组信息建立,如上述的第一报文五元组信息和上述的第二报文五元组信息。如此,在获取到所述第二请求确认报文信息之后,可以基于该第二请求确认报文信息中的报文五元组信息与该第一报文五元组信息和该第二报文五元组信息进行匹配。
基于此,若所述第二请求确认报文信息中的报文五元组信息与所述第一报文五元组信息匹配,可以确定该第二请求确认报文信息属于所述第一会话。若所述第二请求确认报文信息中的报文五元组信息与所述第二报文五元组信息匹配,可以确定该第二请求确认报文信息属于所述第二会话。
第四方面,对于步骤S140需要说明的是,对所述第二会话进行验证的具体方式不受限制,可以根据实际应用需求进行选择。
例如,基于所述请求报文和所述第二请求确认报文中携带的具体信息不同,可以有不同的选择。基于此,在一种可以替代的示例中,所述报文处理设备10在生成所述请求报文时,可以生成一个随机数,并将该随机数携带在该请求报文中,如此,所述目标设备在接收到该请求报文之后,可以得到该随机数,然后,基于该随机数生成一个确认数(如随机数+1),并将该随机数携带在所述第二请求确认报文中。
基于此,所述报文处理设备10在获取到第二请求确认报文之后,可以解析得到该第二请求确认报文中确认数(也可以称为确认号),然后,判断该确认数与所述请求报文中的随机数是否具有特定关系(如前述的随机数+1=确认数),若具有该特定关系,则确定所述第二会话验证通过,说明该第二请求确认报文中的源互联网协议地址并不是伪造的。
第五方面,对于步骤S150需要说明的是,在所述第二请求确认报文属于所述第一会话,但是所述第二会话还未通过验证时,对该第二请求确认报文的具体处理方式不受限制,可以根据实际应用需求进行选择。
例如,在一种可以替代的示例中,在所述第二请求确认报文属于所述第一会话,但是所述第二会话还未通过验证时,可以进行等待,直到所述第二会话通过验证,以确定该第二请求确认报文中的源互联网协议地址为合法地址,或者,在等待预设时长之后,若该第二会话还未通过验证,可以确定该第二请求确认报文中的源互联网协议地址为非合法地址。
并且,在基于步骤S150将所述第二请求确认报文的源互联网协议地址确定为合法地址之后,可以将该源互联网协议地址加入预设的合法地址集合中,如此,在之后获取到其它第一请求确认报文时,可以直接判断该其它第一请求确认报文中的源互联网协议地址是否属于该合法地址集合,若该源互联网协议地址属于该合法地址集合,则确定该源互联网协议地址为合法地址,然后,可以将该其它第一请求确认报文转发给所述目标服务器。
在上述示例的基础上,为了提高对攻击报文(源互联网协议地址为非法地址的第一请求确认报文)的拦截效率,以及降低所述报文处理设备10基于建立的会话对报文的源互联网协议地址进行验证消耗的资源,在一种可以替代的示例中,所述报文处理方法还可以包括以下步骤:
基于所述第一会话确定是否需要丢弃所述第一请求确认报文。
也就是说,在确定不需要丢弃所述第一请求确认报文时,可以执行所述基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话的步骤,即执行步骤S120。在确定需要丢弃所述第一请求确认报文时,可以丢弃该第一请求确认报文,即不执行步骤S120。
对于上述步骤,需要说明的是,确定是否需要丢弃所述第一请求确认报文的具体方式不受限制,可以根据实际应用需求进行选择。
例如,在一种可以替代的示例中,可以建立一定的过滤机制以拦截攻击报文。基于此,在一种应用示例中,上述确定是否需要丢弃所述第一请求确认报文的步骤,可以包括以下子步骤:
子步骤一,确定是否已经对所述第一会话进行预设的过滤处理;
子步骤二,若已经对所述第一会话进行所述预设的过滤处理,则确定不需要丢弃所述第一请求确认报文。
其中,若确定还未对所述第一会话进行所述预设的过滤处理,可以确定需要丢弃所述第一请求确认报文。
可选地,基于上述子步骤一确定是否已经对所述第一会话进行预设的过滤处理的具体方式不受限制,可以根据实际应用需求进行选择。
例如,在一种可以替代的示例中,可以通过确定是否对所述第一会话进行首包丢弃处理,以确定是否已经对所述第一会话进行预设的过滤处理。
其中,若确定未对所述第一会话进行首包丢弃处理,则确定未对所述第一会话进行预设的过滤处理。若确定已经对所述第一会话进行首包丢弃处理,则确定已经对所述第一会话进行预设的过滤处理。
又例如,在另一种可以替代的示例中,上述子步骤一可以包括以下子步骤,以确定是否已经对所述第一会话进行预设的过滤处理:
首先,可以确定是否已经对所述第一会话进行首包丢弃处理;
其次,若已经对所述第一会话进行所述首包丢弃处理,可以确定所述第一请求确认报文是否属于首包重传报文;
然后,若所述第一请求确认报文属于所述首包重传报文,可以确定已经对所述第一会话进行预设的过滤处理。
其中,所述第一会话基于报文五元组信息建立,所述首包丢弃处理可以是指,将第一次获取到携带有该报文五元组信息的第一请求确认报文进行丢弃,如此,在第二次获取到携带有该报文五元组信息的第二请求确认报文时,可以认为已经对该第一会话进行首包丢弃处理。
并且,所述首包重传报文可以是指,所述第一请求确认报文中的协议号与基于首包丢弃处理丢弃的第一请求确认报文中的协议号相同。
也就是说,若所述第一请求确认报文中的协议号与基于首包丢弃处理丢弃的第一请求确认报文中的协议号相同,可以认为该第一请求确认报文属于首包重传报文。若所述第一请求确认报文中的协议号与基于首包丢弃处理丢弃的第一请求确认报文中的协议号不同,可以认为该第一请求确认报文不属于首包重传报文,即前者不是基于对后者的重新发送而获得。
在上述示例的基础上,为了避免因维护所述第二会话而导致资源浪费的问题,在所述第二请求确认报文属于所述第二会话,且确定所述第二会话验证通过之后,所述报文处理方法还可以包括以下步骤:
基于所述第二请求确认报文向所述目标设备发送连接重置报文,以终止该目标设备与所述报文处理设备10之间属于所述第二会话的报文交互。
其中,在传输控制协议中,所述连接重置报文可以是指RST(复位)报文,即接收到该连接重置报文的目标设备可以终止与发送该连接重置报文的设备(如所述报文处理设备10)基于当前会话建立的连接。
结合图5,本申请实施例还提供一种报文处理装置100,可应用于上述的报文处理设备10。其中,所述报文处理装置100可以包括第一报文处理模块110、第二报文处理模块120、关系确定模块130、会话验证模块140和地址确定模块150。
所述第一报文处理模块110,可以用于基于目标设备发送的第一请求确认报文建立第一会话,其中,该第一请求确认报文的源互联网协议地址未被确定为合法地址。在本实施例中,所述第一报文处理模块110可用于执行图2所示的步骤S110,关于所述第一报文处理模块110的相关内容可以参照前文对步骤S110的描述。
所述第二报文处理模块120,可以用于基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话,其中,该第二会话不同于所述第一会话。在本实施例中,所述第二报文处理模块120可用于执行图2所示的步骤S120,关于所述第二报文处理模块120的相关内容可以参照前文对步骤S120的描述。
所述关系确定模块130,可以用于在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系。在本实施例中,所述关系确定模块130可用于执行图2所示的步骤S130,关于所述关系确定模块130的相关内容可以参照前文对步骤S130的描述。
所述会话验证模块140,可以用于在所述第二请求确认报文属于所述第二会话时,基于该第二请求确认报文和所述请求报文对该第二会话进行验证。在本实施例中,所述会话验证模块140可用于执行图2所示的步骤S140,关于所述会话验证模块140的相关内容可以参照前文对步骤S140的描述。
所述地址确定模块150,可以用于在所述第二请求确认报文属于所述第一会话时,且在所述第二会话已经通过验证时,将该第二请求确认报文的源互联网协议地址确定为合法地址。在本实施例中,所述地址确定模块150可用于执行图2所示的步骤S150,关于所述地址确定模块150的相关内容可以参照前文对步骤S150的描述。
在本申请实施例中,对应于上述的报文处理方法,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行上述报文处理方法的各个步骤。
其中,前述计算机程序运行时执行的各步骤,在此不再一一赘述,可参考前文对所述报文处理方法的解释说明。
综上所述,本申请提供的报文处理方法和装置、报文处理设备及存储介质,通过在获取到目标设备发送的第一请求确认报文之后,建立第一会话,然后,基于该第一请求确认报文向该目标设备发送请求报文,并基于该请求报文建立第二会话,从而使得可以基于该第二会话是否通过验证,确定属于第一会话的其它请求确认报文(如第二请求确认报文)的源互联网协议地址是否为合法地址。基于此,由于第二会话的存在,使得可以不用对第一会话进行重置连接处理(即不用发送连接重置报文),使得可以避免由于目标设备不具备连接重置报文的处理能力(程序)而导致适用范围较窄的问题,使得具有较高的实用价值。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种报文处理方法,其特征在于,应用于报文处理设备,该报文处理设备通信连接有目标服务器,用于将获取的源互联网协议地址为合法地址的请求确认报文发送给该目标服务器,所述方法包括:
基于目标设备发送的第一请求确认报文建立第一会话;
基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话,其中,该第二会话不同于所述第一会话;
在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系;
若所述第二请求确认报文属于所述第二会话,则基于该第二请求确认报文和所述请求报文对该第二会话进行验证;
若所述第二请求确认报文属于所述第一会话,则在所述第二会话已经通过验证时,将该第二请求确认报文的源互联网协议地址确定为合法地址。
2.根据权利要求1所述的报文处理方法,其特征在于,所述基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话的步骤,包括:
基于预先确定的源端口和所述第一请求确认报文中的第一报文五元组信息确定第二报文五元组信息,其中,该源端口与该第一报文五元组信息中的目的端口不同;
基于所述第二报文五元组信息向所述目标设备发送请求报文,并基于该第二报文五元组信息建立第二会话,其中,所述第一会话基于所述第一报文五元组信息建立。
3.根据权利要求2所述的报文处理方法,其特征在于,所述基于预先确定的源端口和所述第一请求确认报文中的第一报文五元组信息确定第二报文五元组信息的步骤,包括:
在目标端口范围包括的端口中确定一个端口,其中,所述第一请求确认报文中第一报文五元组信息中的目的端口为该目标端口范围外的端口;
将确定出的所述端口作为源端口,并结合所述第一报文五元组信息中目的端口以外的其它信息,确定第二报文五元组信息。
4.根据权利要求1-3任意一项所述的报文处理方法,其特征在于,所述方法还包括:
基于所述第一会话确定是否需要丢弃所述第一请求确认报文;
若确定不需要丢弃所述第一请求确认报文,则执行所述基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话的步骤。
5.根据权利要求4所述的报文处理方法,其特征在于,所述基于所述第一会话确定是否需要丢弃所述第一请求确认报文的步骤,包括:
确定是否已经对所述第一会话进行预设的过滤处理;
若已经对所述第一会话进行所述预设的过滤处理,则确定不需要丢弃所述第一请求确认报文。
6.根据权利要求5所述的报文处理方法,其特征在于,所述确定是否已经对所述第一会话进行预设的过滤处理的步骤,包括:
确定是否已经对所述第一会话进行首包丢弃处理;
若已经对所述第一会话进行所述首包丢弃处理,则确定所述第一请求确认报文是否属于首包重传报文;
若所述第一请求确认报文属于所述首包重传报文,则确定已经对所述第一会话进行预设的过滤处理。
7.根据权利要求1-3任意一项所述的报文处理方法,其特征在于,所述方法还包括:
若所述第二请求确认报文属于所述第二会话,则基于该第二请求确认报文向所述目标设备发送连接重置报文,以终止该目标设备与所述报文处理设备之间属于该第二会话的报文交互。
8.一种报文处理装置,其特征在于,应用于报文处理设备,该报文处理设备通信连接有目标服务器,用于将获取的源互联网协议地址为合法地址的请求确认报文发送给该目标服务器,所述装置包括:
第一报文处理模块,用于基于目标设备发送的第一请求确认报文建立第一会话,其中,该第一请求确认报文的源互联网协议地址未被确定为合法地址;
第二报文处理模块,用于基于所述第一请求确认报文向所述目标设备发送请求报文,并基于该请求报文建立第二会话,其中,该第二会话不同于所述第一会话;
关系确定模块,用于在获取到所述目标设备发送的第二请求确认报文时,确定该第二请求确认报文与所述第一会话和所述第二会话之间的关系;
会话验证模块,用于在所述第二请求确认报文属于所述第二会话时,基于该第二请求确认报文和所述请求报文对该第二会话进行验证;
地址确定模块,用于在所述第二请求确认报文属于所述第一会话时,且在所述第二会话已经通过验证时,将该第二请求确认报文的源互联网协议地址确定为合法地址。
9.一种报文处理设备,其特征在于,包括:
存储器,用于存储计算机程序;
与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现权利要求1-7任意一项所述的报文处理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被执行时,实现权利要求1-7任意一项所述的报文处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110003627.2A CN112822262B (zh) | 2021-01-04 | 2021-01-04 | 报文处理方法和装置、报文处理设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110003627.2A CN112822262B (zh) | 2021-01-04 | 2021-01-04 | 报文处理方法和装置、报文处理设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112822262A CN112822262A (zh) | 2021-05-18 |
CN112822262B true CN112822262B (zh) | 2022-11-22 |
Family
ID=75858330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110003627.2A Active CN112822262B (zh) | 2021-01-04 | 2021-01-04 | 报文处理方法和装置、报文处理设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112822262B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101180826A (zh) * | 2004-01-26 | 2008-05-14 | 思科技术公司 | 较高级协议认证 |
CN107113280A (zh) * | 2014-12-31 | 2017-08-29 | 华为技术有限公司 | 一种网络控制方法与虚拟交换机 |
CN111585887A (zh) * | 2020-03-18 | 2020-08-25 | 平安科技(深圳)有限公司 | 基于多个网络的通信方法、装置、电子设备及存储介质 |
CN111935712A (zh) * | 2020-07-31 | 2020-11-13 | 深圳市燃气集团股份有限公司 | 一种基于NB-IoT通信的数据传输方法、系统及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9967260B1 (en) * | 2015-01-26 | 2018-05-08 | Microstrategy Incorporated | Enhanced authentication security |
-
2021
- 2021-01-04 CN CN202110003627.2A patent/CN112822262B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101180826A (zh) * | 2004-01-26 | 2008-05-14 | 思科技术公司 | 较高级协议认证 |
CN107113280A (zh) * | 2014-12-31 | 2017-08-29 | 华为技术有限公司 | 一种网络控制方法与虚拟交换机 |
CN111585887A (zh) * | 2020-03-18 | 2020-08-25 | 平安科技(深圳)有限公司 | 基于多个网络的通信方法、装置、电子设备及存储介质 |
CN111935712A (zh) * | 2020-07-31 | 2020-11-13 | 深圳市燃气集团股份有限公司 | 一种基于NB-IoT通信的数据传输方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112822262A (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108551446B (zh) | 防攻击的syn报文处理方法、装置、防火墙及存储介质 | |
US8800001B2 (en) | Network authentication method, method for client to request authentication, client, and device | |
CN111131310B (zh) | 访问控制方法、装置、系统、计算机设备和存储介质 | |
EP2202943A1 (en) | Using a server's capability profile to establish a connection | |
CN106688218B (zh) | 用于控制分组传输网络中的握手的方法和装置 | |
JP2018528679A (ja) | 負荷平衡システムにおいて接続を確立するデバイス及び方法 | |
CN110784464A (zh) | 泛洪攻击的客户端验证方法、装置、系统及电子设备 | |
US9641485B1 (en) | System and method for out-of-band network firewall | |
US20230275924A1 (en) | Network security protection method and protection device | |
US9380069B2 (en) | Method and device for data transmission | |
CN102647358A (zh) | 报文发送和处理方法、装置、客户端设备和网络设备 | |
US8331964B1 (en) | Suppression of short message service communications from a trusted domain | |
CN112822262B (zh) | 报文处理方法和装置、报文处理设备及存储介质 | |
US10250635B2 (en) | Defending against DoS attacks over RDMA connections | |
CN112235329A (zh) | 一种识别syn报文真实性的方法、装置及网络设备 | |
WO2024107378A1 (en) | Methods, systems, and computer readable media for detecting stolen access tokens | |
CN113872949B (zh) | 一种地址解析协议的应答方法及相关装置 | |
CN113497789A (zh) | 一种暴力破解攻击的检测方法、检测系统和设备 | |
CN106961393B (zh) | 网络会话中udp报文的检测方法及装置 | |
CN114697088A (zh) | 一种确定网络攻击的方法、装置及电子设备 | |
CN110337115B (zh) | 一种基于tcp协议判断微信支付感知的方法 | |
CN109413037B (zh) | 一种Modbus业务处理方法及装置 | |
RU2648949C1 (ru) | Способ защиты вычислительной сети от несанкционированного сканирования и блокирования сетевых служб | |
CN112055028B (zh) | 网络攻击防御方法、装置、电子设备及存储介质 | |
DeLaughter et al. | Using proof-of-work to mitigate spoofing-based denial of service attacks |
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 |