用于数据处理的系统和方法

文档序号:7983960阅读:254来源:国知局
用于数据处理的系统和方法
【专利摘要】本发明涉及一种用于数据处理的方法和系统,其中,所述系统包括:接口,其用于接收指定网络业务的数据,其中所述数据包含所述指定网络业务的数据报文的应用层载荷;以及,自学习引擎,其用于根据所述接收的数据利用文法推断来产生所述指定网络业务的模式。利用该方法和系统,可以消除人工配置DPI模式的繁琐工作并避免了人工操作可能导致的各种错误。
【专利说明】用于数据处理的系统和方法
【技术领域】
[0001]本发明涉及网络安全领域,更具体地,涉及网络安全领域中的深度报文检测技术。【背景技术】
[0002]深度报文检测(DPI)是对数据报文的有效载荷(从层3到层7)进行检测的网络报文处理装置,用于检查网络业务中的协议不一致性、病毒、垃圾邮件、入侵等,或者基于其他预定义的模式或规则来检查网络业务,从而决定要对网络业务中的数据报文采取什么动作。DPI将入侵检测系统(IDS)和入侵防护系统(IPS)的功能与传统的状态防火墙结合了起来。这种结合将传统防火墙的过滤与检测从TCP/IP层向上扩展到了应用层,并且能够检查整个网络业务的数据报文流。DPI能够基于与报文数据有效载荷中提取的信息所对应的签名数据库来对网络业务进行识别和分类,从而比仅基于数据报文头部的分类实现更精细的控制。因此,DPI能够用于阻止各种各样的攻击。分类后的数据报文可以被重定向、作标记/加标签、阻止、速率限制以及记录以用于将来分析。
[0003]由于DPI使得能够实现高级网络管理、用户服务、安全功能以及互联网数据挖掘等,目前许多企业、公司、服务提供者和政府正在广泛的应用中使用DPI。
[0004]类似于传统的IDS/IPS,DPI的能力取决于模式匹配技术。在实践中,DPI是基于描述网络业务特性的一组模式(或签名),该模式(或签名)描述了合法业务(肯定模式)或攻击业务(否定模式)的特性。DPI仅仅能够检测具有已知模式(肯定模式)的网络协议业务,或者识别由否定模式定义的网络攻击。因此,模式是DPI中的核心角色。
[0005]但是在当前,定义DPI模式主要依赖于人工操作,并且工程师或用户必须使用正则表达式或其他形式化语言来描述网络协议业务模式或攻击模式的特性。图1示出了现有技术中的一种深度报文检测(DPI)系统100,其包括模式容器103和DPI匹配引擎105。在上述深度报文检测(DPI)系统100中,工程师或用户必须人工地使用正则表达式或其他形式化语言来定义合法业务模式(肯定模式)或攻击模式(否定模式),并将这些模式输入到模式容器103中进行存储。之后,DPI匹配引擎105可以使用模式容器103中存储的各种模式进行业务的识别和分类。在上述深度报文检测(DPI)系统100中,无论增加、删除还是更新模式都需要工程师或用户的人工参与,显然,这种方式是复杂的、成本高昂的以及易出错的。

【发明内容】

