数据匹配方法和装置、协议数据分析方法、装置和系统制造方法及图纸

技术编号:15519790 阅读:68 留言:0更新日期:2017-06-04 09:32
本公开涉及一种数据匹配方法和装置、协议数据分析方法、装置和系统,该数据匹配方法应用于词法分析器,包括:将待匹配的协议数据与所述词法分析器中的模式串集合进行匹配;在满足与所述词法分析器对应的匹配结束条件时终止匹配,并输出匹配结果;在匹配到匹配特征为安全检测标识的模式串的情况下,保存匹配到的匹配特征为安全检测标识的模式串对应的数据匹配范围,并且,所述匹配结果还包括所述安全检测标识。通过上述技术方案,词法分析器的匹配模式串集合中归集安全检测标识的模式串,可以在协议数据进行多模匹配时,保存并记录协议数据中的需要进行安全检测的协议数据,减少匹配次数,提升检测效率,同时安全检测不会影响协议解析的正确执行。

Data matching method and device, protocol data analysis method, device and system

The invention relates to a method and device for data matching, protocol data analysis method, device and system, the data matching method is applied to the lexical analyzer, including protocol data to be matched with the lexical analyzer in the pattern string set matching; matching in correspondence with the lexical analyzer of the end condition of termination matching, and output matching results; in the match to the matching feature for safety testing identification of pattern strings, matching feature matching to save mode of security testing to identify the corresponding data string matching range, and the matching result also includes the safety inspection mark. Through the technical proposal, the matching mode of the lexical analyzer on the collection collection safety inspection mark pattern can be matched in multimode protocol data, need to save and record the data in the protocol security testing protocol data, reduce the matching number and improve the detection efficiency, and safety testing will not affect the correct implementation of protocol analysis.

