信息物理系统的攻击检测与安全状态估计
高洋1, 任望1,3, 吴润浦1, 王卫苹2, 伊胜伟1, 韩白静2    
1. 中国信息安全测评中心, 北京 100085;
2. 北京科技大学 计算机与通信工程学院, 北京 100083;
3. 四川大学 电子信息学院, 成都 610065
摘要:在工业4.0的时代背景下,信息物理系统(CPS)需要慎重考虑安全性、可控性问题。该文基于受到执行器攻击的信息物理系统模型,研究攻击检测与安全状态估计。针对攻击检测问题,设计了一种有限时间异常检测器,可确保系统受到的攻击在预设的有限时间之内被准确检测出来。在此基础上设计了一种观测器对系统的状态进行安全估计。理论分析表明,该观测器可以保证在检测到攻击时立即调整系统,确保系统达到一个安全稳定的状态。最后,通过实验仿真验证了所提方法的有效性。
关键词信息物理系统    异常检测    安全状态估计    检测器    观测器    
Attack detection and security state estimation of cyber-physical systems
GAO Yang1, REN Wang1,3, WU Renpu1, WANG Weiping2, YI Shengwei1, HAN Baijing2    
1. China Information Technology Security Evaluation Center, Beijing 100085, China;
2. School of Computer and Communication Engineering, University of Science and Technology Beijing, Beijing 100083, China;
3. College of Electronics and Information Engineering, Sichuan University, Chengdu 610065, China
Abstract: In the Industry 4.0 context, cyber-physical systems (CPS) need effective security and control capabilities. This study analyzes attack detection and security state estimation based on a cyber-physical system model attacked by an actuator. The attack detection uses a finite time attack detector that ensures that existing attacks can be accurately detected within a preset time limit. An observer is then designed to estimate the system state. A theoretical analysis shows that the observer ensures that the system can immediately adjust when attacked and that the system will reach a safe, stable state. Simulations verify the effectiveness of this method.
Key words: cyber-physical systems    abnormal state detection    safe state estimation    detector    observer    

在工业4.0的时代背景下,人们针对性地提出了信息物理系统(cyber-physical system, CPS),与一般的计算处理过程不同[1],其计算过程与物理过程通过网络紧密相连。在物理连接层面,CPS系统需要慎重考虑安全性、可控性问题。

针对信息物理系统的攻击检测问题,国内外许多学者进行了大量、深入的研究,提出了许多有效方法。Chien等[2]定义了对网络控制系统的欺骗和拒绝服务攻击。Li等[3]引入了针对静态估计量的错误数据注入攻击。Teixeira等[4]研究了对监控和数据采集系统的秘密欺骗攻击。Mo等[5]讨论了重放攻击对控制系统的影响。此外,许多学者针对欺骗攻击、虚假数据攻击等多种类别的具体攻击检测也分别进行了研究[6-8],虽然以上研究都实现了攻击检测,不过这些工作对攻击检测的可行性条件,特别是对一般攻击的检测可行性条件研究还不充分。Ao等[9]针对一类含有传感器攻击的线性时不变信息物理系统,实现了有限时间的攻击检测。针对信息物理系统这种复杂系统,研究全面可行的攻击检测方法具有重大的意义。

在面临恶意攻击时能及时准确地检测出异常是保障系统安全的关键,但与此同时,系统安全状态重构是消除攻击影响的重要手段。安全状态估计是从一组有噪声或被破坏的测量值中估计动态系统状态。目前,安全状态估计的技术已经逐步发展,Chong等[10]研究了线性系统在对抗性攻击下的可观测性。Lu[11]研究了稀疏致动器和传感器攻击下信息物理系统的安全状态估计问题,给出了状态可观测性的一个充要条件。Shoukry等[12]利用形式化方法中的技术,提出了一种能有效地处理状态估计问题组合复杂度的完备算法。Wu等[13]考虑了对传感器的恶意攻击和未知输入。文[14-16]针对受到攻击的信息物理系统从多个方面设计弹性状态估计器,实现了对系统的弹性状态估计。现有的工作大部分都是针对线性信息物理系统,且对其安全状态估计还不全面,急需深入研究。

本文基于文[9]提出了一种有限时间检测器来检测执行器攻击下系统的状态,在此基础上设计了一种观测器对系统的状态进行安全估计。

1 系统建模与分析 1.1 信息物理系统建模

信息物理系统是指同时包含物理进程和信息传输处理进程,且二者深度耦合相互密切协调的系统,其模型包括2部分: 一部分是物理进程模型,可以用控制系统理论中常用的微分或差分方程组描述,比如线性系统的状态空间模型;另一部分是信息传输处理进程模型,可以用信息论中编码、解码、加密和解密过程进行描述。对于受到攻击的信息物理系统,可以将作用到物理进程的外部攻击视作一种未知输入,将作用到信息网络的攻击视作对传输过程的破坏及对传输信息的恶意篡改。

根据以上描述,受到执行器攻击的信息物理系统可建模为以下线性动态系统:

