CN112491651B - 一种报文匹配方法及装置 - Google Patents

一种报文匹配方法及装置 Download PDF

Info

Publication number
CN112491651B
CN112491651B CN202011288476.1A CN202011288476A CN112491651B CN 112491651 B CN112491651 B CN 112491651B CN 202011288476 A CN202011288476 A CN 202011288476A CN 112491651 B CN112491651 B CN 112491651B
Authority
CN
China
Prior art keywords
message
check value
theoretical
request message
target request
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
CN202011288476.1A
Other languages
English (en)
Other versions
CN112491651A (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.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software 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 Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202011288476.1A priority Critical patent/CN112491651B/zh
Publication of CN112491651A publication Critical patent/CN112491651A/zh
Application granted granted Critical
Publication of CN112491651B publication Critical patent/CN112491651B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/03Protocol definition or specification 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]

Abstract

本申请实施例提供一种报文匹配方法及装置,涉及网络安全技术领域,该报文匹配方法包括:在发送目标请求报文之后,接收响应报文;然后根据目标请求报文计算理论校验值;最后根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果,可见,该方法能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。

Description

一种报文匹配方法及装置
技术领域
本申请涉及网络安全技术领域,具体而言,涉及一种报文匹配方法及装置。
背景技术
ICMP(Internet Control Message Protocol),即Internet控制报文协议,用于在IP主机、路由器之间传递网络是否通畅、主机是否可达、路由是否可用等控制消息。在ICMP协议通信过程中,需要进行request报文(即请求报文)和reply报文(响应报文)的匹配判断,以判断两者是否合规。现有的报文匹配方法,通常先获取请求报文中payload(负载)字段的数据内容和响应报文中payload字段的数据内容,然后对两者的数据内容进行字符串匹配,进而判断响应报文与请求报文是否匹配。然而,在实践中发现,现有的报文匹配方法必须对报文进行深度检测,在匹配判断过程中,需要对payload字段进行逐字节对比,导致报文匹配耗时长,效率低。
发明内容
本申请实施例的目的在于提供一种报文匹配方法及装置,能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
本申请实施例第一方面提供了一种报文匹配方法,包括:
在发送目标请求报文之后,接收响应报文;
根据所述目标请求报文计算理论校验值;
根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果。
在上述实现过程中,在发送目标请求报文之后,接收响应报文;然后根据目标请求报文计算理论校验值;最后根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果,可见,该方法能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
进一步地,所述根据所述目标请求报文计算理论校验值,包括:
提取所述目标请求报文的第一校验值;
根据预设的计算规则和所述第一校验值,计算理论校验值。
在上述实现过程中,根据目标请求报文的第一校验值,计算相应的理论校验值,能够快速计算出判断响应报文是否与之匹配的判断标准,不需要对报文进行深度解析以提取负载字段,减少计算量,进而有利于提升匹配速度。
进一步地,所述根据预设的计算规则和所述第一校验值,计算理论校验值,包括:
根据预设固定值和所述第一校验值,计算中间值;
判断所述中间值是否超过预设阈值;
如果不超过,根据预设的计算规则中的第一计算公式和所述第一校验值计算理论校验值;
如果超过,根据所述计算规则中的第二计算公式和所述第一校验值计算理论校验值。
在上述实现过程中,根据预设的计算规则能够计算出理论校验值,计算量少,计算简便,进而有利于提升匹配速度。
进一步地,提取所述目标请求报文的第一校验值,包括:
从所述目标请求报文中提取与预设目标报文协议对应的报文字节;
根据所述报文字节计算所述目标请求报文的第一校验值。
在上述实现过程中,对于目标请求报文的第一校验值的提取,只需要提取目标请求报文中的部分字节(即报文字节),不需要对报文进行深度解析,且计算方法简单。
进一步地,根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果,包括:
提取所述响应报文的第二校验值;
判断所述第二校验值与所述理论校验值是否相同;
如果相同,则确定报文匹配结果为所述响应报文与所述目标请求报文相匹配;
如果不相同,则确定报文匹配结果为所述响应报文与所述目标请求报文不相匹配。
在上述实现过程中,在确定响应报文与目标请求报文是否匹配时,只需要将响应报文的第二校验值与理论校验值进行比较,如果两者相同,则确定响应报文与目标请求报文匹配;如果两者不同,则确定响应报文与目标请求报文不匹配,判断方法简单,进而有利于提升报文匹配检测效率。
本申请实施例第二方面提供了一种报文匹配装置,所述报文匹配装置包括:
接收单元,用于在发送目标请求报文之后,接收响应报文;
计算单元,用于根据所述目标请求报文计算理论校验值;
匹配确定单元,用于根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果。
在上述实现过程中,接收单元在发送目标请求报文之后,接收响应报文;然后计算单元根据目标请求报文计算理论校验值;最后匹配确定单元根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果,可见,该方法能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
进一步地,所述计算单元包括:
第一提取子单元,用于提取所述目标请求报文的第一校验值;
计算子单元,用于根据预设的计算规则和所述第一校验值,计算理论校验值。
在上述实现过程中,计算子单元根据目标请求报文的第一校验值计算相应的理论校验值,能够快速计算出判断响应报文是否与之匹配的判断标准,不需要对报文进行深度解析以提取负载字段,减少计算量,进而有利于提升匹配速度。
进一步地,所述匹配确定单元包括:
第二提取子单元,用于提取所述响应报文的第二校验值;
判断子单元,用于判断所述第二校验值与所述理论校验值是否相同;
确定子单元,用于在判断出所述第二校验值与所述理论校验值相同时,确定报文匹配结果为所述响应报文与所述目标请求报文相匹配;以及在判断出所述第二校验值与所述理论校验值不相同时,确定报文匹配结果为所述响应报文与所述目标请求报文不相匹配。
在上述实现过程中,判断子单元在确定响应报文与目标请求报文是否匹配时,只需要将响应报文的第二校验值与理论校验值进行比较,如果两者相同,确定子单元则确定响应报文与目标请求报文匹配;如果两者不同,确定子单元则确定响应报文与目标请求报文不匹配,判断方法简单,进而有利于提升报文匹配检测效率。
本申请实施例第三方面提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例第一方面中任一项所述的报文匹配方法。
本申请实施例第四方面提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例第一方面中任一项所述的报文匹配方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例一提供的一种报文匹配方法的流程示意图;
图2为本申请实施例二提供的一种报文匹配方法的流程示意图;
图3为本申请实施例三提供的一种报文匹配装置的结构示意图;
图4为本申请实施例四提供的一种报文匹配装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参看图1,图1为本申请实施例提供了一种报文匹配方法的流程示意图。其中,该报文匹配方法包括:
S101、在发送目标请求报文之后,接收响应报文。
本申请实施例中,该方法应用于请求报文和响应报文的匹配场景中,具体应用于基于ICMP协议的request报文(即请求报文)和reply报文(即应答报文)的匹配场景中。
本申请实施例中,该方法所基于的ICMP协议仅针对IPv4时期的规范。
本申请实施例中,ICMP协议虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。ICMP消息使用基本IP报头发送,每个报文都至少包含两个固定字段:消息类型和消息码。
本申请实施例中,ICMP协议的request报文和reply报文属于ICMP回送消息,类型分别为8和0,用于进行通信的主机或路由器之间,判断所发送的数据包是否已经成功到达队短的一种消息。在实际应用中,主机A先发送回送请求的消息(ICMP Echo RequestMessage,类型8)给主机B,然后主机B返回回送应答消息(ICMP Echo Reply Message,类型0)给主机A。
本申请实施例中,在ICMP协议的官方RFC文档中给出了ICMP数据包payload的严格建议:reply报文必须返回request报文中的数据。在request报文和reply报文中,除了type、checksum字段外其他字段值都相同。很多场合需要进行request报文和reply报文的配对。比如在边界网关中,需要对类型8和类型0的ICMP消息进行配对;在入侵检测设备中,需要检测类型8和类型0的ICMP消息。
本申请实施例中,目标请求报文和响应报文均为ICMP报头,其中,目标请求报文为回送请求的消息,为类型8,接收到的响应报文为回送应答消息,为类型0。
在步骤S101之后,还包括以下步骤:
S102、根据目标请求报文计算理论校验值。
S103、根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果。
本申请实施例中,设与目标请求报文相匹配的类型0的报文为目标响应报文,则计算的理论校验值,实际上与目标响应报文的校验值checksum相同,在发送类型8的目标请求报文之后,接收到类型0的响应报文,如果该类型0的响应报文的校验值checksum与计算的理论校验值相同,则即可确定目标请求报文与该类型0的响应报文相匹配,否则即为不匹配。
本申请实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
可见,实施本实施例所描述的报文匹配方法,能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
实施例2
请参看图2,图2为本申请实施例提供的一种报文匹配方法的流程示意图。如图2所示,其中,该报文匹配方法包括:
S201、在发送目标请求报文之后,接收响应报文。
本申请实施例中,在发送类型8的目标请求报文之后,下一个到达的类型0的报文即为响应报文。
S202、提取目标请求报文的第一校验值。
本申请实施例中,目标请求报文的第一校验值,为目标请求报文的Checksum字段,位于ICMP报头的第3个字节开始的2字节内容。
本申请实施例中,Checksum,即总和检验码、校验和,在数据处理和数据通信领域中,用于校验目的的一组数据项的和。这些数据项可以是数字或在计算检验总和过程中看作数字的其它字符串。
本申请实施例中,可以从目标请求报文的报头直接获取第一校验值。
作为一种可选的实施方式,提取目标请求报文的第一校验值,可以包括以下步骤:
从目标请求报文中提取与预设目标报文协议对应的报文字节;
根据报文字节计算目标请求报文的第一校验值。
在上述是实施方式中,当该方法应用于IPv4协议条件下的ICMP协议工作场景中时,该预设目标报文协议即为ICMP协议。
在上述实施方式中,计算校验值的算法如下:
第一步:先获取ICMP协议对应的报文字节,然后再将报文字节中每两个字节(16位)作为一个数,第一个字节在高位,第二个字节在低位,将这些数相加得到变量Sum。
第二步:如果报文字节的报文长度是奇数,则经过第一步运算后,报文字节还剩下一个字节没有参加计算,则将该字节左移8位,加到变量Sumt中。
第三步:将变量Sum的高16位与低16位相加得到变量truncated_sum_tmp。
第四步:如果变量truncated_sum_tmp高16位不为0,则将其高16位与变量truncated_sum_tmp相加得到变量truncated_sum。
第五步:对变量truncated_sum取反,得到结果变量checksum。
举例来说,设一目标请求报文,提取的ICMP协议对应的报文字节为0x08 00 00 0000 01 00 03 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 7677 61 62 63 64 65 66 67 68 69,则计算第一校验值的步骤如下:
Sumrequest=0x0800+0x0000+0x0001+0x0003+0x6162+0x6364+0x6566+0x6768+0x696a+0x6b6c+0x6d6e+0x6f70+0x7172+0x7374+0x7576+0x7761+0x6263+0x6465+0x6667+0x6869=0x0006 B2A1;
Trequest=0x0006+0xB2A1=0xB2A7;
Crequest=0xFFFF–0xB2A7=0x4D58。
即可以计算得到第一校验值为0x4D58。
在步骤S202之后,还包括以下步骤:
S203、根据预设固定值和第一校验值,计算中间值。
本申请实施例中,计算中间值的公式如下:
中间值=checksumrequest+0x0800;
其中,checksumrequest为第一校验值,预设固定值为0x0800。
举例来说,设计算得到的第一校验值为0x4D58,则中间值=0x4D58+0x0800=0x5558。
S204、判断中间值是否超过预设阈值,如果不超过,执行步骤S205以及步骤S207~步骤S208;如果超过,执行步骤S206~步骤S208。
本申请实施例中,预设阈值可以为0x10000,则当中间值<0x10000时,采用第一计算公式计算理论校验值;当中间值≥0x10000时,采用第二计算公式计算理论校验值。
S205、根据预设的计算规则中的第一计算公式和第一校验值计算理论校验值,并执行步骤S207~步骤S208。
本申请实施例中,第一计算公式为:
当checksumrequest+0x0800<0x10000时,checksumreply=checksumrequest+0x0800;
其中,checksumreply为理论校验值。
举例来说,设计算得到的中间值为0x5558时,则采用第一计算公式计算理论校验值,即理论校验值=0x4D58+0x0800=0x5558。
在步骤S205之后,还包括以下步骤:
S206、根据计算规则中的第二计算公式和第一校验值计算理论校验值,并执行步骤S207~步骤S208。
本申请实施例中,第二计算公式为:
当checksumrequest+0x0800≥0x10000时,checksumreply=checksumrequest-0XF7FF。
其中,checksumreply为理论校验值。
本申请实施例中,实施上述步骤S203~步骤S206,能够根据预设的计算规则和第一校验值,计算理论校验值。
本申请实施例中,使用预设的计算规则有两个前提条件:
第一个:报文的数据包长度小于0x10001。本方法应用于IPv4协议下的ICMP协议,IPv4协议允许包最大长度为0xFFF,因此该计算规则可以应用于任何IPv4协议条件下的ICMP协议工作场景。
第二个:RFC 1071具体给出了一种Checksum计算方法。同时在定义ICMP协议的标准文档RFC 792中,明确规定ICMP报头的checksum字段应该按照这种计算方法进行。该方法也是IP网络数据报头中Checksum字段、UDP网络数据报头中Checksum字段、TCP网络数据报头中Checksum字段的标准计算方法。
本申请实施例中,当本方法应用于IPv4协议下ICMP协议工作的场景中,即可满足上述两个前提条件。
本申请实施例中,实施上述步骤S202~步骤S206,能够根据目标请求报文计算理论校验值。
在步骤S206之后,还包括以下步骤:
S207、提取响应报文的第二校验值。
本申请实施例中,举例来说,设一目标请求报文,其第一校验值为0x4D58,根据第一校验值计算得到的理论校验值为0x5558,设接收到的响应报文中与ICMP协议对应的报文字节为0x00 00 00 00 00 01 00 03 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69,则可以根据上述校验值的算法,计算响应报文的第一校验值:
Sumreply=0x0000+0x0000+0x0001+0x0003+0x6162+0x6364+0x6566+0x6768+0x696a+0x6b6c+0x6d6e+0x6f70+0x7172+0x7374+0x7576+0x7761+0x6263+0x6465+0x6667+0x6869=0x0006 AAA1;
Treply=0x0006+0xAAA1=0xAAA7;
Creply=0xFFFF–0xAAA7=0x5558。
在步骤S207之后,还包括以下步骤:
S208、判断第二校验值与理论校验值是否相同,如果相同,执行步骤S209;如果不相同,执行步骤S210。
S209、确定报文匹配结果为响应报文与目标请求报文相匹配,并结束本流程。
S210、确定报文匹配结果为响应报文与目标请求报文不相匹配,并结束本流程。
本申请实施例中,根据上述举例,目标请求报文的第一校验值为0x4D58,根据第一校验值计算得到的理论校验值为0x5558,而接收到的响应报文的第二校验值为0x5558,可见,第二校验值与理论校验值相同,则可以确定该响应报文与目标请求报文相匹配。
本申请实施例中,计算checksum的目的是加快类型8的请求报文和类型0的响应报文的匹配速度,相比于现有技术直接匹配payload是非常耗时的,通过比较checksum代替直接比较payload,能够节约计算时间,进而提升报文匹配效率。
本申请实施例中,实施上述步骤S207~步骤S210,能够根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果。
本申请实施例中,通过比较第二校验值和理论校验值,不需要对数据包进行深入分析,而且checksum能够反映request报文和reply报文的相同以及差别,因此选择checksum来定量的分析目标请求报文和响应报文的关系,进而对两者是否合规做出判决,解决了传统判别方法中必须对报文进行深度检测、对payload进行逐字节对比从而有很大时间开销的困扰。
可见,实施本实施例所描述的报文匹配方法,能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
实施例3
请参看图3,图3为本申请实施例提供的一种报文匹配装置的结构示意图。如图3所示,该报文匹配装置包括:
接收单元300,用于在发送目标请求报文之后,接收响应报文;
计算单元400,用于根据目标请求报文计算理论校验值;
匹配确定单元500,用于根据理论校验值确定响应报文与目标请求报文两者之间的报文匹配结果。
本申请实施例中,对于报文匹配装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的报文匹配装置,能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
实施例4
请一并参阅图4,图4是本申请实施例提供的一种报文匹配装置的结构示意图。其中,图4所示的报文匹配装置是由图3所示的报文匹配装置进行优化得到的。如图4所示,计算单元400包括:
第一提取子单元410,用于提取目标请求报文的第一校验值;
计算子单元420,用于根据预设的计算规则和第一校验值,计算理论校验值。
作为一种可选的实施方式,匹配确定单元500包括:
第二提取子单元510,用于提取响应报文的第二校验值;
判断子单元520,用于判断第二校验值与理论校验值是否相同;
确定子单元530,用于在判断出第二校验值与理论校验值相同时,确定报文匹配结果为响应报文与目标请求报文相匹配;以及在判断出第二校验值与理论校验值不相同时,确定报文匹配结果为响应报文与目标请求报文不相匹配。
作为一种可选的实施方式,第一提取子单元410包括:
提取模块411,用于从目标请求报文中提取与预设目标报文协议对应的报文字节;
第一计算模块412,用于根据报文字节计算目标请求报文的第一校验值。
作为一种可选的实施方式,计算子单元420包括:
第二计算模块421,用于根据预设固定值和第一校验值,计算中间值;
判断模块422,用于判断中间值是否超过预设阈值;
第三计算模块423,用于在判断出中间值不超过预设阈值时,根据预设的计算规则中的第一计算公式和第一校验值计算理论校验值;以及在判断出中间值超过预设阈值时,根据计算规则中的第二计算公式和第一校验值计算理论校验值。
本申请实施例中,对于报文匹配装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的报文匹配装置,能够快速完成响应报文和请求报文之间的匹配判断,不需要对报文进行深度检测,进而有利于提升报文匹配检测效率。
本申请实施例提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例1或实施例2中任一项报文匹配方法。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例1或实施例2中任一项报文匹配方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (7)