【技术实现步骤摘要】
数据匹配方法和装置、协议数据分析方法、装置和系统
本公开涉及协议解析领域,具体地,涉及一种数据匹配方法和装置、协议数据分析方法、装置和系统。
技术介绍
应用层网络防护,通常要先对网络数据进行协议分析,得到协议的各个字段,每个字段对应一段连续的数据区域,再将某些协议的字段提交给各个安全功能检测模块,以进行例如入侵防御、入侵检测、反垃圾邮件、防病毒等网络安全功能检测。现有技术中一般将协议分析和之后的多个安全检测功能划分成不同子系统,同一段数据或者数据的检测结果在各个子系统之间应用,例如,在应用层协议解析之后分别将控制信道数据和数据信道数据分别提交给入侵检测系统和病毒检测单元。在现有技术中,协议分析会考虑后面安全检测功能的可扩展性,会对协议各个字段的分析尽可能详尽,导致分析性能较低;协议分析之后的安全检测的各个功能耦合度低,但同一段数据被协议分析和之后的网络防护功能分析多遍,时间复杂度高,数据检测的次数与安全功能检测的数量线性相关,导致系统的整体检测效率较低。
技术实现思路
本公开的目的是提供一种一次数据分析实现协议数据解析和多个安全功能的同时检测的数据匹配方法和装置、协议数据分析方法、装置和系统。为了实现上述目的,本公开提供一种数据匹配方法,应用于词法分析器,包括:将待匹配的协议数据与所述词法分析器中的模式串集合进行匹配,所述模式串集合中的每个模式串具有对应的匹配特征,所述匹配特征包括协议字段标识和安全检测标识;在满足与所述词法分析器对应的匹配结束条件时终止匹配,并输出匹配结果,其中,所述匹配结果包括:N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数;在匹配到匹配特征为安全检测标识的模式串的情况下,保存匹配到的匹配特征为安全检测标识的模式串对应的数据匹配范围,并且,所述匹配结果还包括所述安全检测标识。可选地,所述匹配结束条件包括是否匹配到匹配特征为协议字段标识的模式串;以及,N=1。可选地,所述匹配结束条件包括所述待匹配的协议数据是否全部匹配完毕;以及,N为在所述待匹配的协议数据中,匹配到的匹配特征为协议字段标识的模式串的总数。本公开提供一种协议数据分析方法,应用于语法分析器,包括:接收待匹配的协议数据;将所述待匹配的协议数据输入至词法分析器,以由所述词法分析器对所述待匹配的协议数据进行数据匹配;接收所述词法分析器在终止匹配后返回的匹配结果,其中,所述匹配结果包括N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数,在匹配到匹配特征为安全检测标识的模式串的情况下,所述匹配结果还包括所述安全检测标识;对所述N个带谓词的终结符号进行语法解析;在所述匹配结果包括安全检测标识的情况下,确定与所述安全检测标识相关联的带谓词的终结符号;将所述相关联的带谓词的终结符号所对应的数据匹配范围内的数据输入至安全管理模块,以由所述安全管理模块进行安全管理。可选地,所述词法分析器的数量为一个;所述词法分析器在对所述待匹配的协议数据全部匹配完成后终止匹配;所述对所述N个带谓词的终结符号进行语法解析,包括;按照所述N个带谓词的终结符号中所包括的模式串的匹配顺序,对所述N个带谓词的终结符号逐一进行语法解析。可选地,所述词法分析器的数量为多个,多个词法分析器与所述语法分析器的多个状态一一对应;在所述将所述待匹配的协议数据输入至词法分析器的步骤之前,所述方法还包括:将所述协议的终结符号压入符号栈的栈顶;所述将所述待匹配的协议数据输入至词法分析器,包括:将所述待匹配的协议数据和从所述符号栈取出的当前栈顶符号输入至与状态栈的当前栈顶状态相对应的词法分析器,以由与所述当前栈顶状态相对应的词法分析器对所述待匹配的协议数据进行数据匹配,其中,所述词法分析器在从所述待匹配的协议数据中匹配到匹配特征为协议字段标识的模式串后终止匹配;所述方法还包括:在对所述N个带谓词的终结符号完成语法解析后,判断是否获得协议的目标非终结符号;在未获得协议的目标非终结符号的情况下,返回所述接收待匹配的协议数据的步骤,其中,再次接收的待匹配的协议数据是前次接收的待匹配的协议数据中除去前次已匹配完成的数据部分后剩余的数据部分。可选地,所述在所述匹配结果包括安全检测标识的情况下,确定与所述安全检测标识相关联的带谓词的终结符号,包括:在所述匹配结果包括安全检测标识的情况下,从所述词法分析器获取匹配特征为所述安全检测标识的模式串所对应的数据匹配范围;将数据匹配范围包括匹配特征为所述安全检测标识的模式串所对应的数据匹配范围的带谓词的终结符号确定为是与所述安全检测标识相关联的带谓词的终结符号。本公开还提供一种数据匹配装置,应用于词法分析器,包括:匹配模块,用于将待匹配的协议数据与所述词法分析器中的模式串集合进行匹配,所述模式串集合中的每个模式串具有对应的匹配特征,所述匹配特征包括协议字段标识和安全检测标识;输出模块,用于在满足与所述词法分析器对应的匹配结束条件时终止匹配,并输出匹配结果,其中,所述匹配结果包括:N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数;保存模块,用于在匹配到匹配特征为安全检测标识的模式串的情况下,保存匹配到的匹配特征为安全检测标识的模式串对应的数据匹配范围,并且,所述匹配结果还包括所述安全检测标识。可选地,所述匹配结束条件包括是否匹配到匹配特征为协议字段标识的模式串;以及,N=1。可选地,所述匹配结束条件包括所述待匹配的协议数据是否全部匹配完毕;以及,N为在所述待匹配的协议数据中,匹配到的匹配特征为协议字段标识的模式串的总数。本公开还提供一种协议数据分析装置,应用于语法分析器,包括:第一接收模块,用于接收待匹配的协议数据;第一输入模块,用于将所述待匹配的协议数据输入至词法分析器,以由所述词法分析器对所述待匹配的协议数据进行数据匹配;第二接收模块,用于接收所述词法分析器在终止匹配后返回的匹配结果,其中,所述匹配结果包括N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数,在匹配到匹配特征为安全检测标识的模式串的情况下,所述匹配结果还包括所述安全检测标识;解析模块,用于对所述N个带谓词的终结符号进行语法解析;确定模块,用于在所述匹配结果包括安全检测标识的情况下,确定与所述安全检测标识相关联的带谓词的终结符号;第二输入模块,用于将所述相关联的带谓词的终结符号所对应的数据匹配范围内的数据输入至安全管理模块,以由所述安全管理模块进行安全管理。可选地,所述词法分析器的数量为一个;所述词法分析器在对所述待匹配的协议数据全部匹配完成后终止匹配;所述解析模块,包括;第一解析子模块,用于按照所述N个带谓词的终结符号中所包括的模式串的匹配顺本文档来自技高网...
数据匹配方法和装置、协议数据分析方法、装置和系统