$ \left\{\begin{array}{l} \dot{\boldsymbol{x}}(t)=\boldsymbol{A} \boldsymbol{x}(t)+\boldsymbol{B} \boldsymbol{u}(t)+\boldsymbol{D} \boldsymbol{v}(t), \\ \boldsymbol{y}(t)=\boldsymbol{C} \boldsymbol{x}(t). \end{array}\right. $ (1)

其中: xRn为系统状态,uRp为已知输入(如控制输入),vRq为未知攻击,yRm为可测量的系统输出,npqm为维度,ABCD为已知的常数矩阵。设m=rankCq=rankD,需满足mq

1.2 攻击检测器及有效性证明

针对式(1)提出检测攻击的有限时间检测器:

$ \left\{\begin{array}{l} \dot{\boldsymbol{z}}(t)=\boldsymbol{F} \boldsymbol{z}(t)+\boldsymbol{H B u}(t)+\boldsymbol{L} \boldsymbol{y}(t) ,\\ \hat{\boldsymbol{x}}(t)=\boldsymbol{M}\left[\boldsymbol{z}(t)-\boldsymbol{F}^{\tau} \boldsymbol{z}(t-\tau)\right]. \end{array}\right. $ (2)

其中${{\boldsymbol{z}}{\rm{ }}\left( {t + 1} \right) = \left[ {\begin{array}{*{20}{c}}{{z_1}\left( t \right)}\\{{z_2}\left( t \right)}\end{array}} \right]}$,观测器状态z1(t), z2(t)∈ Rn$\mathit{\boldsymbol{\hat x}}$是系统状态的估计值,${\mathit{\boldsymbol{H}} = \left[{\begin{array}{*{20}{c}}{{\mathit{\boldsymbol{I}}_{n \times n}}}\\{{\mathit{\boldsymbol{I}}_{n \times n}}}\end{array}} \right]}$In×n是单位矩阵,${\mathit{\boldsymbol{F}} = \left[ {\begin{array}{*{20}{c}}{{\mathit{\boldsymbol{F}}_1}}&{\bf{0}}\\{\bf{0}}&{{\mathit{\boldsymbol{F}}_2}}\end{array}} \right], \mathit{\boldsymbol{L}} = \left[ {\begin{array}{*{20}{c}}{{\mathit{\boldsymbol{L}}_1}}\\{{\mathit{\boldsymbol{L}}_2}}\end{array}} \right]}$,且有严格稳定矩阵${\mathit{\boldsymbol{F}}_j} = \mathit{\boldsymbol{A}} - {\mathit{\boldsymbol{L}}_j}\mathit{\boldsymbol{C}}\left( {j = 1, 2} \right)$τ为一整数,使得下式成立:

$ \operatorname{det}\left[\begin{array}{ll} \boldsymbol{H} & \boldsymbol{F}^{\tau} \boldsymbol{H} \end{array}\right] \neq 0. $ (3)

$\mathit{\boldsymbol{M}} = [{\mathit{\boldsymbol{I}}_{n \times n}}\;\;\;\;{{\bf{0}}_{n \times n}}]{[\mathit{\boldsymbol{H}}\;\;\;\;{\mathit{\boldsymbol{F}}^\tau }\mathit{\boldsymbol{H}}]^{ - 1}}$,有以下定理及其有效性证明。

定理1   对式(1)的系统和式(2)的检测器,如果攻击信号Dv (t)=0且tτ,能够得到准确的系统状态即$\mathit{\boldsymbol{x}}(t) = \mathit{\boldsymbol{\hat x}}(t)$;如果攻击信号Dv (t)≠0,当0≤tτ时,攻击检测器会在有限时间内检测到存在的攻击,并触发攻击检测事件;特别地,如果Dv (t)在[0, τ]为0,而在之后的某些时刻不为0,那么攻击检测器可在Dv (t)不为0时立刻将其检测出来。

证明    设估计误差为${{\mathit{\boldsymbol{e}}_z}\left( t \right) = \left[ {\begin{array}{*{20}{c}}{{\mathit{\boldsymbol{e}}_{z, 1}}\left( t \right)}\\{{\mathit{\boldsymbol{e}}_{z, 2}}\left( t \right)}\end{array}} \right], {\mathit{\boldsymbol{e}}_{z, j}}\left( t \right) = \mathit{\boldsymbol{x}}\left( t \right) - {\mathit{\boldsymbol{z}}_j}\left( t \right), j = 1, 2}$

1) 若时刻t系统未受攻击即Dv (t)=0,由式(1)和(2)可得误差的动态特性:

$ \begin{gathered} \dot{\boldsymbol{e}}_{z}(t)=\dot{\boldsymbol{z}}(t)-\boldsymbol{H} \dot{\boldsymbol{x}}(t)= \\ \boldsymbol{F z}(t)+\boldsymbol{H B u}(t)+\boldsymbol{L} \boldsymbol{y}(t)-\boldsymbol{H} \boldsymbol{A} \boldsymbol{x}(t)-\boldsymbol{H B u}(t)= \\ \boldsymbol{F z}(t)+\boldsymbol{L C x}(t)-\boldsymbol{H} \boldsymbol{A} \boldsymbol{x}(t)= \\ \boldsymbol{F z}(t)-\boldsymbol{F x}(t)=\boldsymbol{F} \boldsymbol{e}_{z}(t). \end{gathered} $ (4)

显然,若将初始误差记为ez(0),那么误差动态特性如下:

$ \boldsymbol{e}_{z}(t)=\boldsymbol{F}^{t} \boldsymbol{e}_{z}(0)=\boldsymbol{F}^{\tau} \boldsymbol{e}_{z}(t-\tau) . $ (5)

结合式(5)重写式(4),可得

$ \boldsymbol{z}(t)-\boldsymbol{H} \boldsymbol{x}(t)=\boldsymbol{F}^{\tau} \boldsymbol{z}(t-\tau)-\boldsymbol{F}^{\tau} \boldsymbol{H} \boldsymbol{x}(t-\tau). $ (6)

又有

$ \boldsymbol{M}\left[\begin{array}{ll} \boldsymbol{H} & \boldsymbol{F}^{\tau} \boldsymbol{H} \end{array}\right]=\left[\begin{array}{ll} \boldsymbol{I}_{n \times n} & {\bf{0}}_{n \times n} \end{array}\right]. $ (7)

对式(6)两端乘M,可得

$ \boldsymbol{x}(t)=\boldsymbol{M}\left[\boldsymbol{z}(t)-\boldsymbol{F}^{\tau} \boldsymbol{z}(t-\tau)\right]=\hat{\boldsymbol{x}}(t). $ (8)

由此可得

$ \boldsymbol{e}_{y}(t)=\boldsymbol{y}(t)-\boldsymbol{C} \hat{\boldsymbol{x}}(t)=\boldsymbol{C}[\boldsymbol{x}(t)-\hat{\boldsymbol{x}}(t)]=0, $

Dv (t)=0且tτ时有${\mathit{\boldsymbol{x}}(t) = \mathit{\boldsymbol{\hat x}}(t)}$

2) 若时刻t系统受到了攻击即Dv (t)≠0,由式(1)和(2)可得误差的动态特性:

$ \begin{gathered} \dot{\boldsymbol{e}}_{z}(t)=\dot{\boldsymbol{z}}(t)-\boldsymbol{H} \dot{\boldsymbol{x}}(t)= \\ \boldsymbol{F} \boldsymbol{z}(t)+\boldsymbol{H B} \boldsymbol{u}(t)+\boldsymbol{L y}(t)- \\ \boldsymbol{H} \boldsymbol{A} \boldsymbol{x}(t)-\boldsymbol{H B} \boldsymbol{u}(t)-\boldsymbol{H D} \boldsymbol{v}(t)=\\ \boldsymbol{F z}(t)+\boldsymbol{L C} \boldsymbol{x}(t)-\boldsymbol{H} \boldsymbol{A} \boldsymbol{x}(t)-\boldsymbol{H D} \boldsymbol{v}(t)= \\ \boldsymbol{F z}(t)-\boldsymbol{F} \boldsymbol{x}(t)-\boldsymbol{H D} \boldsymbol{v}(t)= \\ \boldsymbol{F e}_{z}(t)-\boldsymbol{H D v}(t). \end{gathered} $ (9)

Dv (t)≠0时,显然有

$ \boldsymbol{e}_{z}(t) \neq \boldsymbol{F}^{t} \boldsymbol{e}_{z}(0) \neq \boldsymbol{F}^{\tau} \boldsymbol{e}_{z}(t-\tau). $ (10)

${\mathit{\boldsymbol{x}}(t) = \mathit{\boldsymbol{\hat x}}(t)}$,则

$ \boldsymbol{e}_{y}(t)=\boldsymbol{y}(t)-\boldsymbol{C} \hat{\boldsymbol{x}}(t)=\boldsymbol{C}[\boldsymbol{x}(t)-\hat{\boldsymbol{x}}(t)] \neq 0, $

所以在有限时间τ内(0≤tτ),攻击检测器会检测到存在的攻击并触发警报:

$ \text { Attack }= \begin{cases}\text { False, } & \boldsymbol{e}_{y}(t)=0; \\ \text { True, } & \boldsymbol{e}_{y}(t) \neq 0.\end{cases} $ (11)

3) 若系统遭到攻击的时刻taτ, 有

$ \left\{\begin{array}{l} \boldsymbol{D} \boldsymbol{v}(t)=0, \quad t \leqslant t_{a}; \\ \boldsymbol{D} \boldsymbol{v}(t) \neq 0, \quad t>t_{a}. \end{array}\right. $ (12)

τtta时,显然${\mathit{\boldsymbol{x}}(t) = \mathit{\boldsymbol{\hat x}}(t)}$;当tta时,有:

$ \begin{gathered} \dot{\hat{\boldsymbol{x}}}\left(t_{a}\right)=\boldsymbol{F}_{1} \boldsymbol{x}\left(t_{a}\right)+\boldsymbol{B u}\left(t_{a}\right)+\boldsymbol{L y}\left(t_{a}\right)= \\ \boldsymbol{A} \boldsymbol{x}\left(t_{a}\right)+\boldsymbol{B} \boldsymbol{u}\left(t_{a}\right)=\dot{\boldsymbol{x}}\left(t_{a}\right)-\boldsymbol{D} \boldsymbol{v}\left(t_{a}\right). \end{gathered} $ (13)

结合式(1)可得$\begin{array}{*{20}{l}}{{\mathit{\boldsymbol{e}}_y}({t_a}) = \mathit{\boldsymbol{C}}[\mathit{\boldsymbol{x}}({t_a}){\rm{ - }}\mathit{\boldsymbol{\hat x}}({t_a})] \ne 0}\end{array}$,显然在时刻ta,攻击检测器会立刻检测到受到的攻击并触发警报。定理得证。

1.3 安全状态估计理论及有效性证明

针对式(1)为了更好地设计观测器,根据数学矩阵原理,将式(1)进行如式(14)所示变换,进而得到式(15)的变形系统。

$ \boldsymbol{x}=\boldsymbol{T} \overline{\boldsymbol{x}}. $ (14)

其中T=[N     D], NR n×(n-q)

$ \begin{array}{l} \left\{\begin{array}{l} \overline{\boldsymbol{x}}(t)=\overline{\boldsymbol{A}} \overline{\boldsymbol{x}}(t)+\overline{\boldsymbol{B}} \boldsymbol{u}(t)+\overline{\boldsymbol{D}} \boldsymbol{v}(t), \\ \boldsymbol{y}(t)=\overline{\boldsymbol{C}} \overline{\boldsymbol{x}}(t), \end{array}\right. \\ t \geqslant t_{0}. \end{array} $ (15)

其中${\boldsymbol{\bar x}} = {\left[ {{{{\boldsymbol{\bar x}}}_1}\;\;\;\;{{{\boldsymbol{\bar x}}}_2}} \right]^{\rm{T}}}, {{\boldsymbol{\bar x}}_1} \in {{\bf{R}}^{n - q}}, {{\boldsymbol{\bar x}}_2} \in {{\bf{R}}^q}$, 系统参数为:

$ \overline{\boldsymbol{A}}=\boldsymbol{T}^{-1} \boldsymbol{A} \boldsymbol{T}=\left[\begin{array}{cc} \overline{\boldsymbol{A}}_{11} & \overline{\boldsymbol{A}}_{12} \\ \overline{\boldsymbol{A}}_{21} & \overline{\boldsymbol{A}}_{22} \end{array}\right], $
$ \overline{\boldsymbol{B}}=\boldsymbol{T}^{-1} \boldsymbol{B}=\left[\begin{array}{c} \overline{\boldsymbol{B}}_{1} \\ \overline{\boldsymbol{B}}_{2} \end{array}\right], $
$ \overline{\boldsymbol{D}}=\boldsymbol{T}^{-1} \boldsymbol{D}=\left[\begin{array}{c} \bf{0} \\ \boldsymbol{I}_{q} \end{array}\right], $
$ \overline{\boldsymbol{C}}=\boldsymbol{C} \boldsymbol{T}=\left[\begin{array}{ll} \boldsymbol{C} \boldsymbol{N} & \boldsymbol{C} \boldsymbol{D}]. \end{array}\right. $

经过式(14)的变形,只有系统状态x2与攻击扰动v直接相关。假设x2可以被系统输出值y所表示,而y又能够被直接测量得出,那么对受攻击的信息物理系统的观测器就可以实现。为此,在矩阵CD具有全列秩的基础上进行如式(16)的状态变换:

$ \overline{\boldsymbol{y}}=\left[\begin{array}{ll} \overline{\boldsymbol{y}}_{1} & \overline{\boldsymbol{y}}_{2} \end{array}\right]^{\mathrm{T}}=\boldsymbol{U}^{-1} y, $ (16)
$ \boldsymbol{U}=\left[\begin{array}{ll} \boldsymbol{C} \boldsymbol{D} & \boldsymbol{Q} \end{array}\right], \quad \boldsymbol{U}^{-1}=\left[\begin{array}{l} \boldsymbol{U}_{1} \\ \boldsymbol{U}_{2} \end{array}\right] . $

其中QR m×(m-q), U1R q×m, U2R (m-qm,则式(16)可改写为

$ \left\{\begin{array}{l} \overline{\boldsymbol{y}}_{1}=\boldsymbol{U}_{1} \boldsymbol{y}=\boldsymbol{U}_{1} \boldsymbol{C} \boldsymbol{N} \overline{\boldsymbol{x}}_{1}+\overline{\boldsymbol{x}}_{2}, \\ \overline{\boldsymbol{y}}_{2}=\boldsymbol{U}_{2} \boldsymbol{y}=\boldsymbol{U}_{2} \boldsymbol{C} \boldsymbol{N} \overline{\boldsymbol{x}}_{1} . \end{array}\right. $ (17)

由式(17)得x2=U1y-U2CNx1,用其替换x2,在U变换下,由式(15)可得

$ \left\{\begin{array}{l} \dot{\overline{\boldsymbol{x}}}_{1}(\boldsymbol{t})=\widetilde{\boldsymbol{A}}_{1} \overline{\boldsymbol{x}}_{1}(t)+\overline{\boldsymbol{B}}_{1} \boldsymbol{u}(t)+\boldsymbol{E}_{1} \boldsymbol{y}(t), \\ \overline{\boldsymbol{y}}_{2}(\boldsymbol{t})=\widetilde{\boldsymbol{C}}_{1} \overline{\boldsymbol{x}}_{1}(t). \end{array}\right. $ (18)

其中: ${\mathit{\boldsymbol{\tilde A}}_1} = {\mathit{\boldsymbol{\bar A}}_{11}} - {\mathit{\boldsymbol{\bar A}}_{12}}{\mathit{\boldsymbol{U}}_1}\mathit{\boldsymbol{CN}}, {\mathit{\boldsymbol{E}}_1} = {\mathit{\boldsymbol{\bar A}}_{12}}{\mathit{\boldsymbol{U}}_1}, {\mathit{\boldsymbol{\tilde C}}_1} = {\mathit{\boldsymbol{U}}_2}\mathit{\boldsymbol{CN}}, t \ge {t_0}$

对于式(18),设计如下观测器:

$ \dot{\hat{\boldsymbol{x}}}(t)=\boldsymbol{T}\left[\begin{array}{c} \hat{\overline{\boldsymbol{x}}}_{1}(t) \\ \boldsymbol{U}_{1} \boldsymbol{y}(t)-\boldsymbol{U}_{1} \boldsymbol{C} \boldsymbol{N}(t) \hat{\overline{\boldsymbol{x}}}_{1}(t) \end{array}\right], $ (19)
$ \dot{\hat{\boldsymbol{x}}}_{1}(t)=\left(\widetilde{\boldsymbol{A}}_{1}-\boldsymbol{L} \widetilde{\boldsymbol{C}}_{1}\right) \dot{\overline{\boldsymbol{x}}}_{1}(t)+\overline{\boldsymbol{B}}_{1} \boldsymbol{u}(t)+\boldsymbol{L}^{*} \boldsymbol{y}(t). $

${\forall_t} \ge {t_0}, {\mathit{\boldsymbol{\hat {\bar x}}}_1}$x的估计值,$\mathit{\boldsymbol{\hat x}}$x的估计值,L为观测器增益,可以通过极点配置得出。此时估计误差的动态特性为

$ \dot{\overline{\boldsymbol{e}}}_{1}(t)=\left(\widetilde{\boldsymbol{A}}_{1}-\boldsymbol{L} \widetilde{\boldsymbol{C}}_{1}\right) \overline{\boldsymbol{e}}_{1}(t). $

其中${\mathit{\boldsymbol{\bar e}}_1} = {\mathit{\boldsymbol{\hat {\bar x}}}_1} - {\mathit{\boldsymbol{\bar x}}_1}, \mathit{\boldsymbol{L}}* = \mathit{\boldsymbol{L}}{\mathit{\boldsymbol{U}}_2} + {\mathit{\boldsymbol{E}}_1}$,式(1)的估计值由变换$\mathit{\boldsymbol{\hat x = T\hat {\bar x}}}$得到,其中${\mathit{\boldsymbol{\hat {\bar x}}}_2}$${\mathit{\boldsymbol{\hat {\bar x}}}_1}$y得到。

定理2   对所有初始条件x0和完全未知的攻击v,当且仅当以下条件满足时,状态观测器式(19)存在并且可观。观测器能够及时估计出系统的真实状态,即$\mathit{\boldsymbol{\hat x = x}}$

观测器存在条件为:

1) rankCD =rankD,

2) ${{\rm{rank}}\left[ {\begin{array}{*{20}{c}} {s{\mathit{\boldsymbol{I}}_{n - q}} - {{\mathit{\boldsymbol{\bar A}}}_{11}}}&{ - {{\mathit{\boldsymbol{\bar A}}}_{12}}}\\ {\mathit{\boldsymbol{CN}}}&{\mathit{\boldsymbol{CD}}} \end{array}} \right] = n, \;\;\forall s \in {\bf{C}}, {\rm{Re}}\left( s \right) \ge 0}$.

观测器可观条件为:

如果rankCD =rankD =q,以下表述等效。

1) 系统参数对${\left\{ {{{\mathit{\boldsymbol{\tilde A}}}_1}、{{\mathit{\boldsymbol{\tilde C}}}_1}} \right\}}$可检测;

2) 对${{\forall _s} \in {\bf{C}}, {\rm{Re}}\left( s \right) \ge 0\left( {{\forall _s} \in {\bf{C}}} \right)}$,有

$ \operatorname{rank}\left[\begin{array}{cc} s \boldsymbol{I}_{n-q}-\overline{\boldsymbol{A}}_{11} & -\overline{\boldsymbol{A}}_{12} \\ \boldsymbol{C} \boldsymbol{N} & \boldsymbol{C} \boldsymbol{D} \end{array}\right]=n; $

3) 对${{\forall _s} \in {\bf{C}}, {\rm{Re}}\left( s \right) \ge 0\left( {{\forall _s} \in {\bf{C}}} \right)}$,有

$ \operatorname{rank}\left[\begin{array}{cc} s \boldsymbol{I}_{n}-\boldsymbol{A} & \boldsymbol{D} \\ \boldsymbol{C} & {\bf{0}} \end{array}\right]=n+q. $

证明:

1) 观测器的存在性证明。

存在条件1对式(19)的观测器的必要性已经有诸多证明[17-18]。本部分证明存在条件1和式(20)成立的情况下,存在条件2成立。

$ \operatorname{rank}\left[\begin{array}{c} s\boldsymbol{I}_{n-q}-\widetilde{\boldsymbol{A}}_{1} \\ \widetilde{\boldsymbol{C}}_{1} \end{array}\right]=n-q, \quad \forall s \in {\bf{C}}, \operatorname{Re}(s) \geqslant 0. $ (20)

$ \boldsymbol{S}=\left[\begin{array}{cc} \boldsymbol{I}_{n-q} & {\bf{0}} \\ {\bf{0}} & \boldsymbol{U}^{-1} \end{array}\right], \quad \boldsymbol{P}=\left[\begin{array}{cc} \boldsymbol{I}_{n-q} & {\bf{0} }\\ -\boldsymbol{U}_{1} \boldsymbol{C} \boldsymbol{N} & \boldsymbol{I}_{q} \end{array}\right], $

那么有等式:

$ \begin{gathered} \operatorname{rank} \boldsymbol{S}\left[\begin{array}{cc} s \boldsymbol{I}_{n-q}-\overline{\boldsymbol{A}}_{11} & -\overline{\boldsymbol{A}}_{12} \\ \boldsymbol{C} \boldsymbol{N} & \boldsymbol{C} \boldsymbol{D} \end{array}\right] \boldsymbol{P}= \\ \operatorname{rank}\left[\begin{array}{cc} s \boldsymbol{I}_{n-q}-\widetilde{\boldsymbol{A}}_{1} & -\overline{\boldsymbol{A}}_{12} \\ {\bf{0}} & \boldsymbol{I}_{q} \\ \widetilde{\boldsymbol{C}}_{1} & {\bf{0}} \end{array}\right]=q+\operatorname{rank}\left[\begin{array}{c} s \boldsymbol{I}_{n-q}-\widetilde{\boldsymbol{A}}_{1} \\ \widetilde{\boldsymbol{C}}_{1} \end{array}\right] . \end{gathered} $

对于带有攻击(未知输入)的线性系统,观测器设计通常采用(或隐式采用)存在条件1。很明显,存在条件1意味着直接与攻击耦合的部分必须从y的测量值中获得。

定理1同时给出了式(1)的系统和式(18)的描述符形式的存在条件,这个定理是关于广义系统观测器设计一般结果的一个特例[17]。对于式(1)的系统,其观测器存在条件为对${{\forall _s} \in {\bf{C}}, {\rm{Re}}\left( s \right) \ge 0}$,有${{\rm{rank}}\left[ {\begin{array}{*{20}{c}}\mathit{\boldsymbol{E}}&\mathit{\boldsymbol{A}}\\{\boldsymbol{0}}&\mathit{\boldsymbol{E}}\\{\boldsymbol{0}}&\mathit{\boldsymbol{C}}\end{array}} \right] = n + {\rm{rank}}\mathit{\boldsymbol{E}}{\rm{且rank}}\left[ {\begin{array}{*{20}{c}}{s\mathit{\boldsymbol{E}} - \mathit{\boldsymbol{A}}}\\\mathit{\boldsymbol{C}}\end{array}} \right] = n}$

2) 观测器的可观性证明。

观测器的可观性只需证明系统参数${\mathit{\boldsymbol{\tilde A}}_1}、{\mathit{\boldsymbol{\tilde C}}_1}$构成的能观性矩阵满秩,则观测器有效并且可观。由存在性证明过程明显可知可观条件1和2的正确性,此处只用证明可观条件1和3的等效性。

$\mathit{\boldsymbol{Q}} = {\rm{diag}}({\mathit{\boldsymbol{T}}^{ - 1}}, {\mathit{\boldsymbol{U}}^{ - 1}})$${\mathit{\boldsymbol{V}} = \left[ {\begin{array}{*{20}{c}} {\mathit{\boldsymbol{TP}}}&{\bf{0}}\\ {{\mathit{\boldsymbol{V}}_1}\mathit{\boldsymbol{P}}}&{{\mathit{\boldsymbol{I}}_q}} \end{array}} \right]}$,其中,${{\mathit{\boldsymbol{V}}_1} = [ - {{\mathit{\boldsymbol{\tilde A}}}_{21}}\;\;\;\;s{\mathit{\boldsymbol{I}}_q} - {{\mathit{\boldsymbol{\tilde A}}}_{22}}], {{\mathit{\boldsymbol{\tilde A}}}_{21}}、{{\mathit{\boldsymbol{\tilde A}}}_{22}}、\mathit{\boldsymbol{T}}、\mathit{\boldsymbol{N}}、\mathit{\boldsymbol{U}}、{\mathit{\boldsymbol{U}}_1}}$在式(15)中已定义。根据定理1,易知QV是非奇异矩阵,其中P为一个任意合适维度的矩阵。那么:

$ \begin{gathered} \operatorname{rank} \boldsymbol{Q}\left[\begin{array}{cc} s \boldsymbol{I}_{n}-\boldsymbol{A} & \boldsymbol{D} \\ \boldsymbol{C} & {\bf{0}} \end{array}\right] \boldsymbol{V}= \\ \operatorname{rank} {\left[\begin{array}{ccc} s \boldsymbol{I}_{n-q}-\widetilde{\boldsymbol{A}}_{1} & -\overline{\boldsymbol{A}}_{12} & {\bf{0}} \\ {\bf{0}} & \bf{0} & \boldsymbol{I}_{q} \\ {\bf{0}} & \boldsymbol{I}_{q} & {\bf{0}} \\ \widetilde{\boldsymbol{C}}_{1} & {\bf{0}} & \bf{0} \end{array}\right]=} \\ \operatorname{rank}\left[\begin{array}{c} s \boldsymbol{I}_{n-q}-\widetilde{\boldsymbol{A}}_{1} \\ \widetilde{\boldsymbol{C}}_{1} \end{array}\right]+2 q . \end{gathered} $

则可以得到${{\rm{rank}}\left[ {\begin{array}{*{20}{c}} {s{\mathit{\boldsymbol{I}}_{n - q}} - {{\mathit{\boldsymbol{\tilde A}}}_1}}\\ {{{\mathit{\boldsymbol{\tilde C}}}_1}} \end{array}} \right] = n - q}$,最终可以得出系统参数${{{\mathit{\boldsymbol{\tilde A}}}_1}、{{\mathit{\boldsymbol{\tilde C}}}_1}}$构成的能观性矩阵满秩,系统是可观的。由存在性证明可知系统参数${\left\{ {{{\mathit{\boldsymbol{\tilde A}}}_1}、{{\mathit{\boldsymbol{\tilde C}}}_1}} \right\}}$可观测,所以可观条件1和3等效。可观性证明揭示了存在性证明中的观测器存在条件等效于文[18]所举实例。

2 仿真示例

为了验证本文提出方案的有效性,本文将其应用于文[19]中不同类型传感器攻击下的无人地面车辆(UGV)。该系统模型为

$ \begin{array}{c} \left\{\begin{aligned} &\dot{\boldsymbol{x}}(t)=\left[\begin{array}{rrr} -2 & -2 & 0 \\ 0 & 0 & 1 \\ 0 & -3 & -4 \end{array}\right] \boldsymbol{x}(t)+\left[\begin{array}{l} 1 \\ 0 \\ 0 \end{array}\right] \boldsymbol{u}(t)+ \\ &\ \ \ \ \ \ \ \ \ \ \ \ {\left[\begin{array}{r} 1 \\ -1 \\ 5 \end{array}\right] \boldsymbol{v}(t),} \\ &\boldsymbol{y}(t)=\left[\begin{array}{ll} 1 & 0 & 1 \\ 0 & 1 & 0 \end{array}\right] \boldsymbol{x}(t), \\ \end{aligned}\right.\\ \qquad t\geqslant t_{0}. \end{array} $

对应式(2)的系数参数有:

$ \boldsymbol{A}=\left[\begin{array}{rrr} -2 & -2 & 0 \\ 0 & 0 & 1 \\ 0 & -3 & -4 \end{array}\right], \quad \boldsymbol{B}=\left[\begin{array}{l} 1 \\ 0 \\ 0 \end{array}\right], $
$ \boldsymbol{C}=\left[\begin{array}{lll} 1 & 0 & 1 \\ 0 & 1 & 0 \end{array}\right], \quad \boldsymbol{D}=\left[\begin{array}{r} 1 \\ -1 \\ 5 \end{array}\right]. $

参照文[15]中用正弦函数v (t)=A sin(ωπx+φ)+k模拟未知的攻击。

取参数A=20,φ=0,ω=10,k=2,即施加在执行器上的攻击为v (t)=20sin(10πx)+2。选择系统的收敛时间τ=0.5 s,系统维度为3,配置极点为[-4.256 3, -27.410 4]和[-4.256 3, -27.410 4]进行仿真。实验结果如图 123所示。图 1是系统检测效果图,当系统存在攻击的情况时,检测器在设定的时间内触发检测逻辑,检测结果由0变为1。图 2是系统安全状态估计图,x1x2x3是系统状态信息的3个维度。当t=0.5 s也就是τ=0.5 s时,系统检测到攻击存在,观测器迅速调整,及时估计出系统的安全状态。图 3是系统估计状态与真实状态的误差图,error1、error2、error3是系统估计状态误差的3个分量,误差几乎为0,从而验证了观测器的有效性。

图 1 触发报警事件的轨迹

图 2 (网络版彩图)系统状态对比图

图 3 系统状态误差图

文[16, 19]提出的有限时间安全估计算法是基于非观测器方法,利用时刻0到时刻N的测量信号,估计得到时刻0的状态值,而时刻N及以后的状态值还需要用其他方法获得;本节提出的基于观测器的有限时间状态估计可以直接获得时刻N及以后的状态值。

本文提出的状态观测器能够在有限时间内确保实现状态和系统初始状态无关,相比文[15]更具有实际价值。

本文的验证实例是对信息物理系统模型的一个简化仿真,根据线性信息物理系统的特性进行建模,各个参数的设置满足了本文中设计的检测器和观测器的条件。

3 结语

本文针对含有执行器攻击的信息物理系统, 研究其有限时间的攻击检测与状态安全估计问题。首先, 设计一种有限时间检测器对系统受到的攻击进行检测,在此基础上设计了安全状态观测器,成功地估计出了系统的状态。需要说明的是,本文仅讨论了线性信息物理系统在受到执行器攻击时的异常检测与安全状态估计问题,可以结合最新文献,加入对传感器的攻击,进一步扩大系统的适用范围。

本文假设信息物理系统是线性的,根据线性信息物理系统的特性进行建模,在系统受到执行器攻击时,分析攻击检测和安全状态估计问题。如果实际的物理系统是非线性的,而攻击者只进入其中的线性模型(一些操作点),并且基于该线性模型设计了攻击,在这种情况下需要设计多个观察者进行稳定性分析,证明过程将会变得非常复杂。此外,实际系统中还需要关注系统不确定性、噪声、状态及控制信号约束等特性。以上这些都是下一步研究的内容。

参考文献
[1]
CONTI M, DAS S K, BISDIKIAN C, et al. Looking ahead in pervasive computing: Challenges and opportunities in the era of cyber-physical convergence[J]. Pervasive and Mobile Computing, 2012, 8: 2-21. DOI:10.1016/j.pmcj.2011.10.001
[2]
CHIEN D. Systems and methods for suppressing denial of service attacks: U.S. Patent 10, 277, 626[P]. 2019-04-30.
[3]
LI B, XIAO G, LU R, et al. On feasibility and limitations of detecting false data injection attacks on power grid state estimation using D-FACTS devices[J]. IEEE Transactions on Industrial Informatics, 2020, 16(2): 854-864. DOI:10.1109/TII.2019.2922215
[4]
TEIXEIRA A, AMIN S, SANDBERG H, et al. Cyber security analysis of state estimators in electric power systems[C]//49th IEEE Conference on Decision and Control. Atlanta GA, USA: IEEE Press, 2010: 5991-5998.
[5]
MO Y, SINOPOLI B. Secure control against replay attacks[C]//47th Annual Allerton Conference on Communication, Control, and Computing. Monticello IL USA: IEEE Press, 2010: 911-918.
[6]
王萃清. 虚假数据注入攻击下信息物理系统的弹性控制[D]. 兰州: 兰州理工大学, 2018.
WANG C Q. Elastic control of information physical system under false data injection attack[D]. Lanzhou: Lanzhou University of Technology, 2018. (in Chinese)
[7]
QIN J, LI M, SHI L, et al. Optimal denial-of-service attack scheduling with energy constraint over packet-dropping networks[J]. IEEE Transactions on Automatic Control, 2018, 63(6): 1648-1663. DOI:10.1109/TAC.2017.2756259
[8]
庄康熙, 孙子文. 针对工业信息物理系统中的拒绝服务攻击建立检测模型[J]. 控制理论与应用, 2020, 37(3): 629-638.
ZHUANG K X, SUN Z W. A detection model for denial of service attacks in industrial information physics systems[J]. Control Theory and Application, 2020, 37(3): 629-638. (in Chinese)
[9]
AO W, SONG Y, WEN C, et al. Finite time attack detection and supervised secure state estimation for CPSs with malicious adversaries[J]. Information Sciences, 2018, 451-452: 67-82. DOI:10.1016/j.ins.2018.03.056
[10]
CHONG M S, WAKAIKI M, HESPANHA J P. Observability of linear systems under adversarial attacks[C]//American Control Conference. Chicago IL, USA: IEEE Press, 2015: 2439-2444.
[11]
LU A, YANG G. Secure Luenberger-like observers for cyber-physical systems undersparse actuator and sensor attacks[J]. Automatica, 2018, 98: 124-129. DOI:10.1016/j.automatica.2018.09.003
[12]
YASSER S, PIERLUIGI N, ALBERTO P, et al. Secure state estimation for cyber-physical systems under sensor attacks: A satisfiability modulo theory approach[J]. IEEE Transactions on Automatic Control, 2017, 62(10): 4917-4932. DOI:10.1109/TAC.2017.2676679
[13]
WU C W, HU Z R, LIU J X, et al. Secure estimation for cyber-physical systems via sliding mode[J]. IEEE Transactions on Cybernetics, 2018, 48(12): 3420-3431. DOI:10.1109/TCYB.2018.2825984
[14]
LI Y, SHI L, CHEN T. Detection against linear deception attacks on multi-sensor remote state estimation[J]. IEEE Transactions on Control of Network Systems, 2017, 5(3): 846-856.
[15]
敖伟. 信息物理系统中攻击检测与安全状态估计问题研究[D]. 重庆: 重庆大学, 2017.
AO W. Research on attack detection and security state estimation in information physics system[D]. Chongqing: Chongqing University, 2017. (in Chinese)
[16]
汤奕, 李梦雅, 王琦, 等. 电力信息物理系统网络攻击与防御研究综述(二)检测与保护[J]. 电力系统自动化, 2019, 43(10): 1-9.
TANG Y, LI M Y, WANG Q, et al. Research review on network attack and defense of power information physical system (ii) detection and protection[J]. Power System Automation, 2019, 43(10): 1-9. DOI:10.7500/AEPS20180906007 (in Chinese)
[17]
YANG F, WILDE R W. Observers for linear systems with unknown inputs[J]. IEEE Transactions on Automatic Control, 1988, 33(7): 677-681. DOI:10.1109/9.1278
[18]
FAIRMAN F W, MAHIL S S, LUK L. Disturbance decoupled observer design via singular value decomposition[J]. IEEE Transactions on Automatic Control, 1984, 29(1): 84-86. DOI:10.1109/TAC.1984.1103370
[19]
SHOUKRY Y, TABUADA P. Event-triggered state observers for sparse sensor noise/attacks[J]. IEEE Transactions on Automatic Control, 2015, 61(8): 2079-2091.