1.一种报文匹配方法,其特征在于,包括:
在发送目标请求报文之后,接收响应报文;
根据所述目标请求报文计算理论校验值;
根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果;
所述根据所述目标请求报文计算理论校验值,包括:
提取所述目标请求报文的第一校验值;
根据预设的计算规则和所述第一校验值,计算理论校验值;
所述根据预设的计算规则和所述第一校验值,计算理论校验值,包括:
根据预设固定值和所述第一校验值,计算中间值;
判断所述中间值是否超过预设阈值;
如果不超过,根据预设的计算规则中的第一计算公式和所述第一校验值计算理论校验值;
如果超过,根据所述计算规则中的第二计算公式和所述第一校验值计算理论校验值;
其中,所述第一计算公式为:
当checksumrequest+0x0800<0x10000时,checksumreply=checksumrequest+0x0800;
checksumreply为理论校验值;
所述第二计算公式为:
当checksumrequest+0x0800≥0x10000时,checksumreply=checksumrequest-0XF7FF;
checksumreply为理论校验值。
2.根据权利要求1所述的报文匹配方法,其特征在于,所述提取所述目标请求报文的第一校验值,包括:
从所述目标请求报文中提取与预设目标报文协议对应的报文字节;
根据所述报文字节计算所述目标请求报文的第一校验值。
3.根据权利要求1所述的报文匹配方法,其特征在于,所述根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果,包括:
提取所述响应报文的第二校验值;
判断所述第二校验值与所述理论校验值是否相同;
如果相同,则确定报文匹配结果为所述响应报文与所述目标请求报文相匹配;
如果不相同,则确定报文匹配结果为所述响应报文与所述目标请求报文不相匹配。
4.一种报文匹配装置,其特征在于,所述报文匹配装置包括:
接收单元,用于在发送目标请求报文之后,接收响应报文;
计算单元,用于根据所述目标请求报文计算理论校验值;
匹配确定单元,用于根据所述理论校验值确定所述响应报文与所述目标请求报文两者之间的报文匹配结果;
所述计算单元包括:
第一提取子单元,用于提取所述目标请求报文的第一校验值;
计算子单元,用于根据预设的计算规则和所述第一校验值,计算理论校验值;
计算子单元包括:
第二计算模块,用于根据预设固定值和第一校验值,计算中间值;
判断模块,用于判断中间值是否超过预设阈值;
第三计算模块,用于在判断出中间值不超过预设阈值时,根据预设的计算规则中的第一计算公式和第一校验值计算理论校验值;以及在判断出中间值超过预设阈值时,根据计算规则中的第二计算公式和第一校验值计算理论校验值;
其中,所述第一计算公式为:
当checksumrequest+0x0800<0x10000时,checksumreply=checksumrequest+0x0800;
checksumreply为理论校验值;
所述第二计算公式为:
当checksumrequest+0x0800≥0x10000时,checksumreply=checksumrequest-0XF7FF;
checksumreply为理论校验值。
5.根据权利要求4所述的报文匹配装置,其特征在于,所述匹配确定单元包括:
第二提取子单元,用于提取所述响应报文的第二校验值;
判断子单元,用于判断所述第二校验值与所述理论校验值是否相同;
确定子单元,用于在判断出所述第二校验值与所述理论校验值相同时,确定报文匹配结果为所述响应报文与所述目标请求报文相匹配;以及在判断出所述第二校验值与所述理论校验值不相同时,确定报文匹配结果为所述响应报文与所述目标请求报文不相匹配。
6.一种电子设备,其特征在于,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行权利要求1至3中任一项所述的报文匹配方法。
7.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行权利要求1至3任一项所述的报文匹配方法。
CN202011288476.1A 2020-11-17 2020-11-17 一种报文匹配方法及装置 Active CN112491651B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011288476.1A CN112491651B (zh) 2020-11-17 2020-11-17 一种报文匹配方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011288476.1A CN112491651B (zh) 2020-11-17 2020-11-17 一种报文匹配方法及装置

