一种工业控制系统恶意威胁的检测和补偿方法及电子设备

文档序号:31705295发布日期:2022-10-01 10:42阅读:142来源:国知局
一种工业控制系统恶意威胁的检测和补偿方法及电子设备

1.本发明涉及网络安全领域,具体涉及一种工业控制系统恶意威胁的检测和补偿方法及电子设备。


背景技术:

2.在过去几十年中,网络控制系统已广泛应用于工业控制领域,如智能电网等相关物理系统。然而,在工控系统中使用通信网络容易受到可能的恶意攻击,如拒绝服务攻击、虚假数据注入攻击、重放攻击等,如图2所示,工业控制系统包括控制中心、执行器、受控系统和传感器,传感器采集的测量输出向量通过通信网络发送给网络控制中心,网络控制中心生成控制信号通过通信网络发送给执行器,执行器控制受控系统进行相应操作。数据在通信网络中的传输过程中极易遭受恶意攻击,为此,检测和预防网络攻击等恶意威胁至关重要。对于许多实际系统,如电力系统和传感器网络,通常会配备状态检测器,以检测估计状态的偏差,并提供报警操作。加权最小二乘法就是一种基于状态检测器的攻击防御方案,通常借助加权最小二乘观测器构造测量残差,然后与预定阈值进行比较,以判断是否存在不良测量或恶意攻击。
3.传统的基于状态检测器的攻击防御方法依赖于预定阈值的选取,不恰当的阈值可能会大大降低该方法的有效性。并且工业控制系统可能同时受到多种攻击(dos攻击、虚假数据注入攻击等),补偿不同类型攻击的自适应策略尚未得到足够重视。


技术实现要素:

4.针对现有技术中的上述不足,本发明提供的一种工业控制系统恶意威胁的检测和补偿方法及电子设备能够针对多种攻击进行补偿,保证工控系统的稳定运行。
5.为了达到上述发明目的,本发明采用的技术方案为:
6.提供一种工业控制系统恶意威胁的检测和补偿方法,其包括以下步骤:
7.s1、系统建模:采用离散状态空间模型表示工业控制系统中的物理系统,得到系统模型;
8.s2、根据来自传感器的测量输出向量结合系统模型获取最优预测状态向量;
9.s3、根据历史数据训练得到误差阈值和危险次数阈值;
10.s4、判断t时间内测量状态向量与最优预测状态向量的误差是否大于误差阈值;若是则进入步骤s5;否则判定工业控制系统未受到恶意威胁;
11.s5、判断t时间内测量状态向量与最优预测状态向量的误差大于误差阈值的次数是否达到危险次数阈值,若是则进入步骤s6;否则判定工业控制系统未受到恶意威胁;
12.s6、获取并根据工业控制系统最后一次处于安全状态时的状态向量计算后续的状态向量和控制信号;
13.s7、根据步骤s6计算得到的后续控制信号进行工业控制系统控制,完成控制补偿。
14.进一步地,步骤s1中的系统模型表达式为:
[0015][0016]
其中x(k+1)表示k+1时刻的状态向量;a为状态转移矩阵;x(k)表示k时刻的状态向量;b为控制输入矩阵;u(k)表示k时刻的控制信号向量;f表示噪声驱动矩阵;w(k)表示k时刻的外部干扰向量;y(k)表示k时刻的测量输出向量;c表示观测矩阵;k表示控制增益矩阵。
[0017]
进一步地,步骤s2的具体方法包括以下子步骤:
[0018]
s2-1、根据公式:
[0019][0020]
获取工业控制系统在k时刻的初步预测状态向量其中x(k-1)为k-1时刻的状态向量;u(k-1)表示k-1时刻的控制信号向量;
[0021]
s2-2、根据公式:
[0022][0023]
获取k时刻的预测协方差其中p(k-1)为k-1时刻的协方差;(
·
)
t
表示矩阵的转置;q为噪声协方差矩阵;
[0024]
s2-3、根据公式:
[0025][0026]
获取k时刻滤波增益矩阵k(k);其中r表示观测噪声协方差矩阵;
[0027]
s2-4、根据公式:
[0028][0029]
获取k时刻的协方差p(k);
[0030]
s2-5、根据公式:
[0031][0032]
获取k时刻的最优预测状态向量
[0033]
进一步地,步骤s3的具体方法包括以下子步骤:
[0034]
s3-1、将正常状态下的工业控制系统中的测量状态向量作为初始训练集;
[0035]
s3-2、将初始训练集按时间t划分为n个样本,采用与步骤s2相同的方法,基于每个样本在上个时刻的测量输出向量获取该样本在当前时刻的预测最优状态向量
[0036]
s3-3、根据公式:
[0037][0038]
获取第n个样本在g时刻的最优预测状态向量与g时刻的测量状态向量的状态估计误差en;
[0039]
s3-4、获取所有状态估计误差的概率分布;
[0040]
s3-5、设置第一置信度,根据第一置信度在所有状态估计误差的概率分布中获取第一置信区间,将第一置信区间较大的端点值作为误差阈值ε;
[0041]
s3-6、将第n个样本的状态估计误差大于误差阈值ε的次数作为第n个样本处于危险状态的次数;
[0042]
s3-7、获取所有样本处于危险状态的次数的概率分布;
[0043]
s3-8、设置第二置信度,根据第二置信度在所有样本处于危险状态的次数的概率分布中获取第二置信区间,将第二置信区间较大的端点值作为危险次数阈值d(t)。
[0044]
进一步地,步骤s6的具体方法包括以下子步骤:
[0045]
s6-1、获取工业控制系统最后一次处于安全状态时的测量状态向量x(tr);其中tr为工业控制系统最后一次处于安全状态的时刻;
[0046]
s6-2、根据公式:
[0047][0048][0049]
获取h时刻的状态向量和控制信号u(h),其中h为检测到恶意威胁的时刻。
[0050]
提供一种电子设备,其包括:
[0051]
存储器,存储有可执行指令;以及
[0052]
处理器,被配置为执行存储器中可执行指令以实现工业控制系统恶意威胁的检测和补偿方法。
[0053]
本发明的有益效果为:
[0054]
1、本发明将观测量与系统物理模型结合对系统的状态进行最优估计,使用了不同的攻击检测方式,根据概率分布和置信区间设置了双重阈值来排除噪声和干扰的影响,并且能够根据系统模型和历史数据库对攻击做出补偿,对攻击容忍度更高,保证工业控制系统的稳定运行。
[0055]
2、本发明提供了一种训练阈值的方法,保证阈值有效性,而且能够针对多种攻击进行补偿,保证工控系统的稳定运行。
附图说明
[0056]
图1为本方法的流程示意图;
[0057]
图2为受到攻击时的工业控制系统架构示意图;
[0058]
图3为实施例中双区域互联电力系统负荷频率控制系统模型。
具体实施方式
[0059]
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
[0060]
如图1所示,该工业控制系统恶意威胁的检测和补偿方法包括以下步骤:
[0061]
s1、系统建模:采用离散状态空间模型表示工业控制系统中的物理系统,得到系统模型;
[0062]
s2、根据来自传感器的测量输出向量结合系统模型获取最优预测状态向量;
[0063]
s3、根据历史数据训练得到误差阈值和危险次数阈值;
[0064]
s4、判断t时间内测量状态向量与最优预测状态向量的误差是否大于误差阈值;若是则进入步骤s5;否则判定工业控制系统未受到恶意威胁;
[0065]
s5、判断t时间内测量状态向量与最优预测状态向量的误差大于误差阈值的次数是否达到危险次数阈值,若是则进入步骤s6;否则判定工业控制系统未受到恶意威胁;
[0066]
s6、获取并根据工业控制系统最后一次处于安全状态时的状态向量计算后续的状态向量和控制信号;
[0067]
s7、根据步骤s6计算得到的后续控制信号进行工业控制系统控制,完成控制补偿。
[0068]
步骤s1中的系统模型表达式为:
[0069][0070]
其中x(k+1)表示k+1时刻的状态向量;a为状态转移矩阵;x(k)表示k时刻的状态向量;b为控制输入矩阵;u(k)表示k时刻的控制信号向量;f表示噪声驱动矩阵;w(k)表示k时刻的外部干扰向量;y(k)表示k时刻的测量输出向量;c表示观测矩阵;k表示控制增益矩阵。
[0071]
步骤s2的具体方法包括以下子步骤:
[0072]
s2-1、根据公式:
[0073][0074]
获取工业控制系统在k时刻的初步预测状态向量其中x(k-1)为k-1时刻的状态向量;u(k-1)表示k-1时刻的控制信号向量;
[0075]
s2-2、根据公式:
[0076][0077]
获取k时刻的预测协方差其中p(k-1)为k-1时刻的协方差;(
·
)
t
表示矩阵的转置;q为噪声协方差矩阵;
[0078]
s2-3、根据公式:
[0079][0080]
获取k时刻滤波增益矩阵k(k);其中r表示观测噪声协方差矩阵;
[0081]
s2-4、根据公式:
[0082][0083]
获取k时刻的协方差p(k);
[0084]
s2-5、根据公式:
[0085][0086]
获取k时刻的最优预测状态向量
[0087]
步骤s3的具体方法包括以下子步骤:
[0088]
s3-1、将正常状态下的工业控制系统中的测量状态向量作为初始训练集;
[0089]
s3-2、将初始训练集按时间t划分为n个样本,采用与步骤s2相同的方法,基于每个样本在上个时刻的测量输出向量获取该样本在当前时刻的预测最优状态向量
[0090]
s3-3、根据公式:
[0091][0092]
获取第n个样本在g时刻的最优预测状态向量与g时刻的测量状态向量的状态估计误差en;
[0093]
s3-4、获取所有状态估计误差的概率分布;
[0094]
s3-5、设置第一置信度,根据第一置信度在所有状态估计误差的概率分布中获取第一置信区间,将第一置信区间较大的端点值作为误差阈值ε;
[0095]
s3-6、将第n个样本的状态估计误差大于误差阈值ε的次数作为第n个样本处于危险状态的次数;
[0096]
s3-7、获取所有样本处于危险状态的次数的概率分布;
[0097]
s3-8、设置第二置信度,根据第二置信度在所有样本处于危险状态的次数的概率分布中获取第二置信区间,将第二置信区间较大的端点值作为危险次数阈值d(t)。
[0098]
步骤s6的具体方法包括以下子步骤:
[0099]
s6-1、获取工业控制系统最后一次处于安全状态时的测量状态向量x(tr);其中tr为工业控制系统最后一次处于安全状态的时刻;
[0100]
s6-2、根据公式:
[0101][0102][0103]
获取h时刻的状态向量和控制信号u(h),其中h为检测到恶意威胁的时刻,h》tr。
[0104]
该电子设备包括:
[0105]
存储器,存储有可执行指令;以及
[0106]
处理器,被配置为执行存储器中可执行指令以实现工业控制系统恶意威胁的检测和补偿方法。
[0107]
在具体实施过程中,观测矩阵c可以取单位矩阵。当概率分布为正态分布时,第一置信区间可设置为[μ
e-3σe,μe+3σe],此时误差阈值ε=μe+3σe;其中μe和σe为所有样本对应的状态估计误差的均值和方差。第二置信区间可设置为[μ
n-3σn,μn+3σn],此时危险次数阈值d(t)=μn+3σn,其中μn和σn分别为n个样本处于危险状态的次数的均值和方差。
[0108]
在本发明的一个实施例中,双区域互联电力系统负荷频率控制系统模型如图3所
示。该系统的目的是将系统频率维持在标称值并且尽可能使控制区域之间的联络线交换功率最小,该模型区域i的动态状态可以通过如下公式表示:
[0109][0110]
即系统的动态模型为:
[0111][0112]
其中:
[0113]
xi(k)=[δf
i δp
mi δp
gi δp
tie,i
]
[0114][0115][0116]
[0117][0118]
x(k)为负荷频率控制系统的状态向量,y(k)为测量输出向量,u(k)为控制输入,δfi为系统的频率偏差,δp
gi
为调速器阀位置增量,δp
mi
为涡轮机功率增量,δp
tie,i
为联络线功率偏差,βi为频率偏置系数,ri为下垂系数,t
gi
为调速器时间常数,t
ti
为原动机时间常数,hi为系统惯性常数,di为负荷阻尼系数,t
ij
为联络线同步系数。
[0119]
针对上述系统的动态模型,在k时刻进行离散化后,可得到离散化的状态空间模型:
[0120][0121]
其中a'=e
at
,t为采样周期。
[0122]
双区域电力系统负荷频率控制参数如表1所示:
[0123][0124][0125]
采样周期为0.001s,区域时间t为1s。通过对正常运行系统采集的数据集进行阈值训练,本实例中随机误差符合正态分布,根据正态分布曲线,99.73%的误差处于[μ
e-3σe,μe+3σe]之间,所以设置误差阈值ε=μe+3σe,危险次数阈值d(t)=μn+3σn,得到ε=4.99,d(t)=30。在4~10s时对负荷频率控制系统注入虚假数据攻击,在第15s时对系统注入6s时延模拟拒绝服务攻击(拒绝服务攻击会让系统收不到测量数据,通过预测计算6s后也就是第21s的状态值计算第21s的控制信号来补偿),系统频率偏差和交换线联络功率在短暂波动后仍然维持稳定,表明工业控制系统正常运行。
[0126]
综上所述,本发明将观测量与系统物理模型结合对系统的状态进行最优估计,使用了不同的攻击检测方式,根据概率分布和置信区间设置了双重阈值来排除噪声和干扰的影响,并且能够根据系统模型和历史数据库对攻击做出补偿,对攻击容忍度更高,保证工业控制系统的稳定运行。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1