掌桥专利:专业的专利平台
掌桥专利
首页

一种资产指纹识别方法、装置、设备和介质

文献发布时间:2023-06-19 19:27:02


一种资产指纹识别方法、装置、设备和介质

技术领域

本发明涉及资产指纹管理技术领域,尤其涉及一种资产指纹识别方法、装置、设备和介质。

背景技术

现有技术中的资产指纹只能实现对网络资产的局部覆盖,没有统一架构的资产指纹,并且由于没有统一架构的资产指纹识别方法,使得多团队独立、重复建设资产指纹,资源利用率和指纹输出效率均较低,有效指纹数量增长慢、总量少,指纹的误报问题缺乏有效管控机制等。

例如当前的资产指纹包括规则类资产指纹和模型类资产指纹,规则类资产指纹对应的规则包括指向单一标记的二分类规则、以及提取变量形式覆盖多个标记的多分类规则。现有的资产指纹的结构基本为:特定协议内容的匹配正则表达式和标记输出(NMAP)、match 3cx-tunnel m|^x04 xfbxffLAPK|p/3CX Tunnel Protocol/、etter、p0f。

资产指纹的结构为WWWW:MSS:TTL:WS:S:N:D:T:F:LEN:OS,分别为特点协议字段和标记时,对应该格式的资产指纹例如为:0000:05B4:80:WS:0:0:1:0:S:2C:Novell netware5.00。

因此即使现有技术中网络资产有统一架构的资产指纹,如何实现对统一架构的资产指纹的识别是亟待解决的技术问题。

发明内容

本发明提供了一种资产指纹识别方法、装置、设备和介质,用以解决现有技术中无法实现对统一架构的资产指纹的识别的问题。

本发明提供了一种资产指纹识别方法,所述方法包括:

接收待识别网络资产的资产指纹数据,获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;

解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的函数值;

根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取所述资产指纹数据中的每个资产标记的信息包括:

根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

进一步地,所述解析传输的数据包包括:

针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;

若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;

若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

进一步地,所述根据所述目标协议数据,及预设的确定函数,确定所述每个资产标记的函数值包括:

根据所述目标协议数据、以及预设的置信度确定函数,确定所述每个资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

进一步地,所述根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的置信度值包括:

基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;

根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

进一步地,所述将所述目标资产标记作为对所述资产指纹数据的目标识别结果包括:

基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,所述方法还包括:

根据所述每个二维表,在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则执行后续的根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

相应地,本发明提供了一种资产指纹识别装置,所述装置包括:

接收模块,用于接收待识别网络资产的资产指纹数据;

获取模块,用于获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的函数值;

识别模块,用于根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取模块,具体用于根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

进一步地,所述获取模块,具体用于针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

进一步地,所述获取模块,具体用于根据所述目标协议数据、以及预设的置信度确定函数,确定该资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

进一步地,所述获取模块,具体用于基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

进一步地,所述识别模块,具体用于基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述装置还包括:

查询模块,用于所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则触发所述获取模块执行根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

相应地,本发明提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器用于存储程序指令,所述处理器用于执行存储器中存储的计算机程序时实现上述资产指纹识别方法中任一所述方法的步骤。

相应地,本发明提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述资产指纹识别方法中任一所述方法的步骤。

本发明提供了一种资产指纹识别方法、装置、设备和介质,由于该方法接收待识别网络资产的资产指纹数据,获取所述资产指纹数据中每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的置信度值;根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果,由于资产指纹数据是统一架构的资产指纹,从而实现了对统一架构的资产指纹的识别。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种资产指纹识别方法的过程示意图;

图2为本发明实施例提供的一种资产指纹数据的数据架构示意图;

图3为本发明实施例提供的一种资产指纹识别方法的过程示意图;

图4为本发明实施例提供的一种资产指纹数据库的构建方法的示意图;

图5为本发明实施例提供的一种资产指纹知识引用的示意图;

图6为本发明实施例提供的一种资产指纹识别装置的结构示意图;

图7为本发明实施例提供的一种资产指纹识别装置的架构示意图;

图8为本发明实施例提供的一种电子设备结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

为了实现对统一架构的资产指纹的识别,本发明实施例提供了一种资产指纹识别方法、装置、设备和介质。

实施例1:

图1为本发明实施例提供的一种资产指纹识别方法的过程示意图,该过程包括以下步骤:

S101:接收待识别网络资产的资产指纹数据,获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合。

为了实现对统一架构的资产指纹的识别,本发明实施例提供的一种资产指纹识别方法应用于电子设备,其中该电子设备可以是主机、笔记本电脑、平板电脑、智能手机等智能终端设备,也可以是服务器,其中该服务器可以是本地服务器,也可以是云端服务器,本发明实施例对此不做限制。

该电子设备接收到待识别网络资产的资产指纹数据,其中待识别网络资产是指连接到互联网的网络设备、安全设备、中间件、服务器、个人计算机等设备的类型和版本、操作系统类型、IP地址、开放端口及端口服务等信息;资产指纹数据包括模型类的资产指纹数据和规则类的资产指纹数据。

其中,资产指纹数据中包含每个资产标记的信息,每个资产标记通过一个二维表表示,二维表的行对应处理函数,列对应网络协议范围,网络协议范围中包含每个网络协议字段。

根据获取到的待识别资产的资产指纹数据的每个资产标记、以及预先保存的资产指纹数据库,其中资产指纹数据库中包含有多个资产指纹数据的多个资产标记的网络协议字段集合,该电子设备在资产指纹数据库中查询出待识别资产的资产指纹数据,根据资产指纹数据库中与每个资产指纹数据对应报文的每个资产标记的网络协议字段集合,获取待识别资产的资产指纹数据对应保存的每个二维表对应的每个资产标记的网络协议字段集合。

其中资产标记的规范参考以下格式:1、点分格式,共N段;2、开始的通配使用,如:.x.x.x.x.x.x.::;3、多个连续通配使用,如x.::.x,::.x,x.::;4、中间单个通配使用空白,如x…::,:…x.::。

S102:解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的确定函数,确定所述每个资产标记的函数值。

为了获取每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,该电子设备获取传输的数据包并进行解析,根据解析结果得到每个网络协议字段的目标协议数据。

根据每个资产标记对应的每个网络协议字段的目标协议数据,该电子设备预先保存有确定函数,将每个资产标记的每个网络协议字段的目标协议数据输入到确定函数,确定输出的每个资产标记的函数值。

S103:根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

根据确定出每个资产标记的函数值,该电子设备确定出满足预设要求的目标资产标记,例如可以是确定出函数值最大的目标资产标记、可以是确定出函数值最小的目标资产标记、还可以是确定出函数值为中位数值的目标资产标记,并将目标资产标记确定为资产指纹数据的目标识别结果。

由于在本发明实施例中,该方法接收待识别网络资产的资产指纹数据,获取资产指纹数据中每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;解析传输的数据包,获取每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的确定函数,确定每个资产标记的函数值;根据所述每个资产标记的函数值,确定目标资产标记,将目标资产标记作为对所述资产指纹数据的目标识别结果,由于资产指纹数据是统一架构的资产指纹,从而实现了对统一架构的资产指纹的识别。

实施例2:

为了获取到每个资产标记的信息,在上述实施例的基础上,在本发明实施例中,所述获取所述资产指纹数据中的每个资产标记的信息包括:

根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

该电子设备在获取到资产指纹数据后,根据资产指纹数据中的每个二维表,获取到的每个二维表作为每个资产标记的信息;图2为本发明实施例提供的一种资产指纹数据的数据架构示意图,如图2所示,资产指纹数据的每个二维表二维表中是MN协议字段函数矩阵,MN协议字段函数矩阵中的M行对应M个处理函数,MN协议字段函数矩阵中的N列对应N个网络协议字段。

实施例3:

为了获取到每个资产标记对应的网络协议字段集合中每个网络协议字段的目标协议数据,在上述实施例的基础上,在本发明实施例中,所述解析传输的数据包包括:

针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;

若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;

若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

为了获取到每个资产标记对应的网络协议字段集合中每个网络协议字段的目标协议数据,该电子设备针对每个资产标记,预先保存有该资产标记的每个网络协议字段的数据获取方式,获取每个资产标记的每个网络协议字段对应的数据获取方式,其中数据获取方式包括被动采集和主动采集。

若网络协议字段对应的数据获取方式为被动采集,则该电子设备接收数据包,采用流量解码引擎对数据包进行被动流量解码,获取到网络协议字段的目标协议数据。

若网络协议字段对应的数据获取方式为主动采集,则该电子设备基于预先保存的构造引擎,主动构造请求报文并发送,接收对请求报文的应答报文并进行解码,获取到网络协议字段的目标协议数据。

网络协议是按照协议分类的消息处理状态机,协议字段集合

表1为本发明实施例提供的一种网络协议规范的表格,如表1所示:

表1

在表1中,协议名称为传输控制协议(Transmission Control Protocol,TCP)时,请求报文特征的报文类型为同步序列编号(Synchronize Sequence Numbers,SYN),字段名称为序列号(sequence),SEQ)、截取范围为[0,31],协议名称为TCP时,应答报文特征中的协议状态ID列表为0-0-1,报文类型为SYN和应答报文(Acknowledgement,ACK),字段名称为WIN和SIZE,截取范围为[0,16]。

实施例4:

为了确定出每个资产标记的函数值,在上述各实施例的基础上,在本发明实施例中,所述根据所述目标协议数据,及预设的确定函数,确定所述每个资产标记的函数值包括:

根据所述目标协议数据、以及预设的置信度确定函数,确定所述每个资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

为了确定出每个资产标记的函数值,该电子设备获取到每个资产标记的目标协议数据,将目标协议数据输入到置信度确定函数中,确定出置信度确定函数输出的每个资产标记的置信度值,将每个资产标记的置信度值确定为每个资产标记的函数值。

作为另一种可能的实施方式,该电子设备还可以是获取到每个资产标记的目标协议数据,将目标协议数据输入到相似度确定函数,确定出相似度确定函数输出的每个资产标记与预设资产标记的协议数据的相似度值,将每个资产标记的相似度值确定为每个资产标记的函数值。

实施例5:

为了确定每个资产标记的置信度值,在上述各实施例的基础上,在本发明实施例中,所述根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的置信度值包括:

基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;

根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

为了确定每个资产标记的置信度值,在本发明实施例中,该电子设备预先保存有运算函数,根据运算函数对该资产标记的每个网络协议字段的目标协议数据进行运算,得到该资产标记的每个网络协议字段的函数值。

具体的,该电子设备在预先保存的运算函数库中获取每个资产标记对应的运算函数列表,其中运算函数列表中保存有每个网络协议字段的目标运算函数,根据每个网络协议字段的目标运算函数对目标协议数据进行运算,得到每个资产标记的每个网络协议字段的函数值。

其中,运算函数库包括规则类的运算函数和模型类的运算函数,规则类的运算函数包括函数类型1、REGEXP正则表达式,regexp(str,modstr)、函数类型2、OFFSET字节偏移范围内容读取,offset(payload,s1,s2);模型类的运算函数包括函数类型1、OS.NB.Inst1,设备类型识别NB算法模型1,int NB1(Protolst[])、函数类型2、OS.RF.Inst1,设备类型识别RF模型1,int RF1(Protolst[])。

根据预先保存的索引函数库中待识别网络资产的每个资产标记对应的索引函数,确定每个资产标记对应的索引函数,将每个资产标记的每个网络协议字段的函数值输入到索引函数中,获取索引函数输出的置信度值,其中置信度值表示每个网络协议字段的每个函数值的目标期望值的置信水平。

其中,索引函数

实施例6:

为了确定资产指纹数据的目标识别结果,在上述各实施例的基础上,在本发明实施例中,所述将所述目标资产标记作为对所述资产指纹数据的目标识别结果包括:

基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

为了确定资产指纹数据的目标识别结果,在本发明实施例中,该电子设备还预先保存有资产标记规范库,基于资产标记规范库的范式化转换接口,该电子设备将目标资产标记进行范式化转换,得到标准资产标记,并将标准资产标记确定为资产指纹数据的目标识别结果。

具体的,该电子设备保存有待识别网络资产的每个资产标记的序号,根据目标资产标记的目标序号,该电子设备通过范式化转换接口在预先保存的资产标记规范库进行查询,确定目标序号对应的标准资产标记,并将标准资产标记确定为资产指纹数据的目标识别结果。

实施例7:

为了实现对资产指纹数据的识别,在上述各实施例的基础上,在本发明实施例中,所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,所述方法还包括:

在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则执行后续的根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

为了实现对资产指纹数据的识别,在本发明实施例中,该电子设备在预先保存的资产标记规范库中进行查询,确定每个资产标记是否均存在,若每个资产标记在资产标记规范库中均存在,则确定覆盖待识别网络资产,因此执行后续的根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若存在某个资产标记在资产标记规范库中不存在,则确定资产指纹数据无法识别因此不进行资产指纹识别。

实施例8:

下面通过一个具体的实施例对本发明的一种资产指纹识别方法进行说明,图3为本发明实施例提供的一种资产指纹识别方法的过程示意图,如图3所示,该电子设备的指纹识别引擎接收待识别网络资产的资产指纹数据,并基于模型插件在预先保存的资产标记规范库中查询每个资产标记,返回资产标记覆盖范围,指纹识别引擎根据资产标记覆盖范围判断是否覆盖每个资产标记,若否,则结束处理并输出识别范式化资产标记(N/A未识别)。

若全部覆盖则指纹识别引擎查询资产指纹数据库,获取每个资产标记对应的网络协议字段集合中的每个网络协议字段,并对每个网络协议字段,针对预先针对每个网络协议字段保存的数据获取方式,由流量解码引擎进行被动采集协议数据、或由报文构造引擎主动采集协议数据并发送给指纹识别引擎。

指纹识别引擎接收到每个网络协议字段的协议数据后进行存储,并查询运算函数库获取每个网络协议字段对应的运算函数,并引用每个网络协议字段运算函数,基于模型插件对每个网络协议字段的目标协议数据执行模型运算,得到每个网络协议字段的函数值。

指纹识别引擎查询索引函数库获取每个资产标记对应的索引函数,将每个资产标记的每个网络协议字段的函数值输入对应的索引函数,得到每个资产标记的置信度值,确定置信度值最大的目标资产标记并进行范式化转换,得到目标资产标记范式化转换后的标准资产标记。

图4为本发明实施例提供的一种资产指纹数据库的构建方法的示意图,如图4所示,电子设备获取到指纹提交方的设备输入的资产指纹数据,查询资产指纹数据中包含的每个二维表对应的每个资产标记,判断资产标记规范库中是否已经覆盖每个资产标记,若否,则在资产指纹数据库中增加未被覆盖的资产标记,并在增加资产标记后判断网络协议规范库中是否已经覆盖每个资产标记对应的网络协议字段集合中的每个网络协议字段若是,则直接判断网络协议规范库中是否已经覆盖每个资产标记对应的网络协议字段集合中的每个网络协议字段,若否,则在网络协议规范库中增加协议、消息或字段,并在增加后判断索引函数库中是否已经覆盖每个资产标记对应的索引函数,若是,则直接判断索引函数库中是否已经覆盖每个资产标记对应的索引函数,若否,则在索引函数库中增加运算函数和参数说明,并在增加后在资产指纹数据库中提交资产指纹的知识条目。若是,则直接在资产指纹数据库中提交资产指纹的知识条目,在资产指纹数据库中查询是否已经覆盖知识条目,若否,则按规范格式增加知识条目,并向指纹提交方的设备返回结束消息,若是,则直接向指纹提交方的设备返回结束消息。

图5为本发明实施例提供的一种资产指纹知识引用的示意图,如图5所示,该电子设备获取指纹使用方的设备输入的待查询的资产指纹数据,判断在资产指纹数据库是否覆盖待查询的资产指纹数据包含的每个二维表对应每个资产标记,若否,则进行资产指纹知识构建的步骤,若是,则将资产指纹知识导出。

实施例9:

对于模型类的资产指纹数据,进行资产指纹识别时的函数为:

对于规则类的资产指纹数据,进行资产指纹识别的函数为

实施例10:

图6为本发明实施例提供的一种资产指纹识别装置的结构示意图,如图6所示,该装置包括:

接收模块601,用于接收待识别网络资产的资产指纹数据;

获取模块602,用于获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的函数值;

识别模块603,用于根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取模块602,具体用于根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

进一步地,所述获取模块602,具体用于针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

进一步地,所述获取模块602,具体用于根据所述目标协议数据、以及预设的置信度确定函数,确定该资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

进一步地,所述获取模块602,具体用于基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

进一步地,所述识别模块602,具体用于基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述装置还包括:

查询模块604,用于所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则触发所述获取模块执行根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

图7为本发明实施例提供的一种资产指纹识别装置的架构示意图,如图7所示,资产指纹识别装置按资产指纹识别过程的层次,自上而下分为三层,分别是数据规范层、能力构建层和指纹应用层。

数据规范层中的数据作为资产指纹管理的知识承载,以文档规范、纯数据库文件形式构成,例如关系型数据中是数据由excel表、access文件、pg表等构成;数据规范层中的资产指纹数据库包括统一格式的资产指纹范式描述以及该规范形式存储的既有指纹数据。

能力构建层是以程序、工具方式对数据规范的管理实施,分为资产指纹知识管理、插件管理两大部分,内部均由管理平台、生产系统等职能模块组成。

在进行资产指纹知识管理时,包括指纹知识管理平台和指纹生产系统,指纹知识管理平台用于对资产指纹知识库数据的维护,包括增/删/改/查/导入/导出等操作,指纹生产系统分布于指纹采集和供给侧各团队的设备。

在进行插件管理时,包括资产指纹插件库、指纹插件管理平台和插件生产系统,资产指纹插件库是对指纹知识的可运行实例化,具体需要安装运行环境选择平台、语言和SDK等,各供给侧团队单独实施,指纹插件管理平台用于统一指纹插件格式、SDK组件选项、引擎、运行环境后,对资产指纹插件提供一致的管理运维功能:增/删/改/查/运行/调试/导入/导出等操作,插件生产系统用于按照指纹知识,在各团队的插件运行环境中编写和调试插件。

指纹生产系统通过指纹管理平台按照指纹知识规范格式,向资产指纹知识库中添加维护数据;插件生产系统按照指纹知识库的内容,通过指纹插件管理平台,向资产指纹插件库中添加和维护指纹插件,以上过程均以数据规范层的资产指纹知识库作为遵循标准和联系,在没有对应管理平台时,相关流程可以线下人工方式实施。

指纹应用层使用仅针对资产指纹插件库。通过公司升级系统和升级站点,将插件封装为插件升级包,提供给资产识别CBB以扩充相关能力。资产指纹需求方产品团队,例如RSAS、NTI、IDPS等,可通过引用CBB,或者直接使用指纹插件,来获取资产指纹的识别能力。

实施例11:

图8为本发明实施例提供的一种电子设备结构示意图,在上述各实施例的基础上,本发明实施例还提供了一种电子设备,如图8为所示,包括:处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信。

所述存储器803中存储有计算机程序,当所述程序被所述处理器801执行时,使得所述处理器801执行如下步骤:

接收待识别网络资产的资产指纹数据,获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;

解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的函数值;

根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述处理器801具体用于所述获取所述资产指纹数据中的每个资产标记的信息包括:

根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

进一步地,所述处理器801具体用于所述解析传输的数据包包括:

针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;

若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;

若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

进一步地,所述处理器801具体用于所述根据所述目标协议数据,及预设的确定函数,确定所述每个资产标记的函数值包括:

根据所述目标协议数据、以及预设的置信度确定函数,确定所述每个资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

进一步地,所述处理器801具体用于所述根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的置信度值包括:

基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;

根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

进一步地,所述处理器801具体用于所述将所述目标资产标记作为对所述资产指纹数据的目标识别结果包括:

基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述处理器801还用于所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,所述方法还包括:

根据所述每个二维表,在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则执行后续的根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口802用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

实施例12:

在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行时实现如下步骤:

接收待识别网络资产的资产指纹数据,获取所述资产指纹数据中的每个资产标记的信息,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合;

解析传输的数据包,获取所述每个资产标记对应的网络协议字段集合中的每个网络协议字段的目标协议数据,根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的函数值;

根据所述每个资产标记的函数值,确定目标资产标记,将所述目标资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取所述资产指纹数据中的每个资产标记的信息包括:

根据所述资产指纹数据中的每个二维表,获取每个二维表对应的每个资产标记的信息。

进一步地,所述解析传输的数据包包括:

针对预先针对每个网络协议字段保存的数据获取方式,确定所述每个资产标记的网络协议字段对应的数据获取方式;

若网络协议字段对应的数据获取方式为被动采集,则接收到数据包后,采用流量解码引擎进行解码;

若网络协议字段对应的数据获取方式为主动采集,则采用预先保存的构造引擎,构造请求报文,接收所述请求报文的应答报文并解析。

进一步地,所述根据所述目标协议数据,及预设的确定函数,确定所述每个资产标记的函数值包括:

根据所述目标协议数据、以及预设的置信度确定函数,确定所述每个资产标记的置信度值;或,

根据所述目标协议数据、以及预设的相似度确定函数,确定所述每个资产标记对应的相似度值。

进一步地,所述根据所述目标协议数据,及预设的置信度确定函数,确定所述每个资产标记的置信度值包括:

基于预先保存的运算函数对所述每个网络协议字段的目标协议数据进行运算,得到所述每个资产标记的每个网络协议字段的函数值;

根据预先保存的索引函数库中所述每个资产标记对应的索引函数,将所述每个资产标记的每个网络协议字段的函数值输入所述索引函数得到输出的置信度值。

进一步地,所述将所述目标资产标记作为对所述资产指纹数据的目标识别结果包括:

基于预先保存的资产标记规范库的范式化转换接口,确定所述目标资产标记范式化转换后的标准资产标记,并将所述标准资产标记作为对所述资产指纹数据的目标识别结果。

进一步地,所述获取所述资产指纹数据中的每个资产标记的信息之后,所述在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合之前,所述方法还包括:

根据所述每个二维表,在预先保存的资产标记规范库查询是否所述每个资产标记均存在,若是,则执行后续的根据所述每个二维表,在预先保存的资产指纹数据库中获取所述每个资产标记对应的网络协议字段集合的步骤;若否,则确定所述资产指纹数据无法识别。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

相关技术
  • 一种漆面识别方法、装置、存储介质及电子设备
  • 一种语音识别方法、装置、设备及介质
  • 一种氨氮的识别方法、装置、存储介质及设备
  • 一种总磷的识别方法、装置、存储介质及设备
  • 一种溶解氧的识别方法、装置、存储介质及设备
  • 一种网络资产指纹特征的识别方法、装置及电子设备
  • 一种指纹识别设备、指纹识别方法、装置及介质
技术分类

06120115918250