一种数据特征提取的方法及装置的制造方法_5

文档序号:9791787阅读:来源:国知局
括应用层负载长度。
[0173]较佳的,采用指定的匹配算法,根据从第一会话中提取的一个报文应用层负载字节序构建相应的状态机时,匹配单元41具体用于:
[0174]基于从第一会话中提取的一个报文应用层负载字节序,采用预设方式进行处理,得到相应的模式串集合;
[0175]基于上述模式串集合,采用指定的匹配算法构建相应的状态机。
[0176]较佳的,基于从第一会话中提取的一个报文应用层负载字节序,采用预设方式进行处理,得到相应的模式串集合时,匹配单元41具体用于:
[0177]从上述一个报文应用层负载字节序中的第一个字节开始,以2字节为单位进行字节段提取,直到剩余字节的长度小于2为止,获得第一提取结果;
[0178]从上述一个报文应用层负载字节序中的第二个字节开始,以2字节为单位进行字节段提取,直到剩余字节的长度小于2为止,获得第二提取结果;
[0179]分别将第一提取结果和第二提取结果中包含的每一个字节段作为一个模式串,生成相应的模式串集合,并保存每一个模式串在上述一个报文应用层负载字节序中的起始位置值和结束位置值。
[0180]较佳的,将当前构建的状态机与从第二会话中提取的任意一个报文应用层负载字节序进行匹配后,获得相应的匹配结果,在上述匹配结果中记录有匹配得到的所有特征串,以及每一个特征串在第一会话中的报文应用层负载字节序中的起始位置值和结束位置值,以及在第二会话中的报文应用层负载字节序中的起始位置值和结束位置值;其中,上述特征串为,上述当前构建的状态机中的所有模式串中在上述从第二会话中提取的任意一个报文应用层负载字节序中出现的任意一个模式串。
[0181]较佳的,当前构建的状态机与从第二会话中提取的任意一个报文应用层负载字节序进行匹配,获得相应的匹配结果,对当前获得的匹配结果进行迭代合并时,进一步包括,优化单元,用于:
[0182]将当前获得的匹配结果中的每一个特征串按照每一个特征串在第二会话中的报文应用层负载字节序中的起始位置值以及每一个特征串在第一会话中的报文应用层负载字节序中的起始位置值,按照从小到大的顺序进行排序;
[0183]排序结束后,从第一个特征串开始,依次判断相邻的两个特征串是否可以迭代合并,若是,则获得合并后的特征串,否则,从下一个特征串开始,依次判断相邻的两个特征串是否可以迭代合并,直到最后一个特征串为止;其中,迭代合并表示,相邻的两个特征串合并后,将合并后的特征串再和相邻的下一个特征串进行合并;
[0184]针对上述所有不能迭代合并的特征串,依次判断每一个特征串在第二会话中的报文应用层负载字节序中的起始位置值和在第一会话中的报文应用层负载字节序中的起始位置值是否相等时,若是,则进行保留,否则,进行舍弃;
[0185]将经迭代合并后的匹配结果中连续为0x00和Oxff的特征串舍弃
[0186]较佳的,判断相邻的两个特征串是否可以迭代合并时,优化单元42具体用于:
[0187]判断相邻的两个特征串是否满足预设条件;其中,上述预设条件为,相邻的两个特征串中的前一个特征串在第二会话中的报文应用层负载字节序中的结束位置值不小于后一个特征串在第二会话中的报文应用层负载字节序中的起始位置值,并且,后一个特征串在第二会话中的报文应用层负载字节序中的结束位置值与前一个特征串在第二会话中的报文应用层负载字节序中的起始位置值的第一差值,与,后一个特征串在第一会话中的报文应用层负载字节序中的结束位置值与前一个特征串在第一会话中的报文应用层负载字节序中的起始位置值的第二差值相等,以及,上述第一差值和第二差值都不小于2。
[0188]较佳的,根据预设规则计算当前获得的经迭代合并后的匹配结果的权值,时,匹配单元41具体用于:
[0189]将经迭代合并后的匹配结果中每一个长度为2的特征串的权值设置为I,并将每一个长度大于2的特征串的权值设置为2;
[0190]将经迭代合并后的匹配结果中每一个特征串的权值进行累加,获得所有特征串的权值和,并上述权值和作为上述当前获得的迭代合并后的匹配结果的权值。
[0191 ]较佳的,进一步包括,规则创建单元43,用于:
[0192]根据上述报文信息和上述应用操作的数据特征,构建识别上述应用操作的规则,其中,报文信息中至少包括,源端口、目的端口、报文在会话中的位置以及报文在会话中的流向ig息。
[0193]综上所述,本发明实施例中,确定需要进行数据特征提取的第一会话和第二会话,并从上述第一会话包含的报文中提取第一设定数目的报文信息,以及从上述第二会话包含的报文中提取第二设定数目的报文信息;其中,上述第一会话和第二会话是同一个应用操作在不同时间所产生的,上述报文信息中至少包括报文应用层负载字节序;采用指定的匹配算法,依次根据从第一会话中提取的每一个报文应用层负载字节序构建相应的状态机,每构建一个状态机,将当前构建的状态机与从第二会话中提取的每一个报文应用层负载字节序依次进行匹配,每执行一次匹配,根据预设规则计算当前获得的匹配结果的权值,直到确定当前获得的权值不小于设定阈值为止,确定匹配成功并停止构建状态机及停止匹配,以及将匹配成功的匹配结果作为上述应用操作的数据特征。这样,根据从第一会话提取的报文应用层负载字节序和匹配算法,构建状态机,并根据从第二会话中提取的报文应用层负载字节序,进行匹配,最后获得应用操作的数据特征,解决了对私有协议及加密流量的应用特征提取难得问题,提高了效率,解放了人力,且对匹配结果进行迭代合并,舍弃弱特征,得到了强特征集合,提高了所提取特征串的有效性;
[0194]并且,在提取报文信息时,进行预处理,即只对符合要求的报文进行提取,缩小了进行数据特征提取的报文的范围,减少了大量报文匹配带来的性能损耗;通过构建模式串集合和多模式匹配得到数据特征集,而不是使用逐字节序比较等方法,这样显著提升了匹配速度,也提高了匹配精度,排除了漏掉有效特征串的问题;对匹配结果的数据特征集,进行了优化,舍弃弱特征,并通过特征串合并等操作得到了强特征集合,提高了所提取特征串的有效性,降低了数据特征提取中无效特征产生的噪声。
[0195]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0196]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0197]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0198]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0199]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0200]显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种数据特征提取的方法,其特征在于,包括: 确定需要进行数据特征提取的第一会话和第二会话,并从所述第一会话包含的报文中提取第一设定数目的报文信息,以及从所述第二会话包含的报文中提取第二设定数目的报文信息;其中,所述第一会话和第二会话是同一个应用操作在不同时间所产生的,所述报文信息中至少包括报文应用层负载字节序; 采用指定的匹配算法,依次根据从第一会话中提取的每一个报文应用层负载字节序构建相应的状态机,每构建一个状态机,将当前构建的状态机与从第二会话中提取的每一个报文应用层负载字节序依次进行匹配,每执行一次匹配,对当前获得的匹配结果进行迭代合并,并根据预设规则计算当前获得的经迭代合并后的匹配结果的权值,直到确定当前获得的权值不小于设定阈值为止,确定匹配成功并停止构建状态机及停止匹配,以及将当前获得的经迭代合并后的匹配结果作为所述应用操作的数据特征。2.如权利要求1所述的方法,其特征在于,从所述第一会话包含的报文中提取第一设定数目的报文信息,以及从所述第二会话包含的报文中提取第二设定数目的报文信息,具体包括: 依次从第一会话中读取报文,每读取一个报文,判断当前读取的一个报文的应用层负载长度是否大于O,且是否为重传报文,并在确定所述一个报文的应用层负载长度大于O,且不是重传报文时,从所述一个报文中提取报文信息,直至提取到第一设定数目的报文信息为止,停止读取报文;其中,报文信息中至少包括应用层负载长度; 依次从第二会话中读取报文,每读取一个报文,判断当前读取的一个报文的应用层负载长度是否大于O,且是否为重传报文,并在确定所述一个报文的应用层负载长度大于O,且不是重传报文时,从所述一个报文中提取报文信息,直至提取到第二设定数目的报文信息为止,停止读取报文;其中,报文信息中至少包括应用层负载长度。3.如权利要求1所述的方法,其特征在于,采用指定的匹配算法,根据从第一会话中提取的一个报文应用层负载字节序构建相应的状态机,具体包括: 基于从第一会话中提取的一个报文应用层负载字节序,采用预设方式进行处理,得到相应的模式串集合; 基于所述模式串集合,采用指定的匹配算法构建相应的状态机。4.如权利要求3所述的方法,其特征在于,基于从第一会话中提取的一个报文应用层负载字节序,采用预设方式进行处理,得到相应的模式串集合,具体包括: 从所
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1