PLC动态度量方法、装置、系统、存储介质及电子设备与流程

文档序号:19992011发布日期:2020-02-22 02:23阅读:372来源:国知局
PLC动态度量方法、装置、系统、存储介质及电子设备与流程

本发明涉及信息安全技术领域,具体涉及一种plc动态度量方法、装置、系统、存储介质及电子设备。



背景技术:

随着互联网的快速发展,工控系统与互联网的信息交互日益频繁。而一旦出现信息安全问题,则会对工控系统的稳定性以及可靠性造成影响,甚至导致生产线停产,造成较大的经济损失。

通常,传统的网络安全防护采用防火墙、病毒查杀、入侵检测等被动防御方式,其防御效果较差。因此,如何提供一种plc动态度量方法,能够进行主动防御,是本领域技术人员亟待解决的一大技术难题。



技术实现要素:

有鉴于此,本发明实施例提供了一种plc动态度量方法,能够进行主动防御。

为实现上述目的,本发明实施例提供如下技术方案:

一种plc动态度量系统,包括:plc可信子系统以及plc计算子系统;

所述plc可信子系统包括可信策略管理模块以及动态度量模块;

所述plc计算子系统包括任务创建模块以及系统任务钩子模块;

所述可信策略管理模块用于获取并解析可信策略以及可信基准库,并发送目标可信策略以及目标可信基准库至所述动态度量模块;

所述任务创建模块用于创建任务;

所述系统任务钩子模块用于获取所述任务的四元组参数,并发送所述四元组参数至所述动态度量模块;

所述动态度量模块用于基于所述目标可信策略对待检测数据进行可信计算,并比较计算生成的计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息;基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令至所述plc计算子系统。

可选的,所述plc可信子系统还包括第一通信模块,所述plc计算子系统还包括第二通信模块;

所述动态度量模块通过所述第一通信模块接收所述四元组参数以及发送所述任务控制指令;

所述系统任务钩子模块通过所述第二通信模块发送所述四元组参数以及接收所述任务控制指令。

一种plc动态度量方法,应用于上述的plc可信子系统,包括:

获取可信策略以及可信基准库;

解析所述可信策略以及所述可信基准库,生成目标可信策略以及目标可信基准库;

基于所述目标可信策略对待检测数据进行可信计算,生成计算值;

比较所述计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

可选的,还包括:

获取plc计算子系统发送的任务的四元组参数;

基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令。

一种plc动态度量装置,应用于上述的plc可信子系统,包括:

第一获取模块,用于获取可信策略以及可信基准库;

解析模块,用于解析所述可信策略以及所述可信基准库,生成目标可信策略以及目标可信基准库;

生成模块,用于基于所述目标可信策略对待检测数据进行可信计算,生成计算值;

比较模块,用于比较所述计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

可选的,还包括:

第二获取模块,用于获取plc计算子系统发送的任务的四元组参数;

判断模块,用于基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令。

一种plc动态度量方法,应用于上述的plc计算子系统,包括:

创建任务,并获取所述任务的四元组参数;

发送所述四元组参数至plc可信子系统,以使所述plc可信子系统基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令;

获取所述任务控制指令,并基于所述任务控制指令执行相应的异常数据处理动作。

一种plc动态度量装置,应用于上述的plc计算子系统,包括:

第三获取模块,用于创建任务,并获取所述任务的四元组参数;

发送模块,用于发送所述四元组参数至plc可信子系统,以使所述plc可信子系统基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令;

第四获取模块,用于获取所述任务控制指令,并基于所述任务控制指令执行相应的异常数据处理动作。

一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行任意一项上述的plc动态度量方法。

一种电子设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行任意一项上述的plc动态度量方法。