[0006]考虑到现有技术的以上问题,本发明实施例提供了一种用于数据处理的方案,其可以消除人工配置DPI模式的繁琐工作,并可避免人工操作可能导致的各种错误。
[0007]按照本发明实施例的一种用于数据处理的系统,包括:接口,其用于接收指定网络业务的数据,其中,所述数据包含所述指定网络业务的数据报文的应用层载荷;以及,自学习引擎,其用于根据所述接收的数据利用文法推断来产生所述指定网络业务的模式。
[0008]其中,所述系统还包括:匹配引擎,基于所述模式来检查待监测的数据报文所属的网络业务类型,即指定的网络业务是合法的网络业务还是非法的网络业务。
[0009]其中,所述指定网络业务的数据是所述应用层载荷,以及,所述自学习引擎包括自学习内核,用于对所述应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
[0010]其中,所述指定网络业务的数据是所述数据报文,所述自学习引擎包括:预处理器,用于从所述数据报文中提取所述应用层载荷;以及,自学习内核,用于对所提取的应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
[0011]其中,所述自学习引擎还包括:翻译器,用于将所述压缩形式结构的模式转换为形式文法的模式,作为所述指定网络业务的模式。
[0012]其中,所述系统还包括:模式容器,其用于存储所述产生的模式。
[0013]其中,所述指定网络业务包括合法的网络业务和非法的网络业务中的至少一种。
[0014]按照本发明实施例的一种用于数据处理的方法,包括:接收指定网络业务的数据,其中,所述数据包含所述指定网络业务的数据报文的应用层载荷;以及,根据所述接收的数据利用文法推断来产生所述指定网络业务的模式。
[0015]其中,所述方法还包括:基于所述模式来检查待监测的数据报文所属的网络业务类型。
[0016]其中,所述指定网络业务的数据是所述应用层载荷,所述产生步骤包括:对所述应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
[0017]其中,所述指定网络业务的数据是所述数据报文,
[0018]所述产生步骤包括:从所述数据报文中提取所述应用层载荷;以及,对所提取的应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
[0019]其中,所述产生步骤还包括:将所述压缩形式结构的模式转换为形式文法的模式,作为所述指定网络业务的模式。
[0020]其中,所述方法还包括:存储所述产生的网络业务模式。
[0021 ] 其中,所述指定网络业务包括合法的网络业务和非法的网络业务中的至少一种。
【专利附图】

