CN112671726A - 工业控制协议解析方法、装置、电子设备和存储介质 - Google Patents
工业控制协议解析方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112671726A CN112671726A CN202011457879.4A CN202011457879A CN112671726A CN 112671726 A CN112671726 A CN 112671726A CN 202011457879 A CN202011457879 A CN 202011457879A CN 112671726 A CN112671726 A CN 112671726A
- Authority
- CN
- China
- Prior art keywords
- industrial control
- data
- control protocol
- protocol
- data unit
- 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.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000003066 decision tree Methods 0.000 claims abstract description 22
- 238000012549 training Methods 0.000 claims abstract description 8
- 238000004891 communication Methods 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 11
- 238000001514 detection method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 238000013138 pruning Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000012098 association analyses Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
本说明书一个或多个实施例提供一种工业控制协议解析方法,其特征在于,包括:接收未知工业控制协议数据;通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果;其中,所述工业控制协议解析模型是通过利用多种已知工业控制协议数据建立并训练决策树模型而得到的。
Description
技术领域
本说明书一个或多个实施例涉及电气领域,尤其涉及一种工业控制协议解析方法、装置、电子设备和存储介质。
背景技术
电力工业控制协议识别技术是电力工业控制系统和电力设备网络流量监控、入侵检测、电力网络安全防护的基础,随着电力工业控制行业的发展,各种新控制系统、新控制设备不断出现,这些控制系统和设备大都使用私有的通信协议,协议种类繁多,实现各不相同,这给电力网络安全防护带来了极大的困难。当前通常采用人工的方式对协议进行解析,但人工解析工业控制协议效率低下。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种工业控制协议解析方法、装置、电子设备和存储介质,以解决人工解析工业控制协议效率低下的问题。
基于上述目的,本说明书一个或多个实施例提供了一种工业控制协议解析方法,包括:
接收未知工业控制协议数据;
通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果;
其中,所述工业控制协议解析模型是通过利用多种已知工业控制协议数据建立并训练决策树模型而得到的。
在一些实施方式中,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
在一些实施方式中,还包括:
将所述解析结果发送到云端服务器以存入公共知识库。
在一些实施方式中,所述决策树模型的根节点对应工业控制协议数据有效荷载部分;
所述根节点的子节点包括报文头子节点、数据单元子节点和报文尾子节点;
所述报文头子节点的叶节点包括固定开始叶节点、功能码叶节点、寄存器地址叶节点和长度叶节点;
所述数据单元子节点的叶节点包括多个值域数据类型叶节点;
所述报文尾子节点的叶节点包括校验字节叶节点和固定结尾叶节点。
在一些实施方式中,所述多种已知工业控制协议数据包括下列中至少一种工业控制协议的数据:
IEC101国际标准安全类标准协议、IEC104国际标准安全类标准协议、 Modbus通讯协议、ProfibusDP现场总线通讯协议、Profinet通讯协议、S7以太网协议、DLT645通信协议和IEC61850国际标准安全类标准协议。
基于同一发明构思,本说明书一个或多个实施例还提供了一种工业控制协议解析装置,其特征在于,包括:
数据接收模块,被配置为,接收未知工业控制协议数据;
协议解析模块,被配置为,通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果。
在一些实施方式中,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
在一些实施方式中,将所述解析结果发送到云端服务器以存入公共知识库。
基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算程序时实现根据上述实施例中任意一项所述的方法。
基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令在被计算机执行时,使所述计算机实现根据上述实施例中任意一项所述的方法。
从上面所述可以看出,本说明书一个或多个实施例提供的一种工业控制协议解析方法、装置、电子设备和存储介质基于决策树模型、实时工业控制系统和云端知识库技术能够代替人工对未知工业控制协议进行自动解析,极大地提高了工业控制协议的解析效率,可广泛用于工业控制网络的各个环节。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的工业控制协议解析模型结构图;
图2为本说明书一个或多个实施例的工业控制协议解析流程图;
图3为本说明书一个或多个实施例的实时工业控制系统数据示意图;
图4为本说明书一个或多个实施例的电子设备硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
工业控制系统的现场网络与控制网络之间的通信、现场网络各工业控制设备之间的通信、控制网络各组件的通信往往采用工业控制系统特有的通信协议。工业控制协议识别技术是工业控制系统和设备网络流量监控、入侵检测、电力网络安全防护的基础,随着工业控制行业的发展,各种新控制系统、新控制设备不断出现,这些控制系统和设备大都使用私有的通信协议,协议种类繁多,实现各不相同,这给工业控制网络安全防护带来了极大的困难。
如背景技术部分所述,随着工业控制行业的发展,各种新控制系统、新控制设备不断出现,这些控制系统和设备大都使用私有的通信协议,协议种类繁多,实现各不相同,这给工业控制网络安全防护带来了极大的困难。申请人在实现本公开的过程中发现,目前通常是采用人工的方式对协议进行分析,但面对大量的私有协议人工解析工业控制协议效率低下。
有鉴于此,本说明书一个或多个实施例提供的一种工业控制协议解析方法、装置、电子设备和存储介质通过将决策树模型、实时工业控制系统和云端知识库技术相结合,对未知工业控制协议进行解析,将所述云端服务器的数据与所述未知工业控制协议进行对比,若所述云端服务器的数据已包含所述未知工业控制协议,则直接调用所述云端服务器的数据;若所述云端服务器的数据不包含未知工业控制协议,则使用所述工业控制协议解析模型对所述未知工业控制协议进行解析,并将解析结果上传至云端知识库。
可见,本说明书一个或多个实施例的一种工业控制协议解析方法、装置、电子设备和存储介质基于决策树模型、实时工业控制系统和云端知识库技术能够代替人工对未知工业控制协议进行自动解析,极大地提高了工业控制协议的解析效率,可广泛用于工业控制网络的各个环节。
以下,结合图1为本说明书一个或多个实施例的工业控制协议解析模型结构图,图2为本说明书一个或多个实施例的工业控制协议解析流程图,图 3为本说明书一个或多个实施例的实时工业控制系统数据示意图和图4为本说明书一个或多个实施例的电子设备硬件结构示意图,通过具体的实施例进一步详细说明本公开的技术方案。
本说明书一个或多个实施例提供了一种工业控制协议解析方法,包括:
接收未知工业控制协议数据;
通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果;
其中,所述工业控制协议解析模型是通过利用多种已知工业控制协议数据建立并训练决策树模型而得到的。
在一些实施方式中,所述决策树模型的根节点对应工业控制协议数据有效荷载部分;
所述根节点的子节点包括报文头子节点、数据单元子节点和报文尾子节点;
所述报文头子节点的叶节点包括固定开始叶节点、功能码叶节点、寄存器地址叶节点和长度叶节点;
所述数据单元子节点的叶节点包括多个值域数据类型叶节点;
所述报文尾子节点的叶节点包括校验字节叶节点和固定结尾叶节点。
在一些实施方式中,所述多种已知工业控制协议数据包括下列中至少一种工业控制协议的数据:
IEC101国际标准安全类标准协议、IEC104国际标准安全类标准协议、 Modbus通讯协议、ProfibusDP现场总线通讯协议、Profinet通讯协议、S7以太网协议、DLT645通信协议和IEC61850国际标准安全类标准协议。
在一些实施方式中,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
在一些实施方式中,还包括:
将所述解析结果发送到云端服务器以存入公共知识库。
具体的,根据已知工业控制协议数据建立决策树基础模型,决策树模型的根节点为工业协议单元数据,如TCP、UDP、Ethernet II中提取得Payload 部分即有效载荷,或者来自串口数据帧等。将有效载荷拆分成3个部分,分别为报文头、数据单元和报文尾,然后再将报文头、数据单元和报文尾每一部分拆分为功能不同的组合。
报文头是一帧数据的开始部分,包含了一些基本的信息,主要包括:固定开始:一个或多个固定字节,固定不变,可作为协议的识别特征,有些协议包含固定的起始字节,有些协议则不包含的;设备地址:源、目的地址;功能码:定义了这一帧数据的功能,是请求还是应答,读写的数据类型等;寄存器地址:读写的寄存器地址范围。长度:读写的寄存器数量、字节数量等信息。因此报文头子节点的叶节点包括固定开始叶节点、功能码叶节点、寄存器地址叶节点和长度叶节点。
数据单元由一个或多个值域组成,值域内容可能是一条命令、一个状态、一个设定值或者是一个过程值等。值域的数据类型可以是BOOL、 BYTE、WORD、DWORD、INT、FLOAT型等。BOOL型取值范围为0和 1,可表示是非、真假、开关、启停等;BYTE型可表示0-255之间的整数;WORD型由2个字节组成,可表示0-65535之间的整数;DWORD型由4个字节组成,可表示0—(232-1)之间的整数;INT型有可分为: SINT短整形,由2个字节组成,可表示-32768~+32767之间的整数;LONG 长整型,由4个字节组成,可表示-2147483648~2147483647间的整数; UINT无符号整形,4个字节组成,可表示0—(232-1)之间的整数;Float 型由4个字节组成,可表示-3.4E+38~3.4E+38之间的浮点数;double float 型由8个字节组成,数值范围为-1.79769313486232E308到 1.79769313486232E308。因此数据单元子节点的叶节点包括多个值域数据类型叶节点,这些值域数据类型包括Float、Bool、WORD、DWORD和INT 等。
报文尾一般校验字节和固定结尾字节构成。校验字节:为保证数据的完整性,用一种指定的算法对原始数据计算出的一个校验值。接收方用同样的算法计算一次校验值,如果和随数据提供的校验值一样,就说明数据是完整的,常用的校验方法有bcc、crc、海明码校验等。BCC异或校验法(block check character):很多基于串口的通讯都用这种既简单又相当准确的方法。它就是把所有数据都和一个指定的初始值(通常是0)异或一次,最后的结果就是校验值,通常把它附在通讯数据的最后一起发送出去。接收方收到数据后自己也计算一次异或和校验值,如果和收到的校验值一致就说明收到的数据是完整的。CRC循环冗余校验(Cyclic Redundancy Check):CRC循环冗余校验码是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。海明码校验:将有效信息按某种规律分成若干组,每组安排一个校验位,做奇偶测试,就能提供多位检错信息,以指出最大可能是哪位出错,从而将其纠正。实质上,海明校验是一种多重校验。固定结尾:一帧数据的结尾标志,可作为协议的识别特征。有些协议包含固定的起始字节,有些协议则不包含的。因此报文尾子节点的叶节点包括校验字节叶节点和固定结尾叶节点。
对所述决策树模型进行训练时,利用采集得到的工业控制协议数据对模型进行训练,工业控制协议数据来源包括工业控制网络旁路采样、串口取样、 Pcap包导入等,具体的工业控制协议包括IEC101国际标准安全类标准协议、 IEC104国际标准安全类标准协议、Modbus通讯协议、ProfibusDP现场总线通讯协议、Profinet通讯协议、S7以太网协议、DLT645通信协议和IEC61850 国际标准安全类标准协议。
决策树模型完成训练后,通过剪枝操作优化完善模型,如增加或修改决策树的分支、子节点、叶节点等。在决策树模型选择特征时,选择基尼指数增益值最大的特征,作为该节点分裂条件。在分类模型建立的过程中,很容易出现过拟合的现象,过拟合是指在模型学习训练中,训练样本达到非常高的逼近精度,但对检验样本的逼近误差随着训练次数而呈现出先下降后上升的现象,过拟合时训练误差很小,但是检验误差很大,不利于实际应用。决策树的过拟合现象可以通过剪枝进行一定的修复。剪枝分为预先剪枝和后剪枝两种。预先剪枝指在决策树生长过程中,使用一定条件加以限制,使得产生完全拟合的决策树之前就停止生长。后剪枝是在决策树生长完成之后,按照自底向上的方式修剪决策树。本实施例采用后剪枝使用新的叶子节点替换子树,该节点的预测类由子树数据集中的多数类决定。本实施例将优化后的模型再次训练,直到达到预期效果为止。在后期对未知电力工业控制协议进行识别和解析的时候,也可以根据人工判断后对模型进行必要的完善。
在使用工业控制协议解析模型解析未知工业控制协议时,首先与云端知识库通讯,当检索到知识库中已有要解析的未知工业控制协议的数据时,直接调用知识库中的数据,当检索到知识库不包含要解析的未知工业控制协议时,启用工业控制协议解析模型对未知工业控制协议进行解析;初步识别出未知工业控制协议有效载荷部分的报文头、数据单元、报文尾及报文头、数据单元和报文尾的子节点和子节点的叶节点等,同时通过TCP包头获取协议所使用的源目的端口,IP地址范围等信息;结合工业控制系统的实时数据库对数据单元进行深度解析,如表1为未知工业控制协议深度解析结果所示,解析出数据单元的每一个值域的数据类型与电力工业控制系统中标签变量如指令、状态、调节值、过程值的对应关系。
进一步的,将识别结果导入工业控制系统的操作日志,实现指令级的网络安全防护。
表1-未知工业控制协议深度解析结果
基于同一发明构思,本说明书一个或多个实施例还提供了一种工业控制协议解析装置,其特征在于,包括:
数据接收模块,被配置为,接收未知工业控制协议数据;
协议解析模块,被配置为,通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果。
在一些实施方式中,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
在一些实施方式中,将所述解析结果发送到云端服务器以存入公共知识库。
基于同一发明构思,本说明书一个或多个实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算程序时实现根据上述实施例中任意一项所述的方法。
基于同一发明构思,本说明书一个或多个实施例还提供了一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令在被计算机执行时,使所述计算机实现根据上述实施例中任意一项所述的方法。
本公开可广泛用于工业控制网络安全防护中,如用于未知工业控制协议识别与深度解析、协议数据合规性检测、过程值告警、自动生成IPS防护规则,并且可与其他网络安全产品联动,作为工业蜜罐的协议模拟模块,工业控制网络画像。
具体的,当用于未知工业控制协议识别与深度解析时,可解析出未知工业控制协议数据单元的每一个值域的数据类型与电力工业控制系统中标签变量如指令、状态、调节值、过程值的对应关系,将识别结果导入工业控制系统的操作日志,能够实现指令级的网络安全防护,可从TCP、UDP包头中提取出协议使用的源目的端口等。
当用于协议数据合规性检测时,可以对已知协议和(已完成识别和解析的)未知协议进行合规性检测,如功能码取值范围是否合法,差错校验码是否正确,数据长度是否超过限制等。
当用于过程值告警时,可实现对工业控制系统标签变量过程值进行正态分布分析,及时发现异常,对不符合正态分布规律的数据进行告警。
当用于自动生成IPS防护规则时,根据合规性检测和过程值告警结果,自动生成IPS防护规则,用于工业防火墙/工业审计等产品。
当与其他网络安全产品联动时,可与防火墙、审计、态势感知等系统进行联动,实现网络威胁的关联分析,或者作为其他基于人工智能技术的网络安全产品的子模块进行应用。
当作为工业蜜罐的协议模拟模块时,用于对工业网络攻击行为进行诱捕、追踪、分析,其中一个很重要的技术指标是对工业协议、工业控制系统及设备实现高交互的模拟,利用本未知协议识别技术,可以通过对工业控制协议的深度学习,然后再通过人工智能算法对蜜罐外部请求给出合适的应答,实现工业控制协议、工业控制系统和设备的高交互模拟。
当用于工业控制网络画像时,通过人工智能算法,可根据协议解析结果、 IP地址、端口、发出的报文特征、数据量大小、数据流向等特征进行统计分析,寻找规律,自动生成工业控制网络拓扑图,对网络中的资产进行分类,识别出各网络节点的角色,如工程师站IP、端口范围统计,寻找规律、识别出上位机、控制器、数据服务器、通信站等角色。
从上面所述可以看出,本说明书一个或多个实施例提供的一种工业控制协议解析方法、装置、电子设备和存储介质基于决策树模型、实时工业控制系统和云端知识库技术能够代替人工对未知工业控制协议进行自动解析,极大地提高了工业控制协议的解析效率,可广泛用于工业控制网络的各个环节。
可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030 和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM (Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器 1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入 /输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种工业控制协议解析方法,其特征在于,包括:
接收未知工业控制协议数据;
通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果;
其中,所述工业控制协议解析模型是通过利用多种已知工业控制协议数据建立并训练决策树模型而得到的。
2.根据权利要求1所述的方法,其特征在于,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
将所述解析结果发送到云端服务器以存入公共知识库。
4.根据权利要求1或2所述的方法,其特征在于,
所述决策树模型的根节点对应工业控制协议数据有效荷载部分;
所述根节点的子节点包括报文头子节点、数据单元子节点和报文尾子节点;
所述报文头子节点的叶节点包括固定开始叶节点、功能码叶节点、寄存器地址叶节点和长度叶节点;
所述数据单元子节点的叶节点包括多个值域数据类型叶节点;
所述报文尾子节点的叶节点包括校验字节叶节点和固定结尾叶节点。
5.根据权利要求4所述的方法,其特征在于,所述多种已知工业控制协议数据包括下列中至少一种工业控制协议的数据:
IEC101国际标准安全类标准协议、IEC104国际标准安全类标准协议、Modbus通讯协议、ProfibusDP现场总线通讯协议、Profinet通讯协议、S7以太网协议、DLT645通信协议和IEC61850国际标准安全类标准协议。
6.一种工业控制协议解析装置,其特征在于,包括:
数据接收模块,被配置为,接收未知工业控制协议数据;
协议解析模块,被配置为,通过工业控制协议解析模型,从所述未知工业控制协议数据中识别出报文头、数据单元、报文尾,并结合所述报文头从所述数据单元中解析出每个值域的数据类型及工业控制系统中与该值域对应的标签变量,以得到对所述未知工业控制协议数据的解析结果。
7.根据权利要求6所述的一种工业控制协议解析装置,其特征在于,结合所述报文头从所述数据单元中解析出所述数据类型及所述标签变量包括:
结合所述报文头以及所述工业控制系统的实时数据库,从所述数据单元中解析出所述数据类型及所述标签变量。
8.根据权利要求6所述的一种工业控制协议解析装置,其特征在于,将所述解析结果发送到云端服务器以存入公共知识库。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算程序时实现根据权利要求1至5中任意一项所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令在被计算机执行时,使所述计算机实现根据权利要求1至5中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011457879.4A CN112671726A (zh) | 2020-12-10 | 2020-12-10 | 工业控制协议解析方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011457879.4A CN112671726A (zh) | 2020-12-10 | 2020-12-10 | 工业控制协议解析方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112671726A true CN112671726A (zh) | 2021-04-16 |
Family
ID=75404197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011457879.4A Pending CN112671726A (zh) | 2020-12-10 | 2020-12-10 | 工业控制协议解析方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112671726A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114006957A (zh) * | 2021-11-01 | 2022-02-01 | 国网电子商务有限公司 | 一种能源工业云网智能接入数据通用协议解析方法及系统 |
CN114448685A (zh) * | 2022-01-13 | 2022-05-06 | 绿盟科技集团股份有限公司 | 一种生成网络协议报文防护策略的方法及装置 |
CN114500688A (zh) * | 2022-01-28 | 2022-05-13 | 厦门科灿信息技术有限公司 | 设备协议识别的方法、装置、终端及存储介质 |
CN115314572A (zh) * | 2022-06-24 | 2022-11-08 | 国网信息通信产业集团有限公司 | 一种针对电力通信协议的协议转换方法、系统及设备 |
CN115333872A (zh) * | 2022-10-17 | 2022-11-11 | 北京六方云信息技术有限公司 | 安全网关解析功能验证方法、装置、终端设备及存储介质 |
CN115499521A (zh) * | 2022-11-03 | 2022-12-20 | 吉林省建研科技有限责任公司 | 面向底层设备的多通道多接口协议数字化采集控制系统 |
CN115514712A (zh) * | 2021-06-22 | 2022-12-23 | 中移物联网有限公司 | 一种数据处理方法、装置、终端和网络侧设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737410A (zh) * | 2018-05-14 | 2018-11-02 | 辽宁大学 | 一种基于特征关联的有限知工业通信协议异常行为检测方法 |
CN109547409A (zh) * | 2018-10-19 | 2019-03-29 | 中国电力科学研究院有限公司 | 一种用于对工业网络传输协议进行解析的方法及系统 |
CN109861988A (zh) * | 2019-01-07 | 2019-06-07 | 浙江大学 | 一种基于集成学习的工业控制系统入侵检测方法 |
US20200082231A1 (en) * | 2018-09-11 | 2020-03-12 | International Business Machines Corporation | Automatic protocol discovery using text analytics |
KR102139140B1 (ko) * | 2020-04-27 | 2020-07-30 | (주) 앤앤에스피 | 비공개 ics 프로토콜에 대한 태그 데이터의 프로파일링 시스템 |
CN111970230A (zh) * | 2020-06-24 | 2020-11-20 | 格创东智(深圳)科技有限公司 | 基于云端识别的工业现场协议自动解析的方法及系统 |
-
2020
- 2020-12-10 CN CN202011457879.4A patent/CN112671726A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737410A (zh) * | 2018-05-14 | 2018-11-02 | 辽宁大学 | 一种基于特征关联的有限知工业通信协议异常行为检测方法 |
US20200082231A1 (en) * | 2018-09-11 | 2020-03-12 | International Business Machines Corporation | Automatic protocol discovery using text analytics |
CN109547409A (zh) * | 2018-10-19 | 2019-03-29 | 中国电力科学研究院有限公司 | 一种用于对工业网络传输协议进行解析的方法及系统 |
CN109861988A (zh) * | 2019-01-07 | 2019-06-07 | 浙江大学 | 一种基于集成学习的工业控制系统入侵检测方法 |
KR102139140B1 (ko) * | 2020-04-27 | 2020-07-30 | (주) 앤앤에스피 | 비공개 ics 프로토콜에 대한 태그 데이터의 프로파일링 시스템 |
CN111970230A (zh) * | 2020-06-24 | 2020-11-20 | 格创东智(深圳)科技有限公司 | 基于云端识别的工业现场协议自动解析的方法及系统 |
Non-Patent Citations (1)
Title |
---|
阮伟等: "工业控制系统私有协议深度解析方法", 《电子技术与软件工程》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514712A (zh) * | 2021-06-22 | 2022-12-23 | 中移物联网有限公司 | 一种数据处理方法、装置、终端和网络侧设备 |
CN115514712B (zh) * | 2021-06-22 | 2023-09-05 | 中移物联网有限公司 | 一种数据处理方法、装置、终端和网络侧设备 |
CN114006957A (zh) * | 2021-11-01 | 2022-02-01 | 国网电子商务有限公司 | 一种能源工业云网智能接入数据通用协议解析方法及系统 |
CN114448685A (zh) * | 2022-01-13 | 2022-05-06 | 绿盟科技集团股份有限公司 | 一种生成网络协议报文防护策略的方法及装置 |
CN114448685B (zh) * | 2022-01-13 | 2023-11-03 | 绿盟科技集团股份有限公司 | 一种生成网络协议报文防护策略的方法及装置 |
CN114500688A (zh) * | 2022-01-28 | 2022-05-13 | 厦门科灿信息技术有限公司 | 设备协议识别的方法、装置、终端及存储介质 |
CN114500688B (zh) * | 2022-01-28 | 2023-12-05 | 厦门科灿信息技术有限公司 | 设备协议识别的方法、装置、终端及存储介质 |
CN115314572A (zh) * | 2022-06-24 | 2022-11-08 | 国网信息通信产业集团有限公司 | 一种针对电力通信协议的协议转换方法、系统及设备 |
CN115314572B (zh) * | 2022-06-24 | 2024-01-16 | 国网信息通信产业集团有限公司 | 一种针对电力通信协议的协议转换方法、系统及设备 |
CN115333872A (zh) * | 2022-10-17 | 2022-11-11 | 北京六方云信息技术有限公司 | 安全网关解析功能验证方法、装置、终端设备及存储介质 |
CN115499521A (zh) * | 2022-11-03 | 2022-12-20 | 吉林省建研科技有限责任公司 | 面向底层设备的多通道多接口协议数字化采集控制系统 |
CN115499521B (zh) * | 2022-11-03 | 2023-02-17 | 吉林省建研科技有限责任公司 | 面向底层设备的多通道多接口协议数字化采集控制系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112671726A (zh) | 工业控制协议解析方法、装置、电子设备和存储介质 | |
CN111428462A (zh) | 通讯协议模板构建的方法及终端设备 | |
CN107957940B (zh) | 一种测试日志处理方法、系统及终端 | |
JP7237457B2 (ja) | コンピューティング装置 | |
CN111144470A (zh) | 一种基于深度自编码器的未知网络流量识别方法及系统 | |
CN109800258A (zh) | 数据文件部署方法、装置、计算机设备及存储介质 | |
CN106295346B (zh) | 一种应用漏洞检测方法、装置及计算设备 | |
Igor et al. | Application of neural networks in computer security | |
CN110704714A (zh) | pcap文件的快速数据索引方法及装置 | |
CN112565229A (zh) | 隐蔽通道检测方法及装置 | |
US9807204B2 (en) | Optimized message processing | |
CN110769002A (zh) | 基于LabVIEW的报文解析方法、系统、电子设备和介质 | |
CN112417515A (zh) | 组态软件协议处理方法及系统 | |
US20180150371A1 (en) | Methods, systems, and computer readable media for token based message capture | |
CN110554877A (zh) | 一种json数据解析方法、装置、设备及储存介质 | |
CN112363939A (zh) | 快速生成模糊测试网络协议模板的方法及系统、设备 | |
CN114268451B (zh) | 电力监控网络安全缓冲区构建方法、装置、设备和介质 | |
US9577669B2 (en) | Methods, systems, and computer readable media for optimized message decoding | |
CN114390118B (zh) | 一种工控资产识别方法、装置、电子设备及存储介质 | |
CN116069324A (zh) | 一种基于Vue的动态表单构建方法及装置 | |
CN114900835A (zh) | 恶意流量智能检测方法、装置及存储介质 | |
CN109992293B (zh) | Android系统组件版本信息的组装方法及装置 | |
US10191826B2 (en) | Methods, systems, and computer readable media for providing an anticipated data integrity check | |
Wang et al. | Deep CNN-RNN with Self-Attention Model for Electric IoT Traffic Classification | |
CN113641520B (zh) | 数据处理方法、系统、设备以及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210416 |
|
RJ01 | Rejection of invention patent application after publication |