基于上述技术方案,本发明提供了一种plc动态度量方法、装置、系统、存储介质及电子设备,该plc动态度量系统包括:plc可信子系统以及plc计算子系统。其中,plc可信子系统包括可信策略管理模块以及动态度量模块。plc计算子系统包括任务创建模块以及系统任务钩子模块。具体的,可信策略管理模块用于获取并解析可信策略以及可信基准库,并发送目标可信策略以及目标可信基准库至所述动态度量模块。任务创建模块用于创建任务。系统任务钩子模块用于获取所述任务的四元组参数,并发送所述四元组参数至所述动态度量模块。动态度量模块用于基于所述目标可信策略对待检测数据进行可信计算,并比较计算生成的计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息;基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令至所述plc计算子系统。可见,本方案提供了一种主动防御方式,进而提高信息安全防御。

附图说明

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

图1为本发明实施例提供的一种plc动态度量系统的结构示意图;

图2为本发明实施例提供的一种plc动态度量系统的又一结构示意图;

图3为本发明实施例提供的一种plc动态度量方法的流程示意图;

图4为本发明实施例提供的一种plc动态度量方法的又一流程示意图;

图5为本发明实施例提供的一种plc动态度量方法的又一流程示意图;

图6为本发明实施例提供的一种plc动态度量方法的又一流程示意图;

图7为本发明实施例提供的一种plc动态度量方法的又一流程示意图;

图8为本发明实施例提供的一种plc动态度量装置的结构示意图;

图9为本发明实施例提供的一种plc动态度量装置的又一结构示意图;

图10为本发明实施例提供的一种电子设备的硬件架构图。

具体实施方式

请参阅图1,图1为本发明实施例提供的一种plc动态度量系统的结构示意图,包括:plc可信子系统11以及plc计算子系统12。其中,plc可信子系统11包括可信策略管理模块111以及动态度量模块112。plc计算子系统12包括任务创建模块121以及系统任务钩子模块122。

具体的,可信策略管理模块111用于获取并解析可信策略以及可信基准库,并发送目标可信策略以及目标可信基准库至所述动态度量模块112。任务创建模块121用于创建任务。系统任务钩子模块122用于获取所述任务的四元组参数,并发送所述四元组参数至所述动态度量模块112。

而动态度量模块112用于基于所述目标可信策略对待检测数据进行可信计算,并比较计算生成的计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

除此,动态度量模块112还用于基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令至所述plc计算子系统。

具体的,在本实施例中,可信策略管理模块111负责接收第三方下发的可信策略和可信基准库,对可信策略和可信基准库进行解析存储,给动态度量模块提供度量方法和参考依据。并维护可信策略在系统运行中的更新,实现可信策略的无缝切换。

系统任务钩子模块122负责在任何任务启动时获取到任务启动的四元组参数,并将该四元组参数及时发送到plc可信子系统11,从而通知plc可信子系统11进行度量。

动态度量模块112首先根据可信策略对程序和数据进行可信计算,并将计算值与可信基准库中的可信基准值进行对比,若不一致则上报告警,提醒用户程序或者数据被修改。其次对plc计算子系统12传递过来的任务参数进行度量,判定任务是否在任务白名单内,上报告警提醒有非法任务启动并执行相应的控制动作。

可见,本方案提供了一种主动防御方式,进而提高信息安全防御。

在上述实施例的基础上,如图2所示,本发明实施例提供的plc动态度量系统中,所述plc可信子系统还可以包括第一通信模块113,所述plc计算子系统还可以包括第二通信模块123。

其中,所述动态度量模块112通过所述第一通信模块113接收所述四元组参数以及发送所述任务控制指令。所述系统任务钩子模块122通过所述第二通信模块123发送所述四元组参数以及接收所述任务控制指令。

即通信模块提供plc可信子系统11和plc计算子系统12之间的数据交互机制,保障数据传输的及时性和准确性。

在上述实施例的基础上,如图3所示,本实施例还进一步提供了一种plc动态度量方法,该方法应用于上述的plc可信子系统,包括步骤:

s31、获取可信策略以及可信基准库;

s32、解析所述可信策略以及所述可信基准库,生成目标可信策略以及目标可信基准库;