【附图说明】
[0022]参考附图详细描述了本发明,应当理解,附图以及相应的描述应当被理解为是说明性的而非限制性的,其中:
[0023]图1示出了现有技术中的一种深度报文检测系统;
[0024]图2示出了根据本发明的一个实施例的用于数据处理的系统的示意图;
[0025]图3示出了根据本发明的另一个实施例的用于数据处理的系统的示意图;
[0026]图4示出了根据本发明的一个实施例的自学习引擎的示意图;
[0027]图5示出了根据本发明的一个实施例的用于数据处理的方法的流程图;以及
[0028]图6示出了根据本发明的另一个实施例的用于数据处理的设备的示意图。
【具体实施方式】
[0029]下文将以明确易懂的方式通过对优选实施例的说明并结合附图来对本发明上述特性、技术特征、优点及其实现方式予以进一步说明。应当理解,这些优选实施例仅仅用于对本发明进行示例说明,其并非限制性的。
[0030]对于深度报文检测产品,其模式是它们对网络业务进行检测的能力的核心。但是,对于用户或工程师而言,根据网络协议业务的合法特征或攻击特征通过使用正则表达式或其他形式化语言来人工地定义模式是复杂的、耗时的并且易出错的。另外,这也增加了深度报文检测产品的维护成本。
[0031]文法推断(grammatical inference),也称为文法归纳或句法模式识别,是指一种机器学习技术,该机器学习技术从一组样本中学习对应的形式化文法从而构造出考虑了所述样本特性的模型。文法推断是归纳学习的特定示例,该归纳学习过程为从样本中发现其公共结构的过程。通常肯定样本和/或否定样本用于上述归纳学习过程。肯定样本是基于特定的字符表定义的一组字符串。而否定样本则是不属于目标语言的一组字符串,但其可以对所述推断过程有所帮助。
[0032]在本发明实施例中,通过将文法推断引入信息技术安全领域,深度报文检测产品能够从属于合法的或非法的网络业务的样本数据中自动学习合法的或非法的网络业务的模式,其中,这些模式可以由形式化的表达式(例如,正则表达式)来定义。这里,合法的网络业务例如是符合协议规范的句法、语义和时序逻辑等方面规定的网络业务。非法的网络业务例如是不符合协议规范中的句法、语义或时序逻辑等方面规定的网络业务,比如,由具有错误的句法、非法的语义或非法时序特征的攻击数据报文形成的网络业务。这里,从属于合法的网络业务的样本数据中自动学习得到合法的网络业务的模式,从属于非法的网络业务的样本数据中自动学习得到非法的网络业务的模式。
[0033]本发明提供了一种用于数据处理的方法和系统,以用于根据合法的和/或非法的网络业务的数据利用文法推断来自动地获得合法的和/或非法的网络业务的模式,并且这些模式可以被用于进行深度报文检测。该方法和系统避免了人工定义这些模式的复杂度和成本。
[0034]图2示出了根据本发明的一个实施例的用于数据处理的系统的示意图。如图2所示,系统200可以包括配置接口 201、自学习引擎202、模式容器203和网络接口 204。
[0035]如图所示,配置接口 201可以用于接收网络业务文件206并将该网络业务文件206输入到自学习引擎202。网络接口 204可以用于接收网络业务207并将网络业务207输入到自学习引擎202。该网络业务文件206和网络业务207中包括属于合法的和/或非法的网络业务的数据报文。自学习引擎202可以从配置接口 201和/或网络接口 204获得属于合法的和/或非法的网络业务的数据报文,并把所获得的数据报文所包括的应用层载荷作为模式学习的训练数据,然后,自学习引擎202可以对该应用层载荷进行文法推断以产生合法的和/或非法的网络业务的模式,其中,文法推断的算法可以是但不局限于PRN1、PRNI2、EDSM或SAGE等。模式容器203可以从自学习引擎202接收产生的模式并对这些模式进行存储。
[0036]此外,系统200还可以包括匹配引擎205,其用于根据在模式容器203中存储的模式,检测通信业务中的数据报文属于何种网络业务。
[0037]本领域技术人员应当理解,系统200可以利用软件、硬件(例如集成电路、现场可编程门阵列(FPGA)等)或软硬件结合的方式来实现。
[0038]系统200中的多个部件可以位于同一个封装中,例如集成到一个集成电路中,但是,它们也可以是位于不同的封装中,只要它们可以相互耦合通信即可。可以通过各种连接方式(例如,有线连接方式、无线连接方式或者两者兼有)来进行图2所示部件之间的耦合。而且,上述多个部件中的某个部件也可以被集成到其他部件中,例如,可以将模式容器203的功能集成到自学习引擎202或匹配引擎205中,也即,可以将所产生的模式存储于自学习引擎202或匹配引擎205中,而不再需要另外提供一个单独的模式容器203(如下文图3所示)。
[0039]尽管图2中示出了系统200的多个部件,但应当理解,并非这些部件中的每一个都是必须的。根据实际情况的不同,可以省略其中的一个或多个部件,或者可以省略这些部件之间的一个或多个耦合关系。例如,由于自学习引擎202可以从配置接口 201和网络接口204中的任意一个或者上述二者获得数据,因此在不使用网络业务文件206的情况下,可以省略配置接口 201,或者,在不使用网络业务207的情况下,可以不需要将网络接口 204耦合到自学习引擎202。另外,也可以根据实际需要在系统200增加一些未示出的部件或者对其中的一些部件进行修改或替换。例如,可以使用其他接口来向自学习引擎202提供数据。
[0040]图3示出了根据本发明的另一个实施例的用于数据处理的系统的示意图。与图2所示的系统200相比,图3所示的系统300不包括单独的模式容器,而是在自学习引擎202或匹配引擎205中存储所产生的模式。
[0041]图4示出了根据本发明的一个实施例的自学习引擎的示意图。如图4所示,自学习引擎202可以包括预处理器421、自学习内核422和转换器423。其中,预处理器421可以用于从自配置接口 201和/或网络接口 204接收的属于合法的和/或非法的网络业务的数据报文中提取应用层载荷作为训练样本。自学习内核422可以用于对所提取的训练样本进行文法推断以产生压缩形式结构的模式,其中,压缩形式构造例如可以是但不局限于确定有限自动机(DFA)。转换器423用于将该压缩形式结构的模式转换为形式文法的模式,从而得到合法的和/或非法的网络业务的模式。该形式文法例如但不限于正则表达式。
[0042]上文描述了深度报文检测系统的若干实施例,下文将对相关的方法进行描述。
[0043]图5示出了根据本发明的一个实施例的用于数据处理的方法的流程图。该方法可以由系统200或系统300来执行。
[0044]如图5所示,在步骤501,接收属于合法的和/或非法的网络业务的数据报文。例如可以由例如网络接口 204和/或配置接口 201来执行步骤501。
[0045]在步骤502,从所接收的数据报文中提取应用层载荷作为训练样本。例如可以由自学习引擎202中的预处理器421执行步骤502。
[0046]在步骤503,对所提取的应用层载荷进行文法推断,获得压缩形式构造的模式。这里,如果同时存在从合法网络业务的数据报文中提取的应用层载荷和从非法网络业务的数据报文中提取的应用层载荷,则对这两种应用层载荷的文法推断是分开进行的,以获得各自的压缩形式结构的模式。例如可以由自学习引擎202中的自学习内核422执行步骤503。
[0047]在步骤504,将压缩形式构造的模式转换为形式文法的模式,从而得到合法的和/或非法的网络业务的模式。其中,对于通过对从合法网络业务的数据报文提取的应用层载荷进行文法推断而获得的压缩形式结构的模式,其所转换得到形式文法的模式作为合法的网络业务的模式。对于从非法网络业务的数据报文提取的应用层载荷进行文法推断而获得的压缩形式结构的模式,其所转换得到形式文法的模式作为非法的网络业务的模式。例如可以由自学习引擎202中的转换器423执行步骤504。其中,步骤504得到的模式可以存储在模式容器203中,或者存储在自学习引擎202中。
[0048]此外,还可以包括检查步骤,用于当要确定某个数据报文属于何种网络业务时,基于步骤504得到的模式来检查该某个数据报文所属的网络业务。例如可以由匹配引擎205来执行该检查步骤。例如,当检查发现该某个数据报文包括有非法的网络业务的模式时,则说明该某个数据报文属于非法的网络业务。
[0049]其它变型
[0050]本领域技术人员应当理解,虽然在上面的实施例中,系统200或300从外部接收的是合法的和/非法的网络业务的数据报文,然而,本发明并不局限于此。在本发明的其它一些实施例中,系统200或300也可以直接从外部接收合法的和/非法的网络业务的数据报文的应用层载荷。在这种情况下,自学习引擎202可以不包括预处理器421。
[0051]本领域技术人员应当理解,虽然在上面的实施例中,使用形式文法的模式作为合法的和/非法的网络业务的模式,然而,本发明并不局限于此。在本发明的其它一些实施例中,也可以使用压缩形式结构的模式作为合法的和/非法的网络业务的模式。
[0052]图6示出了按照本发明一个实施例的用于数据处理的设备的示意图。如图6所示,设备600可以包括用于存储可执行指令的存储器610和处理器620。
[0053]其中,处理器620可以用于根据存储器610所存储的可执行指令,执行以下操作:接收指定网络业务的数据,其中,该指定网络业务的的数据具有指定网络业务的数据报文所包括的应用层载荷;以及,根据所接收的数据利用文法推断来产生该指定网络业务的模式。
[0054]此外,处理器620还可以用于根据存储器610所存储的可执行指令,执行以下操作:基于所产生的模式来检查待监测的数据报文所属的网络业务。
[0055]此外,该指定网络业务的数据可以是属于该指定网络业务的数据报文所包括的应用层载荷,并且对于所述产生操作,处理器620根据存储器610所存储的可执行指令执行以下操作:对该应用层载荷进行文法推断以生成压缩形式结构的模式,作为该指定网络业务的模式。
[0056]此外,该指定网络业务的数据可以是指定网络业务的数据报文,并且,对于所述产生操作,处理器620根据存储器610所存储的可执行指令执行以下操作:从属于该指定网络业务的数据报文中提取应用层载荷;以及,对所提取的应用层载荷进行文法推断以生成压缩形式结构的模式,作为该指定网络业务的模式。
[0057]此外,处理器620还用于根据存储器610所存储的可执行指令,执行以下操作:将所生成的压缩形式结构的模式转换为形式文法的模式,作为该指定网络业务的模式。
[0058]此外,处理器620还用于根据存储器610所存储的可执行指令,执行以下操作:存储所产生的模式。
[0059]此外,该指定网络业务可以包括合法的网络业务和非法的网络业务中的至少一种。
[0060]本发明实施例还提供一种机器可读介质,其上存储有可执行指令,当该可执行指令被执行时,使得机器执行处理器620所执行的操作。
[0061]上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例。本领域技术人员在本发明技术构思的启发下,在不脱离本发明设计思想的基础上,可以做出各种改进或变型。本发明的保护范围应当由所附的权利要求书的内容确定。
[0062]在本申请中,术语“包括”、“包含”等不排除存在其它部件或步骤。另外,尽管独立的特征可以包含在不同权利要求中,但是这些特征也可以有利地组合,并且不同权利要求中的包含不暗示着特征的组合是不可行的和/或不利的。
【权利要求】
1.一种处理数据的系统,包括: 接口,其用于接收指定网络业务的数据,其中所述数据包含所述指定网络业务的数据报文的应用层载荷;以及 自学习引擎,其用于根据所述接收的数据利用文法推断来产生所述指定的网络业务模式。
2.如权利要求1所述的系统,其中,还包括: 匹配引擎,用于基于所述模式检查待监测的数据报文所属的网络业务类型。
3.如权利要求1所述的系统,其中, 接收的所述指定网络业务的数据为所述应用层载荷本身,以及所述自学习引擎包括自学习内核,用于对所述应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
4.如权利要求1所述的系统,其中, 所述指定网络业务的数据为所述数据报文, 所述自学习引擎包括:预处理器,用于从所述数据报文中提取所述应用层载荷;以及,自学习内核,用于对所提取的应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
5.如权利要求3或4所述的系统,其中, 所述自学习引擎还包括:转换器,用于将所述压缩形式结构的模式转换为形式文法的模式,并将所述形式文法的模式作为所述指定网络业务的模式。
6.如权利要求1所述的系统,其中,还包括: 模式容器,其用于存储所述产生的网络业务模式。
7.如权利要求1所述的系统,其中, 所述指定网络业务包括合法的网络业务和非法的网络业务中的至少一种。
8.一种用于数据处理的方法,包括: 接收指定网络业务的数据,其中,所述数据包含所述指定网络业务的数据报文的应用层载荷;以及 根据所述接收的数据利用文法推断来产生所述指定网络业务的模式。
9.如权利要求8所述的方法,其中,还包括: 基于所述模式来检查待监测的数据报文所属的网络业务类型。
10.如权利要求8所述的方法,其中, 所述指定网络业务的数据是所述应用层载荷, 所述产生步骤包括:对所述应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
11.如权利要求8所述的方法,其中, 所述指定网络业务的数据是所述数据报文, 所述产生步骤包括:从所述数据报文中提取所述应用层载荷;以及,对所提取的应用层载荷进行文法推断以生成压缩形式结构的模式,作为所述指定网络业务的模式。
12.如权利要求10或11所述的方法,其中, 所述产生步骤还包括:将所述压缩形式结构的模式转换为形式文法的模式,作为所述指定网络业务的模式。
13.如权利要求8所述的方法,其中,还包括: 存储所述产生的网络业务模式。
14.如权利要求8所述的方法,其中, 所述指定网络业务包括合法的网络业务和非法的网络业务中的至少一种。
15.一种用于数据处理的设备,包括: 存储器,用于存储可执行指令;以及 处理器,用于根据所存储的可执行指令,执行权利要求8-14中的任意一项所包括的操 作。
16.—种机器可读介质,其上存储有可执行指令,当所述可执行指令被执行时,使得机器执行权利要求8-14中的任意一项所包括的操作。
【文档编号】H04L29/06GK103716288SQ201210376910
【公开日】2014年4月9日 申请日期:2012年9月29日 优先权日:2012年9月29日
【发明者】唐文, 沃尔夫冈·施密德 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1