Publications (2)

Publication Number Publication Date
CN112491651A CN112491651A (zh) 2021-03-12
CN112491651B true CN112491651B (zh) 2022-07-12

Family

ID=74931224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011288476.1A Active CN112491651B (zh) 2020-11-17 2020-11-17 一种报文匹配方法及装置

Country Status (1)

Country Link
CN (1) CN112491651B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113343314A (zh) * 2021-07-02 2021-09-03 北京汽车集团越野车有限公司 一种数据刷写的数据校验方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101547156A (zh) * 2009-05-04 2009-09-30 华为技术有限公司 报文解析方法和装置
US8832211B1 (en) * 2010-11-24 2014-09-09 Nyse Arca Llc Messaging methods and apparatus for use with an exchange system and/or client devices
CN104468194A (zh) * 2014-11-05 2015-03-25 北京星网锐捷网络技术有限公司 一种网络设备的兼容方法及转发服务器
CN109743746A (zh) * 2018-12-07 2019-05-10 盛科网络(苏州)有限公司 一种双向转发检测bfd参数协商方法、装置及芯片

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990224B2 (en) * 2003-05-15 2006-01-24 Federal Reserve Bank Of Atlanta Method and system for communicating and matching electronic files for financial transactions
CN102291408B (zh) * 2011-08-15 2014-03-26 华为数字技术(成都)有限公司 对iSCSI协议报文的处理方法及装置
CN110855576B (zh) * 2015-12-31 2023-07-21 杭州数梦工场科技有限公司 应用识别方法及装置
CN107046495B (zh) * 2016-02-06 2020-08-18 阿里巴巴集团控股有限公司 用于构建虚拟专用网络的方法、装置和系统
CN106685930B (zh) * 2016-12-06 2020-03-31 深信服科技股份有限公司 一种传输控制协议选项的处理方法及装置
US10616200B2 (en) * 2017-08-01 2020-04-07 Oracle International Corporation Methods, systems, and computer readable media for mobility management entity (MME) authentication for outbound roaming subscribers using diameter edge agent (DEA)
CN110213254A (zh) * 2019-05-27 2019-09-06 北京神州绿盟信息安全科技股份有限公司 一种识别伪造互联网协议ip报文的方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101547156A (zh) * 2009-05-04 2009-09-30 华为技术有限公司 报文解析方法和装置
US8832211B1 (en) * 2010-11-24 2014-09-09 Nyse Arca Llc Messaging methods and apparatus for use with an exchange system and/or client devices
CN104468194A (zh) * 2014-11-05 2015-03-25 北京星网锐捷网络技术有限公司 一种网络设备的兼容方法及转发服务器
CN109743746A (zh) * 2018-12-07 2019-05-10 盛科网络(苏州)有限公司 一种双向转发检测bfd参数协商方法、装置及芯片

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
A Robust IP Packets Filtering Mechanism for Protecting Web Server from DDoS Attacks;《武汉大学自然科学学报(英文版)》;20061030(第05期);全文 *
C1-071801 "h)the Security-Client header field set to specify the security mechanism the UE supports, the IPsec layer algorithms the UE supports and the parameters needed for the security association setup. The UE shall support the setup of two pairs of security";CableLabs;《3GPP tsg_ct\WG1_mm-cc-sm_ex-CN1》;20070813;全文 *
C1-095738 "Digest Authentication without Authorization header in initial REGISTER message";Huawei等;《3GPP tsg_cn\wg1_mm-cc-sm_ex-cn1》;20091113;全文 *
Oracle通信TNS协议中请求报文的解析;侯方杰等;《计算机系统应用》;20181015(第10期);全文 *
基于ICMP的协议的Intranet网络监测报警系统的实现;周斌等;《微型电脑应用》;20040220(第02期);全文 *