s33、基于所述目标可信策略对待检测数据进行可信计算,生成计算值;

s34、比较所述计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

即本plc动态度量方法基于plc可信子系统,首先获取第三方下发的可信策略和可信基准库,对可信策略和可信基准库进行解析存储,生成目标可信策略以及目标可信基准库,然后比较基于所述目标可信策略对待检测数据进行可信计算生成的计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

在上述实施例的基础上,如图4所示,本发明实施例提供的plc动态度量方法,还可以包括:

s41、获取plc计算子系统发送的任务的四元组参数;

s42、基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令。

即,动态度量模块112除了度量可信策略管理模块111的可信策略和可信基准库外,还对plc计算子系统12发送的任务的四元组参数进行度量,并基于预置任务白名单,判断该任务是否在任务白名单上,如果在,则说明该任务为可信任务,如果不在任务白名单上,则说明该任务为不可信任务,此时进行报警,并下发任务控制指令,以使plc计算子系统12执行与所述任务控制指令对应的控制动作。

示意性的,结合图5,从plc可信子系统11侧,对该系统的处理流程进行说明,如下:

1、cpu、内存初始化,可信策略加载及初始化,度量模块和核间通信模块初始化。

2、可信策略下发和更新

具体流程如下:

1)检测设备串口或者网口是否有数据,若存在数据进行步骤2),没有数据进行步骤4)。

2)判断是否为策略。若是策略进行步骤3),若不是进行步骤4)。

3)更新当前可信系统备用策略表中的策略信息,待更新完成后切换主备可信策略。实现策略的一次性切换,避免同时存在新、旧策略,保证可信策略一致性和度量结果可信和正确性。

4)系统其它处理。

3、核间通信数据检测

plc可信子系统和计算子系统间通过写中断寄存器和共享内存的方式实现通信。通信包括消息通信和数据通信。消息通信只负责通知两个系统对方有数据需要读取,并告知对方数据存放的内存地址,消息通信通过写中断寄存器的方式实现。数据通信负责通知两个系统真实需要通信的数据,数据通信通过写共享内存的方式实现。

4、度量任务

具体流程步骤如下:

1)检测通信模块是否有数据,若有则从系统通信模块获取到任务四元组信息。

2)获取到可信策略,根据可信策略对任务四元组进行即时度量,产生度量结果。

需要说明的是,不同的策略可能有不同的度量算法,从而产生不同的度量结果。一个任务四元组信息可有多个度量结果。

3)将每个度量结果与可信基准库中的基准值进行比较,产生多个判定结果。

4)判定结果为非法则产生告警和审计数据,并将可信策略中配置的处理方式写入系统通信模块。并通知plc计算子系统进行处理。

5、度量程序和数据

发明人考虑到,程序和数据段空间比较大,可能需要度量几m的数据,一次性度量耗时比较长,对于任务度量不能及时处理会造成系统通信的阻塞,因此在度量程序和数据时本发明对其进行了切段处理,每次只度量部分。同时由于程序和数据类型的可信策略可能比较多,同一周期需要处理的可信策略很多,造成任务度量不及时,因此,在本实施例中,限制一次度量的策略条目数,保证了策略的周期度量和任务度量及时性。

具体流程步骤如下:

1)检测通信模块是否有数据,若没有则度量程序和数据。

2)获取到可信策略,判定可信策略是否为程序和数据策略。

3)判定度量周期是否达到,若到达度量周期则根据可信策略对程序和数据进行周期度量,产生度量结果。若没有到达度量周期,则继续判定后续策略。超过可信限制条数则退出程序和数据判定,进行步骤1)

4)将当前度量结果写入待处理队列。

5)将度量结果出队,并与可信基准库中的基准值进行比较,产生判定结果。

可见,本方案提供了一种主动防御方式,进而提高信息安全防御。

在上述实施例的基础上,如图6所示,本实施例还进一步提供了一种plc动态度量方法,该方法应用于上述的plc计算子系统,包括步骤:

s61、创建任务,并获取所述任务的四元组参数;

s62、发送所述四元组参数至plc可信子系统,以使所述plc可信子系统基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令;

s63、获取所述任务控制指令,并基于所述任务控制指令执行相应的异常数据处理动作。

示意性的,结合图7,从plc计算子系统12侧,对该系统的处理流程进行说明,如下:

1、cpu、内存初始化,系统各模块初始化。

2、系统任务创建。

3、任务钩子函数获取到任务四元组信息。并将信息写入系统通信模块。

4、检测系统通信模块是否有数据,若存在则进行数据处理

5、根据plc可信子系统写入的判定结果和处理方式,对异常任务或程序、数据进行处理。

综上,结合本发明实施例提供的plc动态度量系统,本方案可以实现主动防御,进而提高信息安全防御。

在上述实施例的基础上,如图8所示,本发明实施例还提供了一种plc动态度量装置,应用于上述的plc可信子系统,包括:

第一获取模块81,用于获取可信策略以及可信基准库;

解析模块82,用于解析所述可信策略以及所述可信基准库,生成目标可信策略以及目标可信基准库;

生成模块83,用于基于所述目标可信策略对待检测数据进行可信计算,生成计算值;

比较模块84,用于比较所述计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

在上述实施例的基础上,本发明实施例提供的plc动态度量装置,还可以包括:

第二获取模块,用于获取plc计算子系统发送的任务的四元组参数;

判断模块,用于基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令。

除此,如图9所示,本发明实施例还提供了一种plc动态度量装置,应用于上述的plc计算子系统,包括:

第三获取模块91,用于创建任务,并获取所述任务的四元组参数;

发送模块92,用于发送所述四元组参数至plc可信子系统,以使所述plc可信子系统基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令;

第四获取模块93,用于获取所述任务控制指令,并基于所述任务控制指令执行相应的异常数据处理动作。

该装置的工作原理请参见上述方法实施例,在此不重复叙述。

上述plc动态度量装置包括处理器和存储器,上述第一获取模块、解析模块以及生成模块等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述plc动态度量方法。

本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述plc动态度量方法。

本发明实施例提供了一种设备,如图10所示,设备包括至少一个处理器101、以及与处理器连接的至少一个存储器102、总线1033;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的plc动态度量方法。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:

获取可信策略以及可信基准库;

解析所述可信策略以及所述可信基准库,生成目标可信策略以及目标可信基准库;

基于所述目标可信策略对待检测数据进行可信计算,生成计算值;

比较所述计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息。

可选的,还包括:

获取plc计算子系统发送的任务的四元组参数;

基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令。

可选的,包括:

创建任务,并获取所述任务的四元组参数;

发送所述四元组参数至plc可信子系统,以使所述plc可信子系统基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令;

获取所述任务控制指令,并基于所述任务控制指令执行相应的异常数据处理动作。

综上,本发明提供了一种plc动态度量方法、装置、系统、存储介质及电子设备,该plc动态度量系统包括:plc可信子系统以及plc计算子系统。其中,plc可信子系统包括可信策略管理模块以及动态度量模块。plc计算子系统包括任务创建模块以及系统任务钩子模块。具体的,可信策略管理模块用于获取并解析可信策略以及可信基准库,并发送目标可信策略以及目标可信基准库至所述动态度量模块。任务创建模块用于创建任务。系统任务钩子模块用于获取所述任务的四元组参数,并发送所述四元组参数至所述动态度量模块。动态度量模块用于基于所述目标可信策略对待检测数据进行可信计算,并比较计算生成的计算值与所述目标可信基准库的可信基准值是否相同,若不同,发送报警信息;基于所述四元组参数以及预置任务白名单,判断所述任务是否为可信任务,如果否,发送警报信息以及任务控制指令至所述plc计算子系统。可见,本方案提供了一种主动防御方式,进而提高信息安全防御。

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

在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

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

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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