一种电力工控系统漏洞验证方法、装置、设备及存储介质与流程

摘要: 本技术属于系统漏洞检测领域,尤其涉及一种电力工控系统漏洞验证方法、装置、设备及存储介质。背景技术:1、随着电力工业控制系统成为国家关键信息基础设施,其面临的网络...
一种电力工控系统漏洞验证方法、装置、设备及存储介质与流程

本技术属于系统漏洞检测领域,尤其涉及一种电力工控系统漏洞验证方法、装置、设备及存储介质。

背景技术:

1、随着电力工业控制系统成为国家关键信息基础设施,其面临的网络安全威胁日益严峻。为确保电网安全稳定运行,对电力工控系统进行网络安全漏洞验证与测试变得至关重要。

2、现有技术主要包括纯数字仿真、纯物理测试以及自动化漏洞挖掘工具等方法,用于发现和验证电力工控系统中的安全漏洞。纯数字仿真方案通过建立工控系统的虚拟模型进行测试,具有成本低、可扩展性好的特点;纯物理测试方案则直接在真实的工控硬件设备上进行渗透测试,能真实反映攻击效果;而静态应用安全测试(sast)、动态应用安全测试(dast)及模糊测试等自动化工具则用于批量挖掘潜在漏洞。

3、然而,在具体实施过程中存在显著缺陷:首先,纯数字仿真方案对工控固件细节、协议时序、物理特性等刻画不足,导致模型失真,进而使得漏洞验证结果误报率高,且无法复现真实攻击对物理设备的影响。其次,纯物理测试方案虽能反映真实效果,但直接在真实设备上测试存在设备宕机、引发电网扰动的安全风险,且设备成本高、部署周期长,无法满足大规模漏洞核验的需求。此外,现有的自动化漏洞挖掘工具缺乏有效的漏洞验证闭环机制,无法量化评估网络攻击从信息空间渗透至物理电网的完整影响链路;同时,现有仿真架构缺乏统一的虚实交互标准,导致虚拟模型与物理设备数据不同步、行为不一致。

4、上述技术方案因模型失真导致漏洞验证结果误报率高,且无法对攻击的物理影响进行量化评估。

技术实现思路

1、本技术的目的在于克服上述现有技术中的缺陷,提供一种电力工控系统漏洞验证方法、装置、设备及存储介质。

2、本技术提供一种电力工控系统漏洞验证方法,包括:

3、构建固件级仿真模型,所述固件级仿真模型在虚拟化环境中运行物理工控设备的真实固件;

4、获取针对所述固件级仿真模型的攻击载荷;

5、在隔离测试环境中,将所述攻击载荷分别注入至所述固件级仿真模型以及对应的物理工控设备;

6、获取所述固件级仿真模型在所述攻击载荷下的第一行为数据,以及所述物理工控设备在所述攻击载荷下的第二行为数据;

7、比对所述第一行为数据与所述第二行为数据,确定行为偏差;

8、当存在所述行为偏差时,根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,所述硬件抽象组件为模拟物理芯片或外设功能的软件模块;

9、对定位出的所述硬件抽象组件进行修补。

10、可选地,获取所述固件级仿真模型在所述攻击载荷下的第一行为数据,以及所述物理工控设备在所述攻击载荷下的第二行为数据,包括:

11、在注入所述攻击载荷之前,向所述固件级仿真模型与所述物理工控设备注入相同的标准化测试信号序列;

12、基于所述标准化测试信号序列建立的状态,获取所述第一行为数据与所述第二行为数据。

13、可选地,比对所述第一行为数据与所述第二行为数据,确定行为偏差,包括:

14、比对所述第一行为数据与所述第二行为数据中所记录的指令执行时序序列,以确定时序类行为偏差。

15、可选地,比对所述第一行为数据与所述第二行为数据,确定行为偏差,包括:

16、比对所述第一行为数据与所述第二行为数据中所记录的对外设寄存器的读写状态序列,以确定状态类行为偏差。

17、可选地,根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,包括:

18、在所述行为偏差的属性为时序类行为偏差时,定位所述固件级仿真模型中的中央处理器cpu虚拟核或定时器虚拟模块。

19、可选地,根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,包括:

20、在所述行为偏差的属性为状态类行为偏差时,定位所述固件级仿真模型中与所述外设寄存器对应的外设接口控制器虚拟模块。

21、可选地,对定位出的所述硬件抽象组件进行修补,包括:

22、在所述硬件抽象组件为中央处理器cpu虚拟核时,调整所述cpu虚拟核的指令仿真周期参数;

23、在所述硬件抽象组件为定时器虚拟模块时,修正所述定时器虚拟模块的时基参数。

24、本技术还提供一种电力工控系统漏洞验证装置,包括:

25、模型模块,构建固件级仿真模型,所述固件级仿真模型在虚拟化环境中运行物理工控设备的真实固件;

26、载荷模块,获取针对所述固件级仿真模型的攻击载荷;

27、测试模块,在隔离测试环境中,将所述攻击载荷分别注入至所述固件级仿真模型以及对应的物理工控设备;

28、数据模块,获取所述固件级仿真模型在所述攻击载荷下的第一行为数据,以及所述物理工控设备在所述攻击载荷下的第二行为数据;

29、比对模块,比对所述第一行为数据与所述第二行为数据,确定行为偏差;

30、确定模块,当存在所述行为偏差时,根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,所述硬件抽象组件为模拟物理芯片或外设功能的软件模块;

31、优化模块,对定位出的所述硬件抽象组件进行修补。

32、可选地,所述数据模块获取所述固件级仿真模型在所述攻击载荷下的第一行为数据,以及所述物理工控设备在所述攻击载荷下的第二行为数据,包括:

33、在注入所述攻击载荷之前,向所述固件级仿真模型与所述物理工控设备注入相同的标准化测试信号序列;

34、基于所述标准化测试信号序列建立的状态,获取所述第一行为数据与所述第二行为数据。

35、可选地,所述比对模块比对所述第一行为数据与所述第二行为数据,确定行为偏差,包括:

36、比对所述第一行为数据与所述第二行为数据中所记录的指令执行时序序列,以确定时序类行为偏差。

37、可选地,所述比对模块比对所述第一行为数据与所述第二行为数据,确定行为偏差,包括:

38、比对所述第一行为数据与所述第二行为数据中所记录的对外设寄存器的读写状态序列,以确定状态类行为偏差。

39、可选地,所述确定模块根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,包括:

40、在所述行为偏差的属性为时序类行为偏差时,定位所述固件级仿真模型中的中央处理器cpu虚拟核或定时器虚拟模块。

41、可选地,所述确定模块根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,包括:

42、在所述行为偏差的属性为状态类行为偏差时,定位所述固件级仿真模型中与所述外设寄存器对应的外设接口控制器虚拟模块。

43、可选地,所述优化模块对定位出的所述硬件抽象组件进行修补,包括:

44、在所述硬件抽象组件为中央处理器cpu虚拟核时,调整所述cpu虚拟核的指令仿真周期参数;

45、在所述硬件抽象组件为定时器虚拟模块时,修正所述定时器虚拟模块的时基参数。

46、本技术还提供一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如上述的任一项方法。

47、本技术还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述的任一项方法。

48、本技术的有益效果是:

49、本技术提供一种电力工控系统漏洞验证方法,包括:构建固件级仿真模型,所述固件级仿真模型在虚拟化环境中运行物理工控设备的真实固件;获取针对所述固件级仿真模型的攻击载荷;在隔离测试环境中,将所述攻击载荷分别注入至所述固件级仿真模型以及对应的物理工控设备;获取所述固件级仿真模型在所述攻击载荷下的第一行为数据,以及所述物理工控设备在所述攻击载荷下的第二行为数据;比对所述第一行为数据与所述第二行为数据,确定行为偏差;当存在所述行为偏差时,根据所述行为偏差的属性,定位所述固件级仿真模型中导致所述行为偏差的至少一个硬件抽象组件,所述硬件抽象组件为模拟物理芯片或外设功能的软件模块;对定位出的所述硬件抽象组件进行修补。本技术通过构建固件级仿真模型并运行真实固件,获取并比对攻击载荷下模型与物理设备的行为数据,定位并修补导致行为偏差的硬件抽象组件,实现了虚拟模型对物理实体行为的精确校准,从而解决了因模型失真导致的验证结果误报率高的问题,提升了漏洞验证的保真度与可信度。