CN117240760B - 一种工业物联网协议字段智能检测方法及系统 - Google Patents
一种工业物联网协议字段智能检测方法及系统 Download PDFInfo
- Publication number
- CN117240760B CN117240760B CN202311498304.0A CN202311498304A CN117240760B CN 117240760 B CN117240760 B CN 117240760B CN 202311498304 A CN202311498304 A CN 202311498304A CN 117240760 B CN117240760 B CN 117240760B
- Authority
- CN
- China
- Prior art keywords
- protocol
- message
- unknown
- similarity
- representative
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 56
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 238000006243 chemical reaction Methods 0.000 claims abstract description 6
- 238000000034 method Methods 0.000 claims description 49
- 238000013528 artificial neural network Methods 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 17
- 230000015654 memory Effects 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000007787 long-term memory Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 5
- 230000000717 retained effect Effects 0.000 claims description 5
- 238000002372 labelling Methods 0.000 claims description 4
- 230000007704 transition Effects 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 2
- 238000013459 approach Methods 0.000 claims 1
- 238000004458 analytical method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005065 mining Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000010420 art technique Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 208000008918 voyeurism Diseases 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000002864 sequence alignment Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Communication Control (AREA)
Abstract
本发明提供了一种工业物联网协议字段智能检测方法,包括:通过数字转换和裁剪对未知协议报文进行预处理;对经预处理的未知协议报文与已知协议报文进行高相似度识别,获得具有高度相似依赖关系的字段检测模型;基于识别成功的高相似度已知协议报文数据,检测未知协议中的字段。本发明还提出了工业物联网未知协议的智能字段检测系统。本发明能够充分挖掘协议字段数据之间的双向长短距离依赖关系,提升了对未知协议中字段位置、边界和语义的检测准确率和效率。
Description
技术领域
本发明属于工业物联网技术领域,尤其涉及一种工业物联网协议字段智能检测方法及系统。
背景技术
在工业物联网中,为了实现多样的生产功能,用户需要引入不同的边端异构设备,并基于已知的规范知识进行协议配置,将它们接入网络。然而,大部分工业物联网协议都缺乏开放的规范文档,这严重限制了工业物联网的联通性。
因此,获取未知协议的规范知识是实现工业物联网异构边端设备通信的必要需求。协议逆向解析技术被提出来解决这个问题,它旨在基于收集到的协议报文逆向推断未知协议规范,其基础任务是检测出协议报文中各字段的位置、边界和语义。
一些现有技术专注于检测取值变化较小的关键字段的位置。例如,序列比对技术被用于比对多条报文,并识别各条报文的公共子序列作为关键字段。一些关键词挖掘算法被引入来提取报文中频繁出现的关键字段。然而,这些方法无法定位出相邻的非关键字段之间的边界,且无法推断字段的语义。
还有一些现有技术应用多种算法来提取字段数据特征,并通过分析它们在报文中相邻位置的变化来定位字段位置和边界。然而,一个字段包含多个数据,上述方法忽视了报文中长距离数据之间的联系,导致边界提取结果与真实的协议规范存在偏差,且它们同样无法检测出字段的语义。
挖掘数据的长短距离依赖关系对协议字段检测有着重要意义,成为一个亟待解决的挑战。
深度学习技术中的双向长短期记忆神经网络和条件随机场模型被广泛用于建模序列数据,并从中挖掘数据的双向长短距离依赖关系,具有良好的可扩展性。此外,大部分未知协议由已知协议扩展而来,对此可以利用该模型从已知协议的报文数据中捕获和学习字段数据的依赖关系,并将其应用于未知协议中的字段检测。
基于以上背景,本发明提出一种工业物联网协议字段智能检测方法及系统,为协议逆向解析提供更高效可靠的基础。
发明内容
本发明以工业物联网未知协议为对象,提出一种工业物联网协议字段智能检测方法及系统,重点关注字段检测的准确率和效率。
本发明提出了一种工业物联网协议字段智能检测方法,所述方法包括,
步骤1,通过数字转换和裁剪对未知协议报文进行预处理;
步骤2,通过特征提取、代表性消息抽取和相似度计算,对经预处理的未知协议报文与已知协议报文进行高相似度识别,获得具有高度相似依赖关系的字段检测模型;
步骤3,基于识别成功的高相似度已知协议报文数据,检测未知协议中的字段;其中,
在离线阶段,对已知协议,基于双向长短期记忆神经网络和条件随机场模型,提取高度抽象的实体特征并构建智能检测模型库;
在在线阶段,对于未知协议,从智能检测模型库中抽取其高相似度已知协议相应的字段检测模型,并使用该字段检测模型检测未知协议代表性消息中的字段作为最终结果。
进一步地,在步骤1中,
对于未知协议报文数据,以半字节为单位,将二进制数字转换为对应的十六进制字符。
进一步地,
对于未知协议中的TCP或UDP协议,裁剪掉协议数据包中的以太网头部、IP头部和TCP/UDP头部;
对于非TCP/UDP协议,裁剪掉以太网目的地址和源地址。
进一步地,步骤2中,
基于未知协议文本负载,将协议消息视为消息文档,引入N-gram和TF-IDF算法来提取协议特征并得到其特征矩阵。
进一步地,
假设一个单词的出现仅与其前n-1个单词有关,使用变长N-gram算法对协议消息进行划分,并将由划分产生的协议单词构成的集合视为协议消息语料库,如式(1)、(2)所示:
(1),
(2),
其中表示单词/>可能出现的概率,/>表示/>这个gram在协议消息语料库中出现的次数。
进一步地,
使用TF-IDF算法对使用变长N-gram算法产生的每个单词,分别计算其在协议消息中出现的词频TF、逆文档频率IDF和二者的加权,如式(3)、(4)、(5)所示:
(3),
(4),
(5),
其中,表示单词/>在消息/>中出现的次数,/>表示消息/>中段的总数,/>为协议消息语料库中消息的总数,/>表示包含/>的消息数。
进一步地,步骤2中,
对于未知协议和某类已知协议,从对应的协议消息语料库中随机选取一条消息作为其初始的代表性消息,对于未知协议和该类已知协议的每一条消息,基于变长N-gram和TF-IDF算法生成其特征矩阵,然后计算每条消息的特征矩阵和初始代表性消息的特征矩阵之间的余弦相似度,如式(6)所示:
(6),
其中和/>表示两个消息,/>是/>的特征矩阵,/>是/>的特征矩阵。
进一步地,
计算某协议中所有消息的余弦相似度的均值,并选择余弦相似度与所述均值差值最小的消息作为新的代表性消息;
通过重复迭代上述过程,代表性消息不断更新直至不变。
进一步地,步骤2中,
基于收集到的已知协议消息构建一个已知协议库,如式(7)所示:
(7),
其中表示每个已知协议类,/>表示/>库中的协议数量。
进一步地,
已知协议库中的已知协议消息根据其所属类别分别存储;
新加入的已知协议消息经过代表性信息抽取和分类后不断增量更新已知协议库。
进一步地,
对于每一类已知协议,使用代表性消息抽取方法从它的消息集合中抽取出其代表性消息/>,并以此维护一个相应的已知协议代表性消息库/>,如式(8)所示:
(8)。
进一步地,
对于待识别的未知协议,同样抽取其代表性消息/>,然后分别计算/>和每个/>之间的特征余弦相似度,如式(9)所示:
(9)
通过式(10)、(11)可以得到已知协议和未知协议中最高的相似度值及其对应的已知协议类/>:
(10),
(11),
若大于设置的相似度阈值,则认为未知协议的高相似度已知协议类/>被成功识别,否则不存在可依赖的已知协议。
进一步地,步骤3中,
采用基于字符的BIOES标注方案,对协议消息的字段数据中的每个字符分配一个命名实体标签。
进一步地,步骤3中,
基于长短期记忆神经网络构建字段智能检测模型,其中将窥视孔连接加入长短期记忆神经网络单元:
(12),
(13),
(14),
(15),
(16),
(17),
其中表示/>函数,/>代表权重矩阵,/>代表待检测字段,/>代表偏差,/>代表隐藏向量;
式(12)中遗忘门决定应丢弃或保留哪些信息;
式(13)中输入门用于更新细胞状态;
式(14)中将前一层隐藏状态的信息和当前输入的信息传递到函数中去,创造一个新的侯选状态/>;
式(15)中,将前一层的细胞状态与遗忘门向量逐点相乘,如果它们的乘积接近0,意味着在新的细胞状态中,这些信息是需要丢弃掉;然后再将该乘积与输入门的输出值逐点相加,将神经网络发现的新信息更新到细胞状态中去,得到更新后的细胞状态;
式(16)、(17)中输出门用来确定下一个隐藏状态的值。
进一步地,
函数如式(18)所示:
(18),
函数如式(19)所示:
(19),
对于输入句子,其预测标签/>输出分数/>计算如式(20)所示:
(20),
其中是标签之间的转移概率矩阵,/>是双向长短期记忆神经网络网络层的输出矩阵,/>是一个句子中第/>个字符预测为/>标签的得分。
进一步地,在步骤3中,
在线阶段,选择未知协议的代表性消息作为字段智能检测模型的输入,检测完成后得到未知协议中的字段位置、边界和对应的语义。
本发明还提出了一种工业物联网协议字段智能检测系统,通过工业物联网传感节点和设备感知收集数据,经由网络节点将数据上传至网关,服务器从网关中收集未知协议报文并存储至数据库,使用个人电脑远程控制服务器实施前述的检测方法。
本发明提出的工业物联网未知协议的智能字段检测方法及系统,能够充分挖掘协议字段数据之间的双向长短距离依赖关系,提升了对未知协议中字段位置、边界和语义的检测准确率和效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明的一种工业物联网协议字段智能检测方法的整体流程图;
图2示出了本发明中的协议报文预处理流程示意图;
图3示出了本发明中的代表性消息抽取的总体流程图;
图4示出了本发明中的字段智能检测模型架构示意图;
图5示出了本发明的工业物联网协议字段智能检测系统的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种工业物联网协议字段智能检测方法,整体流程如图1所示,包括协议报文预处理、高相似度协议识别、字段命名实体识别三个步骤。详细说明如下:
步骤1,未知协议报文预处理。
工控协议报文数据以二进制格式存在,增加了逆向分析的复杂性,需要进一步简化。此外,大多数工控协议在在TCP/UDP传输层的基础上增加了自定义应用层,对此可以基于先验知识直接解析已知的协议层。因此,有必要对未知协议报文进行数据格式转换,并剪裁掉已知协议层的头部数据。
如图2所示,预处理由数据转换和数据裁剪两部分组成:
(1)数据转换
工控协议报文由二进制数据构成,为了简化数据表示,对于每个报文以半字节为单位,将二进制数字转换为对应的十六进制字符,这可以极大降低报文数据长度和复杂度。
(2)数据裁剪
大多数工控协议以以太网通用协议为基础,如在TCP或UDP传输层基础上增加自定义应用层。通用协议网络层模型是公开已知的,可以直接依据先验知识进行解析。此外冗余的网络层结构会对未知协议逆向解析产生噪音数据。因此对于工控协议中的TCP或UDP协议,利用以太网头部Type值(IPv4:0x0800、IPv6:0x86DD)、IP头部Protocol值(TCP:0x06、UDP:0x11)等先验知识,裁剪掉协议数据包中的以太网头部、IP头部和TCP/UDP头部。对于非TCP/UDP协议,裁剪掉以太网目的地址和源地址。裁剪后保留的报文数据将被视为用于后续分析的协议消息。
步骤2,高相似度协议识别。
为了获得具有高度相似依赖关系的字段数据,需要寻找未知协议的高相似度已知协议。相似协议在字段位置和语义上具有很高的一致性,因此可以通过比较协议报文之间的相似度来实现协议识别。它主要包括特征提取、代表性消息抽取和相似度计算三个步骤。
(1)特征提取
为了获取协议消息的有效信息,减少无效负载的干扰,提取协议特征是进行协议代表性消息抽取和消息相似度计算的先验步骤,是高相似度协议识别的重要一环。
由于未知协议的行为捕获困难,端口动态可变等因素,本发明并未选择其作为协议特征,而是基于协议文本负载,借鉴自然语言处理的思想将协议消息视为消息文档,引入N-gram和TF-IDF算法来提取协议特征并得到其特征矩阵,它们被证明适用于工控协议。
协议消息是一系列字段的组合,每个字段由单个或相邻的多个数据构成,可以被视作消息文档中的“单词”。本发明使用N-gram算法对协议消息进行划分并产生词袋模型,它以马尔科夫假设为基础,认为一个单词的出现仅与其前n-1个单词有关,如式(1)、(2)所示:
(1)
(2)
其中表示单词/>可能出现的概率,/>表示/>这个gram在消息语料库中出现的次数。N-gram以大小为n的滑动窗口对协议消息文本进行切分得到单词,然后统计每个单词在消息中的出现频率,并按照设定好的阈值进行过滤,形成关键单词列表,即协议消息的特征空间。由于工控协议中的字段长度是多样的,固定长度的N-gram可能会导致错误的消息划分。因此,采用变长N-gram模型对协议消息进行划分并生成词袋模型,工控协议字段长度一般为半字节到两个字节不等,因此选择对应的1-gram到4-gram作为候选单词。
TF-IDF对协议消息中每个单词的重要性进行统计加权并评估,如果特定单词在一条协议消息中出现的频率越高,而在其他消息中很少出现,则该词具备高效的类别区分能力,是一个有效特征。对于使用变长N-gram算法产生的每个单词,分别计算其在消息中出现的词频(Term Frequency,TF)、逆文档频率(Inverse Document Frequency,IDF)和二者的加权,如式(3)、(4)、(5)所示:
(3)
(4)
(5)
其中,表示单词/>在消息/>中出现的次数,/>表示消息/>中段的总数,/>为语料库中消息的总数,/>表示包含/>的消息数。
(2)代表性消息抽取
未知协议和已知协议消息数量繁多,逐一进行相似度比较需要耗费大量的计算时间和内存。为了简化相似度计算流程,本发明提出一种工控协议代表性消息抽取方法,对于未知协议和每类已知协议,该方法分别从各自的消息集合中抽取出与所有其他消息相似度最高的代表性消息,以供协议之间进行相似度对比计算。
对于某类已知协议和未知协议,首先随机选取一条消息作为其初始的代表性消息。然后对于该类协议的每一条消息,基于变长N-gram和TF-IDF算法生成其特征矩阵。接着计算每条消息特征矩阵和初始代表性消息特征矩阵之间的余弦相似度,如式(6)所示:
(6)
其中和/>表示两个消息,/>和/>是它们的特征矩阵。
接着计算所有消息的余弦相似度的均值,并选择余弦相似度与所述均值差值最小的消息作为新的代表性消息。
通过重复迭代上述过程,代表性消息不断更新直至不变,此时的代表性消息即为最终结果。代表性消息抽取的总体流程如图3所示。
(3)相似度计算
本发明基于收集到的协议消息构建一个已知协议库,如式(7)所示:
(7)
其中表示每个已知协议类,如Modbus/TCP、Powerlink、S7Comm等,/>表示/>库中的协议数量。
库中的协议消息根据其所属类别分别存储,新加入的协议消息经过自动化识别技术分类后不断增量更新协议库。对于每一类已知协议/>,使用代表性消息抽取方法从它的消息集合中抽取出其代表性消息/>,并以此维护一个相应的已知协议代表性消息库/>,如式(8)所示,该/>库同样随着新协议报文的加入而不断更新。
(8)
对于待识别的未知协议,同样抽取其代表性消息/>,然后分别计算/>和每个/>之间的特征余弦相似度,如式(9)所示:
(9)
通过式(10)、(11)可以得到它们中最高的相似度值及其对应的已知协议类。
(10)
(11)
若大于设置的相似度阈值,则认为未知协议的高相似度已知协议类/>被成功识别,否则不存在可依赖的已知协议。通过经验设置阈值为0.95。
步骤3,字段命名实体识别。
当高相似度已知协议识别成功时,可以基于其报文数据检测未知协议中的字段。这是一个从协议报文序列中识别出属于预定义字段实体的过程,是一项典型的命名实体识别任务。该任务包括离线和在线两个阶段。在离线阶段构建并维护字段智能检测模型库。双向长短期记忆神经网络和条件随机场模型具有强大的自主学习数据长距离依赖关系的能力,因此被用于提取高度抽象的实体特征并构建智能检测模型。对于每一类已知协议,本发明构建其相关的字段智能检测模型,并将训练好的模型加入到字段智能检测模型库中。在在线阶段,对于未知协议,从模型库中抽取其高相似度已知协议相应的字段检测模型,并使用该模型检测未知协议代表性消息中的字段作为最终结果。接下来将详细介绍字段智能检测的子任务。
(1)数据标记
协议消息是由字段数据构成的字符序列,每个字段由单个字符或多个字符组成,对字段中的每个字符分配一个命名实体标签是必要的。因此,为了在不降低性能的前提下简化字段识别任务,并考虑更多关于协议字段的信息,本发明采用基于字符的BIOES(Begin,Inside,Outside,End,Single)标注方案。例如,将事务标识符字段的起始数据字符标记为B-TID,将内部字符标记为I-TID,将结束字符标记为E-TID,将协议标识符字段的起始数据字符标记为B-PID,将内部字符标记为I-PID,将结束字符标记为E-PID,将非协议标识符字符标记为Outside。如果一个字段只包含一个字符,则将其标记为Single。
(2)字段智能检测模型构建
长短期记忆神经网络可以有效地学习序列数据的长短距离依赖关系,本发明基于其构建字段智能检测模型。窥视孔连接可以增强网络区分输入序列中细微特征的能力,本发明将其加入长短期记忆神经网络单元:
(12)
(13)
(14)
(15)
(16)
(17)
其中表示/>函数,/>代表权重矩阵,/>代表待检测字段,/>代表偏差,/>代表隐藏向量。
式(12)中遗忘门决定应丢弃或保留哪些信息。
前一层细胞状态信息、前一层隐藏状态信息和当前输入的信息同时传递到函数中去。/>函数如式(18)所示,它的输出值介于0和1之间,越接近0意味着越应该丢弃,越接近1意味着越应该保留。
(18)
式(13)中输入门用于更新细胞状态。首先将前一层细胞状态信息、前一层隐藏状态信息和当前输入的信息传递到/>函数中去。将值调整到0~1之间来决定要更新哪些信息。0表示不重要,1表示重要。
式(14)中将前一层隐藏状态的信息和当前输入的信息传递到函数中去,创造一个新的侯选细胞状态/>,/>函数如式(19)所示。最后将/>的输出值与/>的输出值相乘,/>的输出值将决定/>的输出值中哪些信息是重要且需要保留下来的。
(19)
式(15)中,将前一层的细胞状态与遗忘门向量逐点相乘,如果它们的乘积接近0,意味着在新的细胞状态中,这些信息是需要丢弃掉的;然后再将该乘积与输入门的输出值逐点相加,将神经网络发现的新信息更新到细胞状态中去。至此,就得到了更新后的细胞状态。
式(16)、(17)中输出门用来确定下一个隐藏状态的值,隐藏状态包含了先前输入的信息。首先,将新的细胞状态信息、前一层隐藏状态信息和当前输入的信息传递到函数中,然后将新得到的细胞状态传递给/>函数。最后将/>的输出与/>的输出相乘,以确定隐藏状态应携带的信息。再将隐藏状态作为当前细胞的输出,把新的细胞状态和新的隐藏状态传递到下一个时间步长中去。
单向长短期记忆神经网络只能获取上文信息而忽略下文的依赖关系,双向长短期记忆神经网络可以弥补这一不足。前向长短期记忆神经网络计算给定消息在每个字符处序列的左侧上下文的表示。同样,从序列末尾开始的右侧上下文也将提供有效信息。反向长短期记忆神经网络可以通过逆向读取相同的消息数据来获取右侧的上下文信息。双向长短期记忆神经网络由前向长短期记忆神经网络和后向长短期记忆神经网络组成,能够捕获协议消息数据中的双向依赖关系。
上下文隐藏向量可以直接作为特征使用,为每个输出/>做出独立的标记决策。然而在字段命名实体识别中,输出标签之间有很强的依赖性。因此,本发明使用条件随机场模型来联合建模整个句子的输出。对于输入句子/>,它的预测标签输出分数/>计算如式(20)所示。其中/>是标签之间的转移概率矩阵,/>是双向长短期记忆神经网络网络层的输出矩阵,/>是一个句子中第/>个字符预测为/>标签的得分。
(20)
字段智能检测模型架构如图4所示。
(3)在线字段检测
本发明的字段智能检测模型以协议消息序列作为输入,并将协议消息中的字符向量化,经过双向长短期神经网络层和条件随机场层提取双向上下文的依赖关系并进行字段预测。
未知协议消息众多。
在离线训练阶段,使用反向传播技术训练模型,在每个训练周期上调整参数直到训练结束。
在线阶段,选择未知协议的代表性消息作为字段智能检测模型的输入,检测完成后得到未知协议中的字段位置、边界和对应的语义。
实施例
本发明将工业物联网协议字段智能检测方法部署到系统中。如图5所示,通过工业物联网传感节点和设备感知并收集数据,经由网络节点将数据上传至网关,服务器从网关中收集工控协议报文并存储至数据库,使用个人电脑远程控制服务器实施字段智能检测方法。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种工业物联网协议字段智能检测方法,其特征在于,所述方法包括,
步骤1,通过数字转换和裁剪对未知协议报文进行预处理;
步骤2,通过特征提取、代表性消息抽取和相似度计算,对经预处理的未知协议报文与已知协议报文进行高相似度识别,获得具有高度相似依赖关系的字段检测模型;
步骤3,基于识别成功的高相似度已知协议报文数据,检测未知协议中的字段;其中,
在离线阶段,对已知协议,基于双向长短期记忆神经网络和条件随机场模型,提取高度抽象的实体特征并构建智能检测模型库;
在在线阶段,对于未知协议,从智能检测模型库中抽取其高相似度已知协议相应的字段检测模型,并使用该字段检测模型检测未知协议代表性消息中的字段作为最终结果;
步骤1中,
对于未知协议报文数据,以半字节为单位,将二进制数字转换为对应的十六进制;
对于未知协议中的TCP或UDP协议,裁剪掉协议数据包中的以太网头部、IP头部和TCP/UDP头部;
对于非TCP/UDP协议,裁剪掉以太网目的地址和源地址;
步骤2中,
基于未知协议文本负载,将协议消息视为消息文档,引入N-gram和TF-IDF算法来提取协议特征并得到其特征矩阵;
假设一个单词的出现仅与其前n-1个单词有关,使用变长N-gram算法对协议消息进行划分,并将由划分产生的协议单词构成的集合视为协议消息语料库,如式(1)、(2)所示:
(1),
(2),
其中表示单词/>可能出现的概率,/>表示/>这个gram在协议消息语料库中出现的次数;
使用TF-IDF算法对使用变长N-gram算法产生的每个单词,分别计算其在协议消息中出现的词频TF、逆文档频率IDF和二者的加权,如式(3)、(4)、(5)所示:
(3),
(4),
(5),
其中,表示单词/>在消息/>中出现的次数,/>表示消息/>中段的总数,/>为协议消息语料库中消息的总数,/>表示包含/>的消息数;
步骤2中,
对于未知协议和某类已知协议,从对应的协议消息语料库中随机选取一条消息作为其初始的代表性消息,对于未知协议和该类已知协议的每一条消息,基于变长N-gram和TF-IDF算法生成其特征矩阵,然后计算每条消息的特征矩阵和初始代表性消息的特征矩阵之间的余弦相似度,如式(6)所示:
(6),
其中和/>表示两个消息,/>是/>的特征矩阵,/>是/>的特征矩阵;
计算某协议中所有消息的余弦相似度的均值,并选择余弦相似度与所述均值差值最小的消息作为新的代表性消息;
通过重复迭代上述计算余弦相似度及其均值并选择新的代表性信息的过程,代表性消息不断更新直至不变;
步骤2中,
基于收集到的已知协议消息构建一个已知协议库,如式(7)所示:
(7),
其中表示每个已知协议类,/>表示已知协议库/>中的协议数量;
已知协议库中的已知协议消息根据其所属类别分别存储;
新加入的已知协议消息经过代表性信息抽取和分类后不断增量更新已知协议库;
对于每一类已知协议,使用代表性消息抽取方法从它的消息集合中抽取出其代表性消息/>,并以此维护一个相应的已知协议代表性消息库/>,如式(8)所示:
(8);
对于待识别的未知协议,同样抽取其代表性消息/>,然后分别计算/>和每个/>之间的特征余弦相似度,如式(9)所示:
(9);
通过式(10)、(11)得到已知协议和未知协议中最高的相似度值及其对应的已知协议类/>:
(10),
(11),
若大于设置的相似度阈值,则认为未知协议的高相似度已知协议类/>被成功识别,否则不存在可依赖的已知协议。
2.根据权利要求1所述的方法,其特征在于,
步骤3中,
采用基于字符的BIOES标注方案,对协议消息的字段数据中的每个字符分配一个命名实体标签。
3.根据权利要求2所述的方法,其特征在于,
步骤3中,
基于长短期记忆神经网络构建字段智能检测模型,其中将窥视孔连接加入长短期记忆神经网络单元:
(12),
(13),
(14),
(15),
(16),
(17),
其中表示/>函数,/>代表权重矩阵,/>代表待检测字段,/>代表偏差,/>代表隐藏向量;
式(12)中遗忘门决定应丢弃或保留哪些信息;
式(13)中输入门用于更新细胞状态;
式(14)中将前一层隐藏状态的信息和当前输入的信息传递到函数中去,创造一个新的侯选状态/>;
式(15)中,将前一层的细胞状态与遗忘门向量逐点相乘,如果它们的乘积趋近于0,意味着在新的细胞状态中,这些信息是需要丢弃掉;然后再将该乘积与输入门的输出值逐点相加,将神经网络发现的新信息更新到细胞状态中去,得到更新后的细胞状态;
式(16)、(17)中输出门用来确定下一个隐藏状态的值。
4.根据权利要求3所述的方法,其特征在于,
函数如式(18)所示:
(18),
函数如式(19)所示:
(19),
对于输入句子,其预测标签/>输出分数/>计算如式(20)所示:
(20),
其中是标签之间的转移概率矩阵,/>是双向长短期记忆神经网络网络层的输出矩阵,/>是一个句子中第/>个字符预测为/>标签的得分。
5.根据权利要求4所述的方法,其特征在于,
步骤3中,
在线阶段,选择未知协议的代表性消息作为字段智能检测模型的输入,检测完成后得到未知协议中的字段位置、边界和对应的语义。
6.一种工业物联网协议字段智能检测系统,其特征在于,
通过工业物联网传感节点和设备感知收集数据,经由网络节点将数据上传至网关;
服务器从网关中收集未知协议报文并存储至数据库,使用个人电脑远程控制服务器实施权利要求1至5任一项所述的检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311498304.0A CN117240760B (zh) | 2023-11-13 | 2023-11-13 | 一种工业物联网协议字段智能检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311498304.0A CN117240760B (zh) | 2023-11-13 | 2023-11-13 | 一种工业物联网协议字段智能检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117240760A CN117240760A (zh) | 2023-12-15 |
CN117240760B true CN117240760B (zh) | 2024-01-16 |
Family
ID=89098607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311498304.0A Active CN117240760B (zh) | 2023-11-13 | 2023-11-13 | 一种工业物联网协议字段智能检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117240760B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310456A (zh) * | 2020-02-13 | 2020-06-19 | 支付宝(杭州)信息技术有限公司 | 一种实体名称匹配方法、装置及设备 |
CN114398887A (zh) * | 2021-12-28 | 2022-04-26 | 绿盟科技集团股份有限公司 | 一种文本分类方法、装置及电子设备 |
CN115373697A (zh) * | 2021-05-18 | 2022-11-22 | 广州三星通信技术研究有限公司 | 数据处理方法和数据处理装置 |
WO2023030513A1 (zh) * | 2021-09-05 | 2023-03-09 | 汉熵通信有限公司 | 物联网系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10819667B2 (en) * | 2018-03-09 | 2020-10-27 | Cisco Technology, Inc. | Identification and logging of conversations using machine learning |
US20230197105A1 (en) * | 2021-12-22 | 2023-06-22 | Jpmorgan Chase Bank, N.A. | System and method for real-time identification of dissatisfaction data |
-
2023
- 2023-11-13 CN CN202311498304.0A patent/CN117240760B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310456A (zh) * | 2020-02-13 | 2020-06-19 | 支付宝(杭州)信息技术有限公司 | 一种实体名称匹配方法、装置及设备 |
CN115373697A (zh) * | 2021-05-18 | 2022-11-22 | 广州三星通信技术研究有限公司 | 数据处理方法和数据处理装置 |
WO2022244997A1 (en) * | 2021-05-18 | 2022-11-24 | Samsung Electronics Co., Ltd. | Method and apparatus for processing data |
WO2023030513A1 (zh) * | 2021-09-05 | 2023-03-09 | 汉熵通信有限公司 | 物联网系统 |
CN114398887A (zh) * | 2021-12-28 | 2022-04-26 | 绿盟科技集团股份有限公司 | 一种文本分类方法、装置及电子设备 |
Non-Patent Citations (3)
Title |
---|
基于改进投票专家算法的专有协议模糊测试方法;刘津霖;付光远;李海龙;汪洪桥;;计算机工程与应用(第12期);全文 * |
基于机器学习的工业控制网络异常检测方法;邵俊杰;董伟;冯志;;信息技术与网络安全(第06期);全文 * |
基于逆向分析的工控协议模糊测试方法;王海翔;朱朝阳;应欢;缪思薇;;电力信息与通信技术(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117240760A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11218500B2 (en) | Methods and systems for automated parsing and identification of textual data | |
Karim et al. | Classification benchmarks for under-resourced bengali language based on multichannel convolutional-lstm network | |
CN109800437B (zh) | 一种基于特征融合的命名实体识别方法 | |
CN103646080A (zh) | 基于倒序索引的微博去重方法和系统 | |
CN111274804A (zh) | 基于命名实体识别的案件信息提取方法 | |
CN110502640A (zh) | 一种基于建构的概念词义发展脉络的提取方法 | |
CN114218389A (zh) | 一种基于图神经网络的化工制备领域长文本分类方法 | |
CN113806547B (zh) | 一种基于图模型的深度学习多标签文本分类方法 | |
US20170193098A1 (en) | System and method for topic modeling using unstructured manufacturing data | |
CN112182156B (zh) | 基于文本处理的方面级可解释深度网络评分预测推荐方法 | |
CN115334179B (zh) | 一种基于命名实体识别的未知协议逆向解析方法 | |
CN111309918A (zh) | 一种基于标签关联性的多标签文本分类方法 | |
Pan et al. | Semantic graph neural network: A conversion from spam email classification to graph classification | |
CN111368542A (zh) | 一种基于递归神经网络的文本语言关联抽取方法和系统 | |
CN113204975A (zh) | 一种基于远程监督的敏感文风识别方法 | |
CN115630164A (zh) | 基于正负向联合学习和原型表示的远程监督关系抽取方法 | |
CN116910013A (zh) | 基于语义流图挖掘的系统日志异常检测方法 | |
Wang et al. | Rethinking robust and accurate application protocol identification | |
KR102526935B1 (ko) | 네트워크 침입 탐지 시스템 및 네트워크 침입 탐지 방법 | |
CN113158659B (zh) | 一种基于司法文本的涉案财物计算方法 | |
Euna et al. | Content-based spam email detection using an n-gram machine learning approach | |
CN117240760B (zh) | 一种工业物联网协议字段智能检测方法及系统 | |
CN115186670B (zh) | 一种基于主动学习的领域命名实体识别方法及系统 | |
CN114153977A (zh) | 一种异常数据检测方法及系统 | |
CN114793170A (zh) | 基于开集识别dns隧道检测方法、系统、设备及终端 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |