1.本申请属于工控资产识别领域,尤其涉及一种资产识别方法、装置、电子设备及计算机存储介质。
背景技术:2.我们所熟知的,工业是第二产业的主要组成部分,它是国民经济中最重要的物质生产部门之一,随着人工智能的发展,工业也逐步向智能化制造转变。在智能化制造的转变过程中,很多领域都使用到了工业控制系统,工业控制系统可以将工业中的各种设备联接到一个系统中,优化了生产运营效率,降低了生产成本,减少了工业损失,极大的提高了生产力。可以说工业控制系统的出现实现了对设备资产的进一步探测和管理。
3.但是,传统的工业控制系统经过探测识别后,能够获取例如设备厂商、设备类型等设备信息。获取的设备信息相对较少,相关政府监管部门很难详细的查看指定区域内设备资产的安全态势信息。
技术实现要素:4.本申请实施例提供了一种资产识别方法、装置、电子设备及计算机存储介质,可以解决相关政府监管部门很难详细的查看指定区域内设备资产的资产联网情况和安全态势的问题。
5.第一方面,本申请实施例提供了一种资产识别方法,所述方法包括:对目标区域内的设备资产进行存活检测,获取处于存活状态的第一设备资产的设备信息,所述设备信息包括所述第一设备资产的ip参数;利用所述ip参数在预设的ip资源库中搜索,得到所述设备资产的位置信息;根据所述位置信息获取所述设备资产的周边企业信息;根据所述设备信息、所述位置信息和所述周边企业信息得到所述第一设备资产的安全态势信息。
6.本申请提供了一种资产识别方法,通过对设备资产进行存活检测并识别来获取设备信息,通过搜索ip资源库进一步得到了位置信息和周边企业信息。这样通过设备信息、位置信息和周边企业信息可以得到设备资产的安全态势信息,这样不仅获得了更加丰富的数据,而且通过所述安全态势信息可以使政府监管部门清楚详细的查看指定区域内设备资产的安全态势信息。
7.可选的,所述对目标区域内的设备资产进行存活检测之前,还包括:获取探测任务信息,所述探测任务信息包括所述目标区域、指纹库、速率、任务带宽、周期和任务优先级。
8.可选的,所述对目标区域内的设备资产进行存活检测包括:根据所述目标区域确定ip段集合;根据系统空闲带宽和所述任务带宽向所述ip段集合发送探测报文,并监听所述探测报文对应的第一响应报文;根据监听到的所述第一响应报文,确定所述ip段集合中存活的ip段子集合。
9.基于上述可选方式,可以直接对目标区域内的设备资产进行存活检测,而无需对接入工业控制系统的所有设备资产进行盲测,有效提高了检测效率。
10.可选的,所述根据系统空闲带宽和所述任务带宽向所述ip段集合发送探测报文包括:若所述任务带宽大于所述系统空闲带宽,则以所述系统空闲带宽向所述ip段集合发送探测报文;如果所述任务带宽小于所述系统空闲带宽,那么以所述任务带宽向所述ip段集合发送探测报文。
11.基于系统空闲带宽和任务带宽的大小来发送探测报文,可以充分利用带宽资源。由于使用的带宽越高,发送探测数据包的速度越快,因此可以节约运行时间,提高运行效率。
12.可选的,所述获取处于存活状态的第一设备资产的设备信息包括:对于所述ip段子集合中的每个ip段,若与所述ip段连接成功,则向所述ip段发送请求报文,所述请求报文用于获取与所述ip段对应的设备资产的设备信息;接收来自所述ip段的第二响应报文,所述第二响应报文携带所述设备资产的设备信息;若所述设备信息中的指纹信息存在于所述指纹库中,则确定所述设备资产为所述第一设备资产,并获取所述第一设备资产的设备信息。
13.可选的,所述方法还包括:根据所述第一设备资产的安全态势信息生成地图信息。通过上述方式可以更加直观、形象、具体的了解到设备资产的安全态势信息。
14.可选的,所述方法还包括:接收第三方平台发送的安全态势信息请求;基于ssl/tls机制向所述第三方平台发送所述第一设备资产的安全态势信息。
15.对传输数据进行加密,可以有效保证数据传输的安全性,避免了数据被窃取,同时还可以有效防止传输过程中数据的篡改。
16.第二方面,本申请实施例提供了一种资产识别装置,所述装置包括:第一获取模块,用于对目标区域内的设备资产进行存活检测,获取处于存活状态的第一设备资产的设备信息,所述设备信息包括所述第一设备资产的ip参数;第二获取模块,用于利用所述ip参数在预设的ip资源库中搜索,得到所述设备资产的位置信息;第三获取模块,用于根据所述位置信息获取所述设备资产的周边企业信息;第四获取模块,用于根据所述设备信息、所述位置信息和所述周边企业信息得到所述第一设备资产的安全态势信息。
17.第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的资产识别方法。
18.第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的资产识别方法。
19.第五方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在所述电子设备上运行时,使得所述电子设备执行第一方面中任一项所述的资产识别方法。
20.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
21.为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述
中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
22.图1是本申请实施例提供的一种工业控制系统的示意图;
23.图2是本申请实施例提供的一种资产识别方法的流程图;
24.图3是本申请实施例提供的资产识别过程的流程图;
25.图4是本申请实施例提供的获取位置信息和周边企业信息的示意图;
26.图5是本申请实施例提供的数据加密过程的示意图;
27.图6是本申请实施例提供的一种资产识别装置的示意图;
28.图7是本申请实施例提供的一种电子设备的示意图。
具体实施方式
29.在智能化制造的转变过程中,很多领域都使用到了工业控制系统,工业控制系统可以将工业中的各种设备联接到一个系统中,优化了生产运营效率,降低了生产成本,减少了工业损失,极大的提高生产力。可以说工业控制系统的出现实现了对设备资产的进一步探测和管理。
30.但是,传统的工业控制系统经过探测识别后,能够获取例如设备厂商、设备类型等设备信息。获取的设备信息相对较少,因此,获取的设备信息相对较少,相关政府监管部门很难详细的查看指定区域内设备资产的安全态势信息。
31.本申请提出一种资产识别方法,能够检测指定区域范围内存活的设备资产,然后关联存活资产与对应的指纹来初步得到设备资产相关信息,然后利用设备信息中的ip参数进一步检索ip资源库来获取设备资产的位置信息和周边企业信息,这样就得到了由设备信息、位置信息和周边企业信息组成的安全态势信息。通过整理分析安全态势信息可以得到设备资产的联网情况和安全态势,不仅有利于政府监管部门详细的查看指定区域内设备资产的安全态势信息,而且还有利于政府监管部门对企业的监管。
32.本申请实施例提供的一种资产识别方法,适用于如图1所示的工业控制系统,该工业控制系统100包括但不仅限于主机101、服务器102、设备资产103。
33.主机101实际上就是计算机,用于和服务器102或者设备资产103进行数据交互。服务器102本质上来说是计算机的一种,在工业控制系统中,服务器102在网络中为设备资产103提供计算或者存储信息的服务。
34.设备资产103可以是工业控制系统中所涉及到的一些物理设备资产,也可以是工业控制系统中所涉及到的网络资产。具体地,物理设备资产可以是工控设备,比如,可以是不同厂家生产的可编程逻辑控制器(programmable logic controller,plc)、物联网(the internet of things,iot)设备、数据传输单元(data transfer unit,dtu)设备、视频监控设备等。例如,西门子、欧姆龙、三菱、通用电气等生产的plc;海康威视、大华等生产的视频监控设备等。网络资产可以是数据采集与监视控制(supervisory control and data acquisition,scada)软件等。
35.通过上述工业控制系统100不仅可以探测到工控资产的实时状态,而且可以充分利用识别到的工控资产的信息和网络中的一些数据来预测工控资产的安全态势,为监管部
门监管互联网工业资产提供有效且全面的数据支撑。
36.基于图1所示的系统,本申请提供一种资产识别方法。如图2所示是本申请实施例提供的一种资产识别方法的流程示意图。包括:
37.s201,对目标区域内的设备资产进行存活检测,获取处于存活状态的第一设备资产的设备信息,所述设备信息包括所述第一设备资产的ip参数。
38.其中,第一设备资产为检测到的处于存活状态的设备资产,目标区域中可能存在一个或者多个第一设备资产。
39.示例性的,可以采用网络协议以及工控协议对工控系统中接入的所有资产的全部端口进行预扫描获取处于存活状态的设备资产的设备信息。例如,获取接入到工控系统中的所有设备资产的ip参数,采用随机算法打乱所有设备资产的ip参数,通过向所有设备资产的全部端口发送探测报文,利用该探测报文对应的响应报文来判断端口存活,直至扫描完所有的ip参数和端口,得到处于存活状态的设备资产。然后再向处于存活状态的设备资产发送携带有不同协议的特定探测报文,通过上述特定探测报文对应的响应报文来获取处于存活状态的设备资产的设备信息。
40.在一种可能的实现方式中,当对目标区域内的设备资产进行存活检测时,可以首先获取目标区域的探测任务信息。
41.可选的,在本申请实施例中,可以自定义探测任务信息,探测任务信息包括目标区域、指纹库、速率、任务带宽、周期和任务优先级。
42.其中,选择的区域可以是选择具体的地理地址的名称包括国家,市、区或者县等,例如选择的区域可以是xx省xx市的这样一个区域名称;也可以是在地图上框选一个的区域来表示对区域的选择。后者例如,在地图界面上框选一个圆形区域,表示探测该区域内的设备资产,本申请对于选择区域的方式不作任何限定。当选择的区域较小时,可以使用编辑功能对所选择的区域进行修改。当不需要上述区域时,可以删除选择的区域。
43.指纹库中一个型号的设备对应一个特定的指纹,指纹用于唯一识别设备资产。也就是说,对于每个设备资产都有对应的指纹信息,该指纹信息包括端口、协议和处理逻辑。端口可以理解为设备资产与外界通讯交流的出口,通过该出口和ip地址就可以定位到资产设备。例如,把ip地址可以看成是一个小区,在一个小区里有很多住户,要想定位到每一户需要知道每一户对应的门牌号,端口就相当于门牌号,知道小区里面每一户的门牌号就可以定位到每一户,知道ip地址和端口号就可以定位到设备资产。选择指纹库可以选取某一特定的指纹库,也可以不选择任何指纹库,在不选择任何指纹库的情况下默认选取所有的指纹库。例如,可以选取plc设备的指纹库,或者视频监控类的指纹库。上述选择不同的指纹库会使得探测识别的结果不同,例如,选择plc设备的指纹库,可以表示在所选的区域范围内检测识别不同型号的plc设备。
44.选取的周期就是工控资产探测识别的周期。例如选取的周期为半个月,那么每半个月进行一次该区域内工控资产的探测识别。
45.速率表示单位时间内传送的数据量大小,带宽通常指信号所占据的频带宽度,可以理解的,由于速率和带宽之间是可以互相转换的,所以速率或者带宽可以理解为数据传输能力,带宽越大,传输能力越强;反之,带宽越小传输能力越弱。同样的,速率越快,传输能力越强,反之速率越慢,传输能力越弱。
46.任务优先级可以理解为任务处理或者执行的先后顺序。例如,假设优先级共32级,用0到31的顺序数值表示由低到高的任务优先级。如果有a和b两个任务,a的任务优先级为10,b的任务优先级为30,那么在任务处理过程中优先处理b任务。
47.示例性的,创建上述探测任务后,可以对创建的探测任务进行编辑,例如,可以修改速率或者任务优先级等参数实现更新操作。还可以暂停上述探测任务,当需要处于暂停状态的任务再次运行时,可以取消暂停来恢复上述探测任务。当然,不再需要上述探测任务时,可以在取消该探测任务后,删除该探测任务。本申请对于探测任务的管理不做任何限定。
48.作为示例而非限定的,对指纹信息也有添加、更新和删除操作。通过添加操作可以增加某一设备及其指纹信息;通过更新操作可以增加或者修改某一设备的指纹信息达到更新指纹信息的目的;当指纹信息不再需要时,可以通过删除操作删除。本申请对于指纹信息的管理不做任何限定。
49.根据探测任务信息确定处于存活状态的第一设备资产,包括:
50.s1:根据目标区域确定ip段集合。
51.对于工业控制系统中的设备资产来说,存活检测其实是对存活状态的检测。存活状态就是指在对指定的ip段进行扫描过程中,如果设备资产已经连接互联网,处于运行状态,那么就可以确定该设备资产处于存活状态;反之,如果该设备资产未接入互联网,那么该设备资产处于未存活状态。
52.根据目标区域确定ip段集合实质上是匹配区域与该区域对应的ip段集合。上述ip段集合存在于ip资源库中。ip资源库就是根据地理区域划分形成的与地理区域相对应的ip地址库。ip段集合就是一段ip地址的序列集合,例如,192.168.0.1~192.168.0.254就是一个ip段,上述ip段中1~254就是可以分配的ip地址,表示在这个网段中可以连接有254台设备资产。这一过程中,使用的ip资源库可以是常见的ip资源库,也可以自定义ip资源库。随着设备资产的不断增加会不断地将设备资产的ip信息补充到上述自定义ip资源库中,以此来丰富自定义的ip资源库。实际应用中,根据目标区域获取ip段集合可以手动添加自定义ip资源库来实现,例如,可以添加内容为每行一条无类别域间路由(classless inter
‑
domain routing,cidr)格式的ip段,且为.txt格式的文本文件,然后通过解析上述文本文件来获取目标区域所对应的ip段集合(即ip列表)。
53.s2:根据系统空闲带宽和任务带宽向ip段集合发送探测报文,并监听探测报文对应的第一响应报文。
54.可选的,根据系统空闲带宽和任务带宽向ip段集合发送探测报文包括:若任务带宽大于系统空闲带宽,则以系统空闲带宽向ip段集合发送探测报文;如果任务带宽小于系统空闲带宽,那么以任务带宽向ip段集合发送探测报文。
55.应该理解的,系统空闲带宽是指系统实际可用的带宽,即实际带宽。在实际应用中,首先判断实际带宽是否大于在创建任务时自定义的任务带宽,如果任务带宽大于实际带宽,那么以实际带宽向目标区域对应的ip段集合发送同步序列编号(synchronize sequence numbers,syn)检测包,同时监听响应包;如果任务带宽小于实际带宽,则按照任务带宽向目标区域对应的ip段集合发送syn检测包,同时监听响应包。
56.作为示例而非限定的,假设,在创建探测任务时自定义的任务带宽为10,如果当前
网络允许执行带宽(即实际带宽)为5的任务,那么任务带宽大于实际带宽,这种情况下将以实际带宽来执行向目标区域对应的ip段集合发送syn检测包的操作。反之,如果当前网络允许执行带宽(即实际带宽)为15的任务,那么任务带宽小于实际带宽,这种情况下将以任务带宽来执行向目标区域对应的ip段集合发送syn检测包的操作。我们所熟知的,带宽越大数据传输越快,本申请提供的方法可以针对不同的网络环境来变换执行任务的带宽,在一定程度上,可以提升运行效率。
57.s3:根据监听到的第一响应报文,确定ip段集合中存活的ip段子集合。
58.存活检测的过程中,向目标区域对应的ip段集合发送syn检测包的操作本质上是传输控制协议(transmission control protocol,tcp)的三次握手过程。以客户端和服务器为例,三次握手的原理如下:第一次握手,客户端向服务器发送一个带有syn标志的数据包;第二次握手,服务器端在收到客户端发送的syn数据包后,向客户端发一个带有syn和确认字符(acknowledge character,ack)标志的数据包来传递确认消息;第三次握手,客户端在接收到服务器发送的确认消息后,再向服务器发送一个带有ack标志的数据包来向服务器表明收到了确认消息。
59.在存活检测的过程中提及的探测报文对应的第一响应报文其实就是上述三次握手过程中的确认消息。即向目标区域对应的ip段集合发送syn数据包后,监听到响应包其实就是上述三次握手过程中的消息确认方式来确定存活状态。对于接收到syn数据包的ip段来说,如果消息的发送方没有收到响应报文,则说明该ip段未处于存活状态,也就是该ip段对应的设备资产未处于存活状态;相反的,如果消息的发送方收到响应报文,则说明该ip段处于存活状态,也就是该ip段对应的设备资产处于存活状态;可以记录该存活的ip段,这样就得到了处于存活状态的第一设备资产。
60.确定了处于存活状态的第一设备资产后,就完成了存活检测的过程。根据存活的第一设备资产,获取处于存活状态的第一设备资产的设备信息。在一个实施例中,上述获取处第一设备资产的设备信息包括:
61.s10:对于ip段子集合中的每个ip段,若与ip段连接成功,则向ip段发送请求报文,请求报文用于获取与ip段对应的设备资产的设备信息。
62.对第一设备资产进行识别时,需要匹配一个ip段和该ip段对应的指纹。上述指纹包括端口、协议和处理逻辑。因为一个ip段可以连接有多台设备资产,如果要准确定位到第一设备资产需要明确的ip信息和指纹信息。识别过程的实质就是ip段和指纹信息匹配的一个过程。也就是使每一个ip关联一个指纹。由于此过程中需要对大量的数据进行对比,会占用大量的中央处理器(central processing unit,cpu)资源,所以可以多分配cpu资源来提升数据处理的效率。
63.如图3所示为本申请一实施例提供的识别过程的流程图。从ip段集合中经过存活检测得到存活的ip段子集合。识别过程就是向ip段子集合发起套接字socket连接,若连接失败或者连接超时,则认为ip段未识别;若连接成功,则继续向ip段子集合发送特定报文,判断响应报文是否有预设的指纹信息;若响应报文与预设的指纹信息不匹配,那么认为ip段未识别;如果响应报文与预设的指纹信息匹配,那么认为ip段识别成功,提取ip段对应的第一设备资产的信息,并将提取的信息添加至设备资产信息列表中。当然,可以为上述设备资产信息列表中的信息添加标识,用于使用标识来检索设备资产的信息。
64.套接字socket其实是对传输控制协议/网际协议(transmission control protocol/internet protocol,tcp/ip)的封装,socket本身并不是协议,而是一个应用程序编程接口,通过调用接口可以使用tcp/ip协议。利用tcp/ip协议进行数据传输的过程就是上述介绍的三次握手过程,此处将不再赘述。
65.s20:接收来自ip段的第二响应报文,第二响应报文携带设备资产的设备信息。
66.由于待识别的第一设备资产不同,生产厂商不同,第一设备资产采用的数据传输的协议可能不同。对不同第一设备资产进行识别时发送的报文需要匹配其对应的数据传输协议,所以需要发送特定报文。本申请涉及的设备资产种类多且数量较大,使用到的工控协议包括但不限于modbus、iec104、分布式网络规约3(distributed network protocol3,dnp3)、对象连接与嵌入的过程控制协议统一架构(ole for process control unified architecture,opc ua)等工控协议;可编程逻辑控制器(programmable logic controller,plc)/远程终端单元(remote terminal unit,rtu)类协议包括:西门子、欧姆龙、三菱、通用电气等生产厂商涉及的plc协议;数据采集与监视控制系统(supervisory control and data acquisition,scada)类协议包括:亚控、力控、研华等scada组态软件协议;视频监控类协议包括:海康威视、大华等视频监控设备协议;实时数据库(real time database,rtdb)类协议包括:霍尼韦尔的phd协议等工控系统的协议。本申请对于使用到的工控协议不作任何限定。
67.s30:若设备信息中的指纹信息存在于指纹库中,则确定设备资产为第一设备资产,并获取第一设备资产的设备信息。
68.设备的指纹信息可以是本地测试过程中获取到第一设备资产对应的信息。还可以通过镜像交换机流量的方式获取到第一设备资产对应的指纹信息。镜像交换机流量可以理解为获取交换机中的传输数据。本申请中对于指纹信息的获取方法不作任何限定。指纹信息用于唯一识别第一设备资产。在识别过程中,向批量的第一设备资产发送特定报文,利用接收到的响应报文与指纹信息进行比较,以此实现对第一设备资产的识别。例如,第一设备资产为西门子xxx型号的plc设备,在本地测试的过程中,向该plc设备发送特定报文a,会接收到一个对应的响应报文b。在实际识别过程中,向第一设备资产发送包括西门子plc协议的特定报文,如果接收到的响应报文与响应报文b匹配成功,那么可以通过读取响应报文来确定第一设备资产为西门子xxx型号的plc设备。反之,如果接收到的响应报文与响应报文b不匹配,那么无法识别该第一设备资产。
69.作为示例而非限定的,通过响应报文提取第一设备资产的设备信息包括但不限于ip、端口、资产所属厂商、资产类型和/或资产型号。本申请对于获取的第一设备资产的设备信息不作任何限定。
70.综上,本申请提供的一种资产识别方法中,获取处于存活状态的第一设备资产的设备信息时,无需检测接入工业控制系统中的所有设备资产全部端口,而是将ip和指纹进行分片,首先利用ip段对目标区域内的设备资产进行存活检测,然后利用指纹信息关联处于存活状态的第一设备资产,通过接收向第一设备资产发送探测报文对应响应报文来获取处于存活状态的第一设备资产的设备信息。从而提高了存活设备资产的探测识别效率。
71.s202,利用ip参数在预设的ip资源库中搜索,得到设备资产的位置信息。
72.作为示例的,根据第一设备资产的ip参数自动搜索ip信息库获取经度、纬度、国
家、省份、城市、运营商组成的位置信息。需要注意的是,为了获取到经度纬度信息,需要额外授权以调用经纬度查询接口。
73.s203,根据位置信息获取设备资产的周边企业信息。
74.利用经度、纬度和第一设备资产的实际地理位置信息获取该第一设备资产周围一定范围内的周边企业信息。
75.作为示例而非限定的,周边企业信息包括而不限于企业名称、企业类型、和简介。所述简介可以包括企业法人、注册地址、业务范围、注册资本等。
76.s204,根据设备信息、位置信息和周边企业信息得到第一设备资产的安全态势信息。
77.综上,获取的安全态势信息包括但不限于ip、端口、资产所属厂商、资产类型和/或资产型号、经度、纬度、国家、省份、城市、运营商、企业名称、企业法人、企业类型、注册地址、业务范围、注册资本和简介。
78.作为示例而非限定的,也可以记录相应的第一设备资产存活检测时间,即发现时间。还可以记录识别到第一设备资产信息位置信息的时间,即更新时间等等。并将安全态势信息、发现时间和/或更新时间添加至设备资产的信息列表中。
79.不难理解的,安全态势信息包括基本的安全态势数据和设备资产的安全态势情况。从安全态势信息中可以挖掘到很多有价值的信息。因此,可以将获取的安全态势信息数据分享给第三方平台,以充分发挥数据的作用。第三方平台是指用于设备资产管理的系统,例如,第三方平台可以是态势感知系统,也可以是可视化展示系统。也可以单向传送给设备资产相关政府监管部门作设备资产的安全态势分析;政府监管部门还可以监管相关企业;或者相关企业根据安全态势信息完善设备资产的管理办法等。此时,第三方平台可以是政府监管部门的政务平台。本申请对于第三方平台不作任何限定。
80.由于安全态势信息不仅关系到设备资产自身的信息隐私,而且还涉及到相关企业的重要信息,所以需要尤其注意数据传输过程中的安全性。
81.可选的,当接收到第三方平台发送的安全态势信息请求,可以基于安全套接字层(secure socket layer,ssl)/安全传输层协议(transport layer security protocol,tls)机制向所述第三方平台发送所述第一设备资产的安全态势信息。
82.作为示例而非限定,当第三方平台请求获取安全态势信息时,采用ssl/tls机制对安全态势信息进行加密传输,上述加密过程包括:第三方平台发起安全态势信息请求时,同时发送第三方平台拥有的公钥;在接收到公钥后,生成随机码key,将随机码key经过公钥加密后发送给第三方平台;第三方平台利用私钥解密得到随机码key,然后利用该随机码key进行安全态势信息的传输。
83.如图5所示是以客户端、服务器为例ssl/tls机制对数据加密传输的过程。服务器拥有公钥和私钥,在数据传输时,服务器先将公钥发送给客户端,此时客户端就拥有了与服务器一样的公钥。客户端在接收到公钥后会生成一个随机码key,然后客户端利用公钥把key加密传输给服务器。服务器接收到客户端发送的上述信息后,利用私钥解密公钥来获取到上述key。这样客户端和服务器就同时拥有了key密钥,然后双方就可以使用key密钥进行对称加密的交互数据。应该理解的,在一次完整的通话过程中,key是不发生变化的。当一次对话结束,再次重新开始另一次对话时上述key会发生变化。
84.如果在客户端和服务器进行非对称的称加密传输key的过程中,如果其他方(例如,黑客)获取了公钥和加密后的key,在没有私钥的情况下也无法获知key密钥。因此,采用上述方法保证了数据传输过程的安全性,同时可以有效防止数据被篡改。
85.作为示例的,可以把客户端视为政务平台,服务器视为拥有安全态势信息的设备资产系统。采用ssl/tls机制进行数据加密的过程可以理解为:政务平台需要使用设备资产系统传输的安全态势信息数据,这时政务平台就会向设备资产系统发起连接请求。可形象理解为,设备资产系统为了保证数据安全,这里解锁状态的保险箱可以视为公钥,密码视为私钥。设备资产系统将解锁状态的保险箱发送给政务平台,政务平台在接收到该保险箱后将生成的随机码key放进保险箱中,并关闭保险箱。然后将保险箱发送给设备资产系统,设备资产系统接收到保险箱后利用密码打开保险箱获取到key,然后设备资产系统和政务平台利用key进行数据传输。在这个过程中,即使其他方获取到存放有随机码key的保险箱,但是不知道开启保险箱的密码,也是无法得到key的,因为只有设备资产系统知道开启保险箱的密码。这样保证了数据传输的安全性。
86.不难理解的,可以根据基本的数据分类功能化展示安全态势信息。也可以通过集成例如攻击检测系统等其他系统的数据,利用安全态势信息和其他系统的数据来得到更加丰富的安全态势分析统计结果。本申请对于其他系统不作任何限定。这样不仅能帮助企业了解设备资产,优化业务流程,更好的提供个性化服务。而且还能帮助政府监管部门实时掌握探测区域内工控资产信息,评估该区域的工业设备安全态势,同时能够利用上述数据来监管相关企业。对于上述的安全态势分析统计结果可以人工分析统计数据得到工业设备安全态势,也可以通过工业控制系统自动分析得到。本申请对于工业设备安全态势的分析方法不作任何限定。
87.作为示例而非限定的,基本的数据分类功能化展示可以分为企业信息展示和设备资产信息展示。基本的数据分类展示可以根据不同的角色对不同内容进行展示,比如对于用户和企业主管部门来说,二者重点关注的内容可能是不同的,通过不同的关注重点可以有多种模式,那么就可以以多种模式来进行数据的展示。例如,对于企业主管部门来说重点关注企业内部的设备资产信息,那么展示模式中以设备资产信息为主。同理,对于用户来说可能关注的重点为不同企业的设备资产信息,那么对于用户的展示模式中以企业与设备资产之间关联的信息为主。
88.可选的,根据第一设备资产的安全态势信息生成地图信息。上述地图可以采用电子地图、街景、卫星地图或者3d卫星地图等显示方式。街景即是实景,这种显示方式可以直观、清晰展示企业和资产的位置信息。
89.示例性的,可以在地图中使用不同的颜色对设备资产的状态进行标记,设备资产的状态可以分为未存活资产、存活已审核资产、存活未审核资产、隐形资产、已收录企业等。这样可以清楚有效的观察到资产所处状态。例如,使用绿色表示存活已审核资产,如果直接查看地图,大部分的资产标记显示为绿色,那么可以直接得出大部分资产的状态是基本稳定的初步判断结果。
90.应该理解的,如果使用地图来展示企业信息,那么可以通过在地图上选择指定区域的企业位置。选择指定区域的方式可以是画一个矩形框,然后在所选矩形框内显示企业信息,本申请对于选择指定区域的方式不作任何限制。当然还可以通过在电子地图上显示
企业的位置来引入企业信息的展示,例如:用户想要查看企业信息,可以在电子地图上点击企业对应的位置,就能够查看该企业类型、注册信息等相关信息。企业信息展示经过统计可以展示包括但不限于企业数量、企业行业统计、企业评估情况统计、攻击国家排名、攻击协议排名、资产行业统计、资产类型统计等信息。
91.类似的,如果使用地图来展示设备资产的信息,也可以通过在地图上选择指定区域的资产位置,选择指定区域的方式可以是画一个矩形框,然后在所选矩形框内显示资产信息,本申请对于选择指定区域的方式不作任何限制。不难理解的,还可以通过在电子地图上显示设备资产的位置来引入资产信息的展示,例如,用户在电子地图上点击某一设备资产对应的位置就可以查看设备资产的ip、运营商、端口、协议、类型、厂商以及指纹信息等。本申请对于数据的可视化展示不作任何限定。资产信息经过统计后可以展示包括但不限于资产行业分布、资产总量趋势、资产风险占比、设备类型占比等。
92.可选的,还可以通过手动的方式在地图页面搜索不同标识来搜索设备资产。不同的标识可以是企业名称或者ip参数,例如,使用ip参数进行搜索时,输入ip参数后会定位到设备资产的实际物理位置,然后将该设备的实际物理位置显示在地图中,可以理解的,在地图中的展示可以通过一个点或者圈等标记来提示该设备的定位,用户还可以通过点击或者接触相应的标记来获取该设备的详细物理位置信息。当在使用企业名称搜索时可采用关键字进行检索,例如企业名称为abc有限责任公司,在使用关键字搜索时输入关键词abc,如果该abc有限责任公司有连接在互联网中的设备资产,那么搜索结果会在地图中展现这些设备资产的位置。
93.作为示例的,由于数据量较大且复杂,结合不同数据会得到大量不同的结果,故还可以通过大屏可视化的方式来展示统计图表的结果。其中大屏可视化包括首页大屏、企业大屏和资产大屏。
94.首页大屏中,统计图表包括但不限于企业数量、企业评估数量、企业合规数量、攻击捕获数量、攻击者数量、攻击组织数量、资产数量、已核查资产数量、风险数量等。还可以用来展示企业行业分布、资产行业分布、企业评估情况统计、资产类型统计等结果;
95.企业大屏中,统计图表包括但不限于行业分布统计、企业性质分布统计、企业总数、已评估数量、合规数量、评估占比数量、评估分数占比,且支持地图和卫星地图企业位置标记等。通过地图和卫星地图企业位置标记可以展示企业所属类型、企业法人、注册地址、业务范围、注册资本和简介等信息。
96.资产大屏中,统计图表包括但不限于行业分布、总量趋势、风险占比、设备占比,支持地图和卫星地图显示资产位置标记,通过地图和卫星地图展示的资产位置标记可以展示显示ip、运营商、开放端口、使用协议、资产类型、资产型号、资产厂商、指纹信息等。
97.如图6所示为本申请实施例提供了一种资产识别装置的结构示意图,对应于本申请实施例的资产识别方法。为了便于说明,仅说明与本申请实施例相关的部分。
98.该装置包括:第一获取模块601,用于对目标区域内的设备资产进行存活检测,获取处于存活状态的第一设备资产的设备信息,设备信息包括第一设备资产的ip参数。
99.第二获取模块602,用于利用ip参数在预设的ip资源库中搜索,得到设备资产的位置信息。
100.第三获取模块603,用于根据位置信息获取设备资产的周边企业信息。
101.第四获取模块604,用于根据设备信息、位置信息和周边企业信息得到第一设备资产的安全态势信息。
102.可选的,对目标区域内的设备资产进行存活检测之前,还包括:获取探测任务信息,探测任务信息包括目标区域、指纹库、速率、任务带宽、周期和任务优先级。
103.可选的,对目标区域内的设备资产进行存活检测包括:根据目标区域确定ip段集合;根据系统空闲带宽和任务带宽向ip段集合发送探测报文,并监听探测报文对应的第一响应报文;根据监听到的第一响应报文,确定ip段集合中存活的ip段子集合。
104.可选的,根据系统空闲带宽和任务带宽向ip段集合发送探测报文包括:若任务带宽大于系统空闲带宽,则以系统空闲带宽向ip段集合发送探测报文;如果任务带宽小于系统空闲带宽,那么以任务带宽向ip段集合发送探测报文。
105.可选的,获取处于存活状态的第一设备资产的设备信息包括:对于ip段子集合中的每个ip段,若与ip段连接成功,则向ip段发送请求报文,请求报文用于获取与ip段对应的设备资产的设备信息;接收来自ip段的第二响应报文,第二响应报文携带设备资产的设备信息;若设备信息中的指纹信息存在于指纹库中,则确定设备资产为第一设备资产,并获取第一设备资产的设备信息。
106.可选的,本申请提供的一种资产识别方法还包括:根据第一设备资产的安全态势信息生成地图信息。
107.可选的,本申请提供的一种资产识别方法还包括:接收第三方平台发送的安全态势信息请求;基于ssl/tls机制向第三方平台发送第一设备资产的安全态势信息。
108.需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
109.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
110.如图7所示为本申请实施例提供的一种电子设备的结构示意图。如图7所示,该电子设备700包括:至少一个处理器701、存储器702以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序703,所述处理器701执行所述计算机程序703时实现上述任意各个方法实施例中的步骤。
111.存储器702可以包括如下至少一种类型:只读存储器(read
‑
only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmabler
‑
only memory,eeprom)。在某些场景下,存储器还可以是只读光盘(compact disc read
‑
only memory,cd
‑
rom)或其他光盘存
储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
112.存储器702可以是独立存在,与处理器701相连。可选的,存储器702也可以和处理器701集成在一起,例如集成在一个芯片之内。其中,存储器702能够存储执行本申请实施例的技术方案的计算机执行指令,并由处理器701来控制执行,被执行的各类计算执行指令也可被视为是处理器701的驱动程序。例如,处理器701用于执行存储器702中存储的计算机执行指令,从而实现上述本申请实施例中如图2所示的方法流程。
113.本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
114.上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何可用介质。
115.作为一种可选的设计,计算机可读介质可以包括ram,rom,eeprom,cd
‑
rom或其它光盘存储器,磁盘存储器或其它磁存储设备,或可用于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(dsl)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,dsl或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(cd),激光盘,光盘,数字通用光盘(dvd),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
116.本申请实施例提供了一种计算机程序产品。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,可以全部或者部分得通过计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行上述计算机程序指令时,全部或部分地产生按照上述方法实施例中描述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。
117.应理解的,上述各个实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
118.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
119.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出
本申请的范围。
120.在本申请所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
121.应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
122.还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。当本申请提及术语“第一”或者“第二”等序数词时,除非根据上下文其确实表达顺序之意,否则应当理解为仅仅是起区分之用。
123.如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“确定”或“检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0124]
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0125]
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。