Also Published As

Publication number Publication date
CN112491651A (zh) 2021-03-12

Similar Documents

Publication Publication Date Title
US10812524B2 (en) Method, and devices for defending distributed denial of service attack
CN109194680B (zh) 一种网络攻击识别方法、装置及设备
US9419999B2 (en) Method and device for preventing domain name system spoofing
EP2434689B1 (en) Method and apparatus for detecting message
CN109768991B (zh) 报文的重放攻击检测方法、装置、电子设备
US20080104702A1 (en) Network-based internet worm detection apparatus and method using vulnerability analysis and attack modeling
US7937586B2 (en) Defending against denial of service attacks
CN110808879B (zh) 一种协议识别方法、装置、设备及可读存储介质
CN106470214B (zh) 攻击检测方法和装置
CN107733581B (zh) 基于全网环境下的快速互联网资产特征探测方法及装置
CN107454037B (zh) 网络攻击的识别方法和系统
EP3338396A1 (en) Device and method for establishing connection in load-balancing system
CN107682470B (zh) 一种检测nat地址池中公网ip可用性的方法及装置
CN112491651B (zh) 一种报文匹配方法及装置
CN112600852B (zh) 漏洞攻击处理方法、装置、设备及存储介质
CN114095274B (zh) 一种攻击研判方法及装置
JP5119059B2 (ja) 情報処理装置、情報処理システム、プログラム、および記録媒体
CN107864101A (zh) 负载均衡方法和装置
US9525661B2 (en) Efficient method of NAT without reassemling IPV4 fragments
CN107592299B (zh) 代理上网识别方法、计算机装置及计算机可读存储介质
CN112738110A (zh) 一种旁路阻断方法、装置、电子设备和存储介质
EP3758340A1 (en) Network address translation
JP5116578B2 (ja) 情報処理装置、情報処理システム、プログラム、および記録媒体
CN115037698B (zh) 一种数据识别方法、装置及电子设备
CN109617893B (zh) 一种僵尸网络DDoS攻击的防护方法、装置及存储介质

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