【技术保护点】
一种数据匹配方法,其特征在于,应用于词法分析器,包括:将待匹配的协议数据与所述词法分析器中的模式串集合进行匹配,所述模式串集合中的每个模式串具有对应的匹配特征,所述匹配特征包括协议字段标识和安全检测标识;在满足与所述词法分析器对应的匹配结束条件时终止匹配,并输出匹配结果,其中,所述匹配结果包括:N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数;在匹配到匹配特征为安全检测标识的模式串的情况下,保存匹配到的匹配特征为安全检测标识的模式串对应的数据匹配范围,并且,所述匹配结果还包括所述安全检测标识。

【技术特征摘要】
1.一种数据匹配方法,其特征在于,应用于词法分析器,包括:将待匹配的协议数据与所述词法分析器中的模式串集合进行匹配,所述模式串集合中的每个模式串具有对应的匹配特征,所述匹配特征包括协议字段标识和安全检测标识;在满足与所述词法分析器对应的匹配结束条件时终止匹配,并输出匹配结果,其中,所述匹配结果包括:N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数;在匹配到匹配特征为安全检测标识的模式串的情况下,保存匹配到的匹配特征为安全检测标识的模式串对应的数据匹配范围,并且,所述匹配结果还包括所述安全检测标识。2.根据权利要求1所述的方法,其特征在于,所述匹配结束条件包括是否匹配到匹配特征为协议字段标识的模式串;以及,N=1。3.根据权利要求1所述的方法,其特征在于,所述匹配结束条件包括所述待匹配的协议数据是否全部匹配完毕;以及,N为在所述待匹配的协议数据中,匹配到的匹配特征为协议字段标识的模式串的总数。4.一种协议数据分析方法,其特征在于,应用于语法分析器,包括:接收待匹配的协议数据;将所述待匹配的协议数据输入至词法分析器,以由所述词法分析器对所述待匹配的协议数据进行数据匹配;接收所述词法分析器在终止匹配后返回的匹配结果,其中,所述匹配结果包括N个带谓词的终结符号和每个所述带谓词的终结符号对应的数据匹配范围,其中,每个所述带谓词的终结符号包括协议的终结符号、和匹配到的匹配特征为协议字段标识的相应模式串,N为大于或等于1的自然数,在匹配到匹配特征为安全检测标识的模式串的情况下,所述匹配结果还包括所述安全检测标识;对所述N个带谓词的终结符号进行语法解析;在所述匹配结果包括安全检测标识的情况下,确定与所述安全检测标识相关联的带谓词的终结符号;将所述相关联的带谓词的终结符号所对应的数据匹配范围内的数据输入至安全管理模块,以由所述安全管理模块进行安全管理。5.根据权利要求4所述的方法,其特征在于,所述词法分析器的数量为一个;所述词法分析器在对所述待匹配的协议数据全部匹配完成后终止匹配;所述对所述N个带谓词的终结符号进行语法解析,包括;按照所述N个带谓词的终结符号中所包括的模式串的匹配顺序,对所述N个带谓词的终结符号逐一进行语法解析。6.根据权利要求4所述的方法,其特征在于,所述词法分析器的数量为多个,多个词法分析器与所述语法分析器的多个状态一一对应;在所述将所述待匹配的协议数据输入至词法分析器的步骤之前,所述方法还包括:将所述协议的终结符号压入符号栈的栈顶;所述将所述待匹配的协议数据输入至词法分析器,包括:将所述待匹配的协议数据和从所述符号栈取出的当前栈顶符号输入至与状态栈的当前栈顶状态相对应的词法分析器,以由与所述当前栈顶状态相对应的词法分析器对所述待匹配的协议数据进行数据匹配,其中,所述词...

【专利技术属性】
技术研发人员:侯智瀚邹荣珠
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1