一种基于指纹采集的工业控制应用程序安全监测方法与流程

文档序号:22506086发布日期:2020-10-13 09:43阅读:102来源:国知局
一种基于指纹采集的工业控制应用程序安全监测方法与流程

本发明涉及工业控制与信息安全技术领域,尤其涉及一种基于指纹采集的工业控制应用程序安全监测方法及工业控制系统。



背景技术:

工业控制系统的工程师站是指工业过程控制工程师使用的,对系统进行组态、编程、修改等操作的工作站。工程师站上运行了多种工业控制软件应用程序,这些应用程序的安全直接关系到整个工业控制系统的安全,而对于这些应用程序的安全问题却少有研究。工程师站上的应用程序种类繁多且版本复杂,如何及时发现这些应用程序的异常,发现针对应用程序的安全攻击,对于保证工业控制系统的安全具有重要意义。

目前,对于工业控制系统安全的研究,主要集中在对工业控制设备本身的安全、工业控制环境的网络攻击和入侵检测、工业控制系统安全态势感知等,尚没有针对工业控制软件应用程序本身进行安全检测和分析的方法。



技术实现要素:

本发明的目的是针对上述至少一部分缺陷,提供一种针对工程师站上各种应用程序本身进行监测的工业控制应用程序安全监测方法。

为了实现上述目的,本发明提供了一种基于指纹采集的工业控制应用程序安全监测方法,包括如下步骤:

s1、设置应用程序指纹采集器,所述应用程序指纹采集器中存储有对应多种应用程序的指纹库,通过交换机与各工程师站进行通信;其中,指纹库用于记录正常状态的应用程序的指纹,应用程序的指纹至少包括应用程序的运行路径和应用程序执行文件的哈希值;

s2、在各工程师站上安装应用程序指纹监测软件,所述应用程序指纹监测软件将所在的工程师站的地址配置给所述应用程序指纹采集器,并定期采集所在的工程师站上运行的各种应用程序的指纹,发送给所述应用程序指纹采集器;

s3、所述应用程序指纹采集器接收所述应用程序指纹监测软件发送来的各种应用程序的指纹并保存;

s4、所述应用程序指纹采集器将发送来的各种应用程序的指纹与指纹库进行比对,若可以匹配,则认为无异常,若无法匹配,则认为发生异常,产生安全警告信息并发送至对应的工程师站。

优选地,应用程序的指纹还包括应用程序的名称、文件编译时间、大小及证书。

优选地,指纹库中单独存储正常状态的应用程序执行文件的哈希值,构成hash白名单库,单独存储正常状态的证书,构成证书白名单库;

所述步骤s4中,进行比对时,先比对应用程序执行文件的哈希值,若哈希值不在hash白名单库中,则认为无法匹配;再比对应用程序的证书,若证书不在证书白名单库中,则认为无法匹配;最后逐项比对应用程序的名称、运行路径、文件编译时间及大小,若相对于指纹库中记录的、正常状态的指纹发生了变化,则认为无法匹配。

优选地,指纹库中记录的、正常状态的指纹来自各工程师站自身携带或用户导入的默认指纹库,以及指定时间内所述应用程序指纹监测软件采集的指纹。

优选地,在指定时间内,所述应用程序指纹采集器接收所述应用程序指纹监测软件发送来的各种应用程序的指纹并保存,更新指纹库。

优选地,所述应用程序指纹采集器中存储的指纹库与各工程师站上运行的应用程序同步更新。

优选地,所述应用程序指纹采集器中存储的指纹库根据用户指令在指定时间内更新。

优选地,所述应用程序指纹采集器通过交换机与各工程师站进行通信时,包括如下步骤:

工程师站上安装的所述应用程序指纹监测软件通过交换机向所述应用程序指纹采集器发送握手申请,所述应用程序指纹采集器通过交换机向相应工程师站上的所述应用程序指纹监测软件发送握手确认,开始通信;

所述应用程序指纹监测软件通过交换机发送应用程序的指纹,所述应用程序指纹采集器接收应用程序的指纹,并通过交换机向相应工程师站上的所述应用程序指纹监测软件发送指纹接收确认;

所述应用程序指纹监测软件通过交换机发送关闭连接,终止通信。

优选地,所述步骤s2中,所述应用程序指纹监测软件定期采集所在的工程师站上运行的各种应用程序的指纹时,针对不同的应用程序,采用独立的采集周期。

本发明还提供了一种工业控制系统,采用如上述任一项所述的工业控制应用程序安全监测方法监测至少一个工程师站上的应用程序。

本发明的上述技术方案具有如下优点:本发明提供了一种基于指纹采集的工业控制应用程序安全监测方法及工业控制系统,本发明通过在工程师站安装应用程序指纹采集软件,周期性地采集正在运行的各应用程序的指纹,存储指纹并与指纹库进行比对,能够及时发现应用程序的变更和异常,发现针对工业控制应用程序的安全风险。

附图说明

图1是本发明实施例中一种基于指纹采集的工业控制应用程序安全监测方法步骤示意图;

图2是本发明实施例中应用程序指纹监测软件与应用程序指纹采集器通信过程示意图。

具体实施方式

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

如图1所示,本发明实施例提供的一种基于指纹采集的工业控制应用程序安全监测方法,包括如下步骤:

s1、设置应用程序指纹采集器,所述应用程序指纹采集器中存储有对应各工程师站上多种应用程序的指纹库,应用程序指纹采集器通过交换机与各个工程师站进行通信。其中,指纹库用于记录正常状态的、应用程序的指纹,一个应用程序的指纹至少包括该应用程序的运行路径和应用程序执行文件的哈希值。

s2、在各工程师站上安装应用程序指纹监测软件,各工程师站上的应用程序指纹监测软件通过交换机与应用程序指纹采集器进行通信,实现数据交换;各工程师站上的应用程序指纹监测软件均将其所在的工程师站的地址配置给所述应用程序指纹采集器,并定期采集其所在的工程师站上运行的各种应用程序的指纹,发送给所述应用程序指纹采集器。

相对应的,应用程序指纹监测软件定期采集的应用程序的指纹也至少包括(现网环境下正在运行的)应用程序的运行路径和应用程序执行文件的哈希值,应用程序的运行路径可直接采集,应用程序执行文件的哈希值可通过应用程序指纹监测软件进行计算。

s3、所述应用程序指纹采集器接收所述应用程序指纹监测软件发送来的各种应用程序的指纹并保存。

通过应用程序指纹采集器,可以汇总多个工程师站上多种应用程序的指纹。

s4、所述应用程序指纹采集器将发送来的各种应用程序的指纹与指纹库进行比对,若可以匹配,则认为无异常,若无法匹配,则认为发生异常,产生安全警告信息并发送至对应的工程师站。

优选地,可采用统一的指纹库记录多工程师站上多种应用程序的正常状态的指纹,进行比对时可统一处理,同时监控多工程师站的应用程序安全。若进行比对时,某一工程师站安装的应用程序指纹监测软件采集到的某一应用程序的指纹,无法与指纹库中的记录相匹配,即应用程序执行文件有所改变,或应用程序的运行路径发生了变化,则应用程序指纹采集器判断该应用程序出现异常,进而向相应工程师站提出安全警告,及时提醒用户该应用程序可能被恶意修改。进一步地,安全警告信息中至少包括指纹比对结果,即显示应用程序及其指纹中的不匹配项,方便用户快速判断该工程师站可能遭受了何种攻击。

优选地,为了提高所述工业控制应用程序安全监测方法的监测准确率,避免漏检,应用程序的指纹还进一步包括应用程序的名称、文件编译时间、大小及证书,进行比对时,若任一项与指纹库记录的数据不符,则认为无法匹配。

进一步地,为了提高处理效率,指纹库中单独存储由正常状态的应用程序执行文件的哈希值,构成hash白名单库,指纹库中单独存储正常状态的证书,构成证书白名单库。步骤s4中,应用程序指纹采集器将发送来的各种应用程序的指纹与指纹库进行比对时,先比对应用程序执行文件的哈希值,若哈希值不在指纹库中记录的hash白名单库中,则认为无法匹配;再比对应用程序的证书,若证书不在指纹库中记录的证书白名单库中,则认为无法匹配;最后再逐项比对应用程序的名称、运行路径、文件编译时间及大小,若相对于指纹库中记录的、正常状态的指纹发生了变化,则认为无法匹配。当检测到应用程序执行文件的哈希值出现异常时,可以不再比对指纹的其他项目,直接确认发现应用程序异常。同理,若检测到应用程序的证书出现异常时,可以不再比对剩余项目。采用上述方式,能够快速发现应用程序异常,及时向相应的工程师站发送安全警告信息提醒用户,且能够减少比对时的计算量。

优选地,应用程序指纹采集器中存储的指纹库所记录的、正常状态的指纹,来自各工程师站自身携带或用户导入的默认指纹库,以及指定时间内应用程序指纹监测软件采集的指纹,即指纹库由默认指纹库加指定时间内采集的、各工程师站上正在运行的应用程序的指纹构成。

进一步地,在指定时间内,步骤s3中,应用程序指纹采集器接收应用程序指纹监测软件发送来的各种应用程序的指纹并保存后,不继续执行步骤s4中进行比对的操作,而是直接将保存的各种应用程序的指纹录入指纹库,更新指纹库。更新完成后,再继续执行步骤s4。

优选地,为适应工程师站上应用程序的变更,应用程序指纹采集器中存储的指纹库可与各工程师站上运行的应用程序同步更新。进一步地,应用程序指纹采集器中存储的指纹库也可根据用户指令在指定时间内更新。

优选地,如图2所示,该工业控制应用程序安全监测方法中,应用程序指纹采集器通过交换机与各工程师站进行通信时,具体包括如下步骤:

(1)工程师站上安装的应用程序指纹监测软件通过交换机向应用程序指纹采集器发送握手申请,应用程序指纹采集器通过交换机向相应工程师站上的应用程序指纹监测软件发送握手确认,应用程序指纹监测软件与应用程序指纹采集器开始通信。

(2)应用程序指纹监测软件通过交换机发送应用程序的指纹,应用程序指纹采集器接收应用程序的指纹,并通过交换机向相应工程师站上的应用程序指纹监测软件发送指纹接收确认。

(3)应用程序指纹监测软件通过交换机发送关闭连接,终止通信。

应用程序指纹监测软件与应用程序指纹采集器定期进行通信,如图2所示,根据应用程序指纹监测软件中设定的采集周期,在空闲一定时间间隔后,工程师站上安装的应用程序指纹监测软件再次通过交换机向应用程序指纹采集器发送握手申请,应用程序指纹监测软件采集现网环境下运行各种应用程序的指纹,发送给应用程序指纹采集器进行比对,从而实现长期监测各种应用程序的安全。

优选地,步骤s2中,所述应用程序指纹监测软件定期采集所在的工程师站上运行的各种应用程序的指纹时,针对不同的应用程序,采用独立的采集周期,即对不同的应用程序可采用不同的采集周期。对于一些重要性高的应用程序和/或工程师站,可通过设置较短的采集周期而实现重点监测。

本发明还提供了一种工业控制系统,该系统采用如上述任一实施方式所述的工业控制应用程序安全监测方法,监测至少一个工程师站上的所有应用程序。

采用上述实施方式所述的工业控制应用程序安全监测方法能够监测一个或多个工程师站上的所有应用程序,及时发现针对工业控制应用程序的安全风险。

综上所述,为保证在工程师站上运行的工业控制应用程序(简称应用程序)的安全,本发明通过构建正常状态应用程序的指纹库,并定期对运行中的应用程序的指纹进行采集和比对,能够及时、有效地发现应用程序的异常。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1