一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种加密数据报文判定方法、装置及计算机设备与流程

2021-12-17 18:55:00 来源:中国专利 TAG:


1.本发明涉及工业控制技术领域,具体涉及一种加密数据报文判定方法、装置及计算机设备。


背景技术:

2.随着工业化与信息化进程的不断交叉融合,越来越多的信息技术应用到了工业领域。与此同时,由于工业控制系统广泛采用通用软硬件和网络设施,以及与企业管理信息系统的集成,导致工业控制系统越来越开放,并且与企业内网,甚至是与互联网都产生了数据交换。因此,针对工业控制设备的非法攻击也越来越多。为了保障工业控制设备的安全,需要对工业控制设备进行漏洞挖掘,以检测工业控制设备是否存在漏洞。
3.相关技术中的基于变异的漏洞挖掘方法,需要在正常数据流量下进行抓包分析后进行变异处理。但是由于加密的报文是不可解析的,因此,基于变异的漏洞挖掘对加密的报文无法进行检测,故亟待提供一种加密数据报文判定方法以筛选出加密报文提高漏洞挖掘效率。


技术实现要素:

4.因此,本发明要解决的技术问题在于克服现有技术中基于变异的漏洞挖掘不能对加密报文进行挖掘,影响漏洞挖掘效率的缺陷,从而提供一种加密数据报文判定方法、装置及计算机设备以筛选出加密报文提高漏洞挖掘效率。
5.根据第一方面,本发明实施例公开了一种加密数据报文判定方法,包括如下步骤:获取待检测数据流中的多条数据报文;对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组;对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果;当所述多个随机度计算结果不满足目标条件,将所述待检测数据流中的数据报文判定为加密数据报文。
6.可选地,当所述多个随机度计算结果不满足目标条件,将所述待检测数据流中的数据报文判定为加密数据报文,包括:当所述多个随机度计算结果中目标数量的随机度计算结果不满足预设随机度范围,将所述待检测数据流中的数据报文判定为加密数据报文。
7.可选地,所述对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组,包括:对处于同一个字节位置上的字节数据进行集合,直至完成对所述多条数据报文中最短报文对应的最后一个字节位置上的字节数据的集合操作,得到多个包含多个字节数据的字节数组。
8.可选地,所述目标随机度检测方法包括频数检测方法、块内频数检测方法、游程检测方法、块内最长游程检测方法、二元矩阵秩检测方法和离散傅里叶变换检测方法中的至少三种。
9.根据第二方面,本发明还实施例公开了一种加密数据报文判定装置,包括:获取模
块,用于获取待检测数据流中的多条数据报文;划分模块,用于对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组;计算模块,用于对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果;判定模块,用于当所述多个随机度计算结果不满足目标条件,将所述待检测数据流中的数据报文判定为加密数据报文。
10.可选地,所述判定模块包括:判定子模块,用于当所述多个随机度计算结果中目标数量的随机度计算结果不满足预设随机度范围,将所述待检测数据流中的数据报文判定为加密数据报文。
11.可选地,所述划分模块包括:集合模块,用于对处于同一个字节位置上的字节数据进行集合,直至完成对所述多条数据报文中最短报文对应的最后一个字节位置上的字节数据的集合操作,得到多个包含多个字节数据的字节数组。
12.可选地,所述目标随机度检测方法包括频数检测方法、块内频数检测方法、游程检测方法、块内最长游程检测方法、二元矩阵秩检测方法和离散傅里叶变换检测方法中的至少三种。
13.根据第三方面,本发明实施例还公开了一种计算机设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选所述的加密数据报文判定方法的步骤。
14.根据第四方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选所述的加密数据报文判定方法的步骤。
15.本发明技术方案,具有如下优点:
16.本发明提供的加密数据报文判定方法及装置,通过获取待检测数据流中的多条数据报文,对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组,对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果,当多个随机度计算结果不满足目标条件,将待检测数据流中的数据报文判定为加密数据报文。加密后的报文,数据的随机性很强,而没有加密的报文在纵向上对齐后,每个字段有固定的含义,所以取值范围有限,随机度就弱,本发明利用该特性对数据报文的随机性进行分析,可以简单快速判定数据报文是否进行过加密操作,继而筛选出加密报文,仅对未进行加密的报文进行漏洞挖掘以提高漏洞挖掘效率。
附图说明
17.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1为本发明实施例1中加密数据报文判定方法的一个具体示例的流程图;
19.图2为本发明实施例1中按单字节划分数据报文的一个具体示例图;
20.图3为本发明实施例2中加密数据报文判定装置的一个具体示例的原理框图;
21.图4为本发明实施例3中计算机设备的一个具体示例图。
具体实施方式
22.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
23.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
24.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
25.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
26.实施例1
27.本发明实施例提供一种加密数据报文判定方法,可应用于测试设备,通过测试设备对上位机传输给被测设备的数据报文的加密状态进行判定,如图1所示,包括如下步骤:
28.s11:获取待检测数据流中的多条数据报文。
29.示例性地,在本发明实施例中,以漏洞挖掘设备对工业控制设备的漏洞挖掘为例,测试设备可以集成在漏洞挖掘设备中,也可以是一个单独的设备,本发明实施例对该测试设备不作限定,本领域技术人员可根据实际情况设定。被测设备可以为工业控制设备,漏洞挖掘设备至少包括两个接口,其中一个接口连接工业控制设备,另一个接口连接上位机,漏洞挖掘设备在漏洞挖掘过程中捕获上位机发送给工业控制设备的待检测数据流。一条待检测数据流中包括多条数据报文,数据报文的获取数量m可根据参与随机度运算的数据报文的bit数确定,具体关系算式为:m<2
b
,其中b是参与随机度计算的数据报文的bit数。一个字节等于8bit,例如,当以单字节进行计算的时候,数据报文的获取数量m小于256(28=256);当以双字节数进行计算的时候,m小于65536(2
16
=65536),本发明实施例对该参与随机度运算的字节数不作具体限定,本领域技术人员可以根据实际情况设定。
30.s12:对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组。
31.示例性地,对每一条数据报文按字节的划分方式可以是按照单字节进行划分,也可以按照多字节进行划分。本发明实施例以单字节进行计算(即m<256)为例进行说明,如图2所示,将获取到的多条数据报文按照图2所示的方法依次排列,由于数据报文头部一般不加密,在本发明实施例中,图2所示的多条数据报文不包含数据报文的头部。
32.对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组具体可以为:对多条数据报文在纵向上按单字节进行划分,得到多个单字节数据,分别将第一个字节位置上的所有字节数据、第二个字节位置上的所有字节数据、第三个字节位置上的所有字节数据保存到一个数组中,得到字节数组1、字节数组2以及字节数组3,以此类推,得到多个包含多个字节数据的字节数组1,2,3
……
n。该字节数组的个数可以为多条数据报文中报文长度的最大值,也可以为多条数据报文中报文长度的最小值,本发明实施例对该字节数组的个数不作限定,本领域技术人员可以根据实际情况设定。
33.s13:对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果。
34.示例性地,加密后的数据报文,数据的随机性很强,而没有加密的报文在纵向上对齐后,每个字段都有固定的含义,所以取值范围有限,随机度就弱,通过这样的特性,可以简单快速判定报文是否进行过加密操作。在本发明实施例中,可以采用nist的随机度计算方法对每个字节数组中的字节数据进行随机度计算。目标随机度检测方法包括频数检测方法、块内频数检测方法、游程检测方法、块内最长游程检测方法、二元矩阵秩检测方法和离散傅里叶变换检测方法中的任意一种或几种,本技术实施例中选择至少三种目标随机度检测方法进行随机度计算。上述目标随机度检测方法的具体计算过程可参照nist随机度计算方法的相关资料,在此不再赘述。通过不少于三种的随机度检测方法计算得到随机度计算结果提高了加密数据报文的判定准确率。
35.s14:当多个随机度计算结果不满足目标条件,将待检测数据流中的数据报文判定为加密数据报文。
36.示例性地,该目标条件可以为一定数量的随机度计算结果在预设随机度范围内,例如100个随机度计算结果在预设随机度范围内,也可以为所有随机度计算结果均在预设随机度范围内,本发明实施例对该目标条件不作限定,本领域技术人员可以根据实际情况设定。上述预设随机度范围可以为随机度计算结果小于0.01,本发明实施例对该预设范围不作具体限定,本领域技术人员可以根据实际情况设定。当采用多种目标随机度检测方法对每个字节数组的随机度进行计算,每个字节数组将对应多种随机度计算结果,若有任意一个随机度计算结果大于或等于0.01,判定该字节数组对应的随机度计算结果不在预设随机度范围内。
37.例如,当所有随机度计算结果均在预设条件范围内时,则将待检测数据流中的数据报文判定为非加密数据报文,反之,将待检测数据流中的数据报文判定为加密数据报文。通过对所有随机度计算结果进行判定,提高了对加密数据报文的判定准确率。
38.作为本发明一个可选实施方式,步骤s14包括:当多个随机度计算结果中目标数量的随机度计算结果不满足预设随机度范围,将待检测数据流中的数据报文判定为加密数据报文。
39.示例性地,为了减少计算量,当多个随机度计算结果中目标数量的随机度计算结果不满足上述预设随机度范围,将待检测数据流中的数据报文判定为加密数据报文。该目标数量可以为随机度计算结果的数量的90%,判定90%的随机度计算结果均在预设随机度范围内,则将待检测数据流中的数据报文判定为非加密数据报文,反之,将待检测数据流中
的数据报文判定为加密数据报文。通过部分随机度计算结果对加密数据报文状态进行判定,提高了对加密数据报文的判定效率。
40.本发明提供的加密数据报文判定方法,通过获取待检测数据流中的多条数据报文;对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组;对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果;当多个随机度计算结果不满足目标条件,将待检测数据流中的数据报文判定为加密数据报文。加密后的报文,数据的随机性很强,而没有加密的报文在纵向上对齐后,每个字段有固定的含义,所以取值范围有限,随机度就弱,本发明利用该特性对数据报文的随机性进行分析,可以简单快速判定数据报文是否进行过加密操作,继而筛选出加密报文,仅对未进行加密的报文进行漏洞挖掘以提高漏洞挖掘效率。
41.作为本发明一个可选实施方式,步骤s12包括:
42.对处于同一个字节位置上的字节数据进行集合,直至完成对多条数据报文中最短报文对应的最后一个字节位置上的字节数据的集合操作,得到多个包含多个字节数据的字节数组。
43.示例性地,将获取到的多条数据报文按照图2所示的方法依次排列,按字节统计每一条数据报文的报文长度并得到多条数据报文中的最小报文长度n,对多条数据报文在纵向上按字节进行划分,对处于同一个字节位置上的字节数据进行集合,即对排列好的数据报文在纵向上切割集合,直至报文长度最小的数据报文被切割完成,得到n包含m个字节数据的字节数组。根据数据报文长度最小值划分得到的多个字节数据进行随机度计算,减少了计算量,提高加密数据报文的判定效率。
44.实施例2
45.本发明实施例提供一种加密数据报文判定装置,如图3所示,包括:
46.获取模块21,用于获取待检测数据流中的多条数据报文;具体实现方式见实施例1中步骤s11,在此不再赘述。
47.划分模块22,用于对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组;具体实现方式见实施例1中步骤s12,在此不再赘述。
48.计算模块23,用于对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果;具体实现方式见实施例1中步骤s13,在此不再赘述。
49.判定模块24,用于当多个随机度计算结果不满足目标条件,将待检测数据流中的数据报文判定为加密数据报文。具体实现方式见实施例1中步骤s14,在此不再赘述。
50.本发明提供的加密数据报文判定装置,通过获取待检测数据流中的多条数据报文;对每一条数据报文按字节进行划分,对处于同一个字节位置上的字节数据进行集合,得到多个包含多个字节数据的字节数组;对每个字节数组中的字节数据按照目标随机度检测方法进行随机度计算,得到多个随机度计算结果;当多个随机度计算结果不满足目标条件,将待检测数据流中的数据报文判定为加密数据报文。加密后的报文,数据的随机性很强,而没有加密的报文在纵向上对齐后,每个字段有固定的含义,所以取值范围有限,随机度就弱,本发明利用该特性对数据报文的随机性进行分析,可以简单快速判定数据报文是否进
行过加密操作,继而筛选出加密报文,仅对未进行加密的报文进行漏洞挖掘以提高漏洞挖掘效率。
51.作为本发明一个可选实施方式,判定模块24包括:
52.判定子模块,用于当多个随机度计算结果中目标数量的随机度计算结果不满足预设随机度范围,将待检测数据流中的数据报文判定为加密数据报文。具体实现方式见实施例1中对应的步骤,在此不再赘述。
53.作为本发明一个可选实施方式,划分模块22包括:
54.集合模块,用于对处于同一个字节位置上的字节数据进行集合,直至完成对多条数据报文中最短报文对应的最后一个字节位置上的字节数据的集合操作,得到多个包含多个字节数据的字节数组。具体实现方式见实施例1中对应的步骤,在此不再赘述。
55.作为本发明一个可选实施方式,目标随机度检测方法包括频数检测方法、块内频数检测方法、游程检测方法、块内最长游程检测方法、二元矩阵秩检测方法和离散傅里叶变换检测方法中的至少三种。具体实现方式见实施例1中对应的步骤,在此不再赘述。
56.实施例3
57.本发明实施例还提供了一种计算机设备,如图4所示,该计算机设备可以包括处理器31和存储器32,其中处理器31和存储器32可以通过总线或者其他方式连接,图4中以通过总线连接为例。
58.处理器31可以为中央处理器(central processing unit,cpu)。处理器31还可以为其他通用处理器、数字信号处理器(digital signalprocessor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
59.存储器32作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的加密数据报文判定方法对应的程序指令/模块(例如,图2所示的获取模块21、划分模块22、计算模块23和判定模块24)。处理器31通过运行存储在存储器32中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的加密数据报文判定方法。
60.存储器32可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器31所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器32可选包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至处理器31。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
61.所述一个或者多个模块存储在所述存储器32中,当被所述处理器31执行时,执行如图1所示实施例中的加密数据报文判定方法。
62.上述计算机设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
63.实施例4
64.本发明实施例还提供了一种计算机存储介质,所述计算机存储介质存储有计算机
可执行指令,该计算机可执行指令可执行上述任意方法实施例中的加密数据报文判定方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
65.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献