2. 上海交通大学电信学院, 上海 200240
2. School of Electronic, Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China
0 引言
随着计算机、网络通讯、自动控制等新兴产业的相互交融和促进,信息物理融合网络系统(cyber-physical system,CPS)随之出现,并朝着大规模、智能化的方向发展.智能电网是一种典型的CPS系统,但由于其开放性与智能性的日益增强,导致其安全风险不断增加[1-2].最近发生在乌克兰的大规模停电事件和印度整体电网瘫痪事件[3]引起了社会各界对智能电网遭受攻击的关注.面对各种恶意的网络攻击[4-6],研究针对智能电网的假数据注入攻击检测具有现实意义.
电力系统状态估计欺诈性数据攻击首次由Liu等人提出[7],该种攻击可以有效避开传统的不良数据检测方式,被普遍认为是针对电力系统状态估计的新型网络攻击.与传统的物理攻击相比,FDIA(false data injection attack)可以多次发起而不被发现.如果FDIA与物理攻击相互协调使用,由物理攻击引起的线路中断可以被掩盖[8].因此,隐蔽假数据注入攻击的检测对于电力系统的安全性具有重要意义.文[9]对电网指标的不确定性问题进行了建模分析.为了量化电网的潜在威胁,文[10]引入了两类不同类型的FDIA,即稀疏攻击和小规模攻击.在此基础上,文[11]在非线性交流动力模型上描述了线性攻击策略的局限性.更多关于FDIA的资料请参见文[12].
对于虚假数据攻击的检测,文[13]提出了针对FDIA的检测方法:一种是确保战略选择所需要的基本测量的安全,另一种是独立验证战略性选择的状态变量的异常.在此基础上,文[14]提出H∞-范数检验法,该方法通过量测残差的局部异常可以有效地检测随机攻击.但是,检验设定的阈值大小对检测精度的影响较大,应用中易出现漏检,而且无法检测具有隐蔽性的假数据注入攻击.文[15]提出基于卡尔曼滤波器构造的欧几里德检测方法可以检测隐蔽假数据注入攻击,但是噪声等不确定因素引起的异常波动会影响系统的检测结果.文[16]提出状态可达集来检测隐蔽假数据攻击,但是使用的标准卡尔曼滤波器仍旧没有考虑实际噪声变化的影响.文[17]从处理系统参数变化角度考虑使用交互多模型卡尔曼滤波来对系统状态进行估计,这在一定程度上提高了估计精度,但是仍旧没有考虑噪声变化的影响,这样就会导致观测系统的状态误差增大,甚至使得滤波发散,因此噪声统计特性的变化必须加以考虑.
本文针对隐蔽假数据注入攻击的检测问题,提出一种考虑噪声统计特性变化的自适应卡尔曼滤波器的检测方法来降低噪声的影响.该方法利用系统可测信息重建状态变量,然后构造状态检测残差与先验阈值做对比,由此给出攻击检测的判断方法.最后进行仿真实验.实验结果证明该种攻击检测方法可以有效地检测出隐蔽假数据注入攻击并且可以缩短检测时间.
1 状态空间模型和攻击隐蔽性分析本节考虑基于三相正弦电压方程的状态空间模型[15].在此基础上,分析和给出随机攻击和隐蔽假数据注入攻击模型.
1.1 状态空间模型文[18]的研究表明,在电力系统中的攻击或故障总是反映在电压、电流或相位的变化上.以如图 1所示的3电机6总线电网为例,在每个总线与发电机组连接处使用相量测量得到电压.在每个测量点记录电网三相电压信号.文[15]从三相电压公式推导得到如式(1)的单测量节点的状态空间模型,文[19]在此基础上对该模型进行补充,使之成为有3个测量节点的系统模型.本文假设只有一个测量节点遭受攻击,因此只需使用文[15]中的单测量节点模型.
(1) |
式中
(2) |
式中
(3) |
式中δkj是狄拉克函数,即
目前针对智能电网的攻击主要有重放攻击,拒绝服务攻击以及虚假数据注入攻击等.本文主要考虑虚假数据注入攻击中的随机攻击和隐蔽假数据注入攻击.
假设攻击者可以控制一系列系统中的传感器数据,且攻击持续时间为T.
1) 在随机攻击情况下,攻击者无需精心构建攻击序列来克服检测机制,其主要目的就是破坏电网的正常运行.最快速有效的方法就是直接攻击传感器导致量测输出错误.随机攻击模型描述如下
(4) |
式中ya(k)可以是任意的攻击信号,在后面的仿真部分,采用的是正弦信号.
2) 在隐蔽假数据注入攻击情况下,攻击者需要精心构建攻击序列来克服检测机制,其次需要系统按照攻击者的期望运行.这就要求攻击者已知系统信息,包括参数矩阵H[20].
考虑假数据注入攻击模型描述如下
(5) |
式中Γ=diag(γ1,…,γn)代表传感器选择矩阵,当γi=1时代表第i个传感器遭受攻击,否则γi=0.且ya(k)是攻击者精心构建的攻击向量序列.
对攻击者克服检测机制的隐蔽性[21]进行分析.
忽略噪声和省略下标,由方程(2)中输出方程可得
(6) |
式中z是系统量测数据的列向量,H为状态变量和量测输出的线性关系.
无攻击时的残差为
(7) |
假设a为构建的攻击向量,c为遭受攻击时的状态误差向量.此时残差为
(8) |
式中τa为由虚假数据注入攻击导致的残差增量.
由式(8)可知,当a=Hc,即a是列向量H的线性组合(此时的攻击称为隐蔽型假数据注入攻击),此时的残差与没有攻击时的残差的误差处于正常范围,这就导致隐蔽假数据注入攻击很难被成功检测.本文尝试考虑通过基于自适应卡尔曼滤波器的方法来检测此种攻击.
2 自适应卡尔曼滤波器本节首先对标准卡尔曼滤波器的缺陷进行分析,然后在此基础上提出采用一种基于R,Q动态估计的自适应卡尔曼滤波算法.
2.1 基于R,Q动态估计的自适应卡尔曼滤波为了得到系统部分的状态变量实现攻击检测,考虑利用已知的输入与输出量,通过标准卡尔曼滤波器对系统状态变量进行估计.但是标准卡尔曼滤波的前提是噪声的统计特性必须已知,但在结合实际时发现,一般只能得到近似的统计特性,这样就会导致观测系统的状态误差增大,有时甚至会导致滤波发散.
因此基于上述分析,本文提出采用一种基于R,Q动态估计的自适应卡尔曼滤波算法,该算法考虑了噪声统计特性的变化,并利用观测数据实时更新,从而达到实时修正噪声模型的目的.目前已经有很多根据实际应用提出的自适应卡尔曼滤波算法,本文采用一种改进的基于R,Q动态估计的卡尔曼滤波算法.本文首先假定R,Q是未知的,利用观测数据对系统噪声变化特性进行实时估计.
考虑系统的噪声统计特性是时变的,即满足
(9) |
因此下一步需要求得时变噪声的
文[22]给出了次优无偏常值噪声统计估计器
(10) |
(11) |
(12) |
(13) |
式中
选取加权系数{βi}满足:
(14) |
于是有
(15) |
式中b是遗忘因子,对式(10)~(13)用βk+1-i代替1/k便可以得到时变噪声估计器,本文以
(16) |
同理可得
(17) |
(18) |
(19) |
但在实际应用中发现,每一步都进行迭代来估计噪声的统计特性会使得计算过程变得过于复杂.因此考虑只在滤波发生异常时进行迭代,滤波正常时则采用上一步的估计值.
由文[23],得到根据新息来设置的滤波异常判据
(20) |
式中λ为误差系数,且λ≥1,当λ=1时为严格收敛判据;tr表示矩阵的迹.当式(20)成立时,表示此时的误差将会超过理论值的λ倍,此时滤波会发散.则需要对
最后综合标准卡尔曼滤波和时变噪声估计器就得到可以对时变噪声进行统计估计的自适应卡尔曼滤波算法.
3 攻击检测本节分析常用的χ2检测和检测残差法对隐蔽假数据注入攻击的检测原理.
3.1 χ2检测文[24]中,χ2检测利用残差信号构建目标检测函数f(k),并与设定的阈值f相比较.
χ2检测的目标函数给定为
(21) |
式中
(22) |
在使用χ2检测的情况下,为了最小化由系统噪声引起的误报率,设定阈值在3σ(σ是噪声的标准差),这样可以滤去99.73%的误报率[22].然后根据式(23)判断攻击的存在
(23) |
文[15]中,假数据注入攻击可以描述为:攻击持续时间T内,在攻击序列ya(k)的作用下,使得
考虑自适应卡尔曼滤波器公式
(24) |
当有攻击发生时,首先变化的是量测输出zk,假设它的变化量是a,即式(24)变为
(25) |
从式(25)可知,由于a的注入,导致估计状态
(26) |
式中a=Hc在前面已经假定.比较式(24)和式(26)发现,由于攻击向量a的隐蔽性,使得基于残差的χ2检测失效.但是因为Ac的存在,可以通过状态来进行检测.
当攻击向量a注入到传感器输出z时,观测状态会立即发生改变,但是因为框架结构导致攻击对输入的影响存在延迟[25],因此系统会保持原来的状态,这就给检测该攻击提供了时间.
因此考虑用如下的基于状态分析的检测残差法来进行检测
(27) |
式中
(28) |
通过上述分析,证明了从系统状态得到的检测残差可以有效检测虚假数据注入攻击.
4 仿真分析为了验证所设计的检测残差法的检测效果,在Matlab/Simulation环境下进行仿真研究.考虑随机攻击和隐蔽假数据注入攻击,用χ2检测和残差检测法分别进行检测.采用的仿真参数和初始值如表 1所示. AKF估计器的输入是频率为60 Hz的带有随机高斯白噪声的正弦电压信号,利用Matlab函数randn()产生正态分布的零均值噪声.
本文考虑的随机攻击信号为正弦信号.应用3σ准则求得先验阈值f=3σ=1.2.
图 2给出了系统实际状态和观测状态响应图.从图中可以看出,在刚开始时,两者之间存在一个较大的误差,但是很短时间内趋于一致.这表明设计的自适应卡尔曼滤波器能很好地实时跟随系统的实际状态.
图 3给出了随机攻击情况下的χ2检测和检测残差响应图.由图 3看出,在没有攻击时,χ2检测一直都处于0,而检测残差受到噪声和估计误差的影响而围绕0上下小范围的波动.在t=50 ms时,实际状态和观测状态开始发生偏离,表明此时遭受攻击,且攻击持续时间T=50.从图 3可知,在随机攻击的情况下,χ2检测和状态检测残差法都能快速地超过设定的先验阈值,实现攻击检测.
4.2 隐蔽假数据攻击下的χ2检测和检测残差法图 4是在隐蔽假数据注入攻击下的系统实际状态和观测状态响应图.
从图 4中可看出,当t=60 ms时发生攻击,观测状态开始逐渐偏离实际状态,攻击持续时间T=140. 图 5给出了隐蔽假数据攻击情况下的χ2检测和文[15]中欧几里德检测响应图.
由图 5看出,χ2检测没有明显的变化,且始终没有超过先验阈值,这表明χ2检测无法有效地检测出假数据注入攻击.而基于卡尔曼滤波器构建的检测残差,当攻击发生时,它很快发生变化,且能在较短时间内迅速超过阈值检测出攻击.但是使用KF滤波得到的残差信号受噪声影响很大,容易出现误报,而且检测所需要的时间也较长.因此考虑使用基于AKF滤波的检测残差法来降低噪声影响,同时缩短检测时间.
如图 6所示,使用本文提出的基于AKF滤波得到的残差信号在没有攻击时稳定在0附近,这大大降低了误报率,而且在此基础上使用的检测残差法可以在攻击发生后的极短时间内迅速超过设定的阈值,检测出隐蔽假数据攻击的存在,这与文[15]的欧几里德检测相比大大缩短了检测时间.这验证了本文提出的方法的有效性.
5 结论本文提出了一种基于自适应卡尔曼滤波的检测方法来检测隐蔽假数据注入攻击.首先在三相电压模型的基础上分析了随机攻击和隐蔽假数据注入攻击的特性.其次考虑用自适应卡尔曼滤波代替标准卡尔曼滤波来估计系统状态的同时降低误报率和缩短检测时间.最后,比较常用的χ2检测,欧几里德检测与检测残差法对攻击检测的实际效果,仿真结果表明提出的检测残差法不仅可以有效地检测随机攻击,还可以快速检测隐蔽假数据注入攻击.下一步工作考虑利用自适应阈值进一步缩短检测时间,同时从多个传感器中定位出被攻击的传感器.
[1] | Moslemi R, Mesbahi A, Velni J M. A fast, decentralized covariance selection-based approach to detect cyber attacks in smart grids[J]. IEEE Transactions on Smart Grid, 2017, PP(99): 1–12. |
[2] | Yu Z H, Chin W L. Blind false data injection attack using PCA approximation method in smart grid[J]. IEEE Transactions on Smart Grid, 2015, 6(3): 1219–1226. DOI:10.1109/TSG.2014.2382714 |
[3] | Metke A R, Ekl R L. Security technology for smart grid networks[J]. IEEE Transactions on Smart Grid, 2010, 1(1): 99–107. DOI:10.1109/TSG.2010.2046347 |
[4] | Pasqualetti F, Dörfler F, Bullo F. Attack detection and identification in cyber-physical systems[J]. IEEE Transactions on Automatic Control, 2013, 58(11): 2715–2729. DOI:10.1109/TAC.2013.2266831 |
[5] | Douligeris C, Mitrokotsa A D. DoS attacks and defense mechanisms:a classification[C]//IEEE International Symposium on Signal Processing and Information Technology. Berlin, Germany:Springer, 2003:190-193. |
[6] | Mo Y, Sinopoli B. Secure control against replay attacks[C]//Allerton Conference on Communication, Control, and Computing. Pscataway, NJ, USA:IEEE, 2009:911-918. |
[7] | Liu Y, Ning P, Reiter M K. False data injection attacks against state estimation in electric power grids[J]. ACM Transactions on Information and System Security, 2011, 14(1): 1–34. |
[8] | Li Z, Shahidehpour M, Alabdulwahab A, et al. Bilevel model for analyzing coordinated cyber-physical attacks on power systems[J]. IEEE Transactions on Smart Grid, 2016, 7(5): 2260–2272. DOI:10.1109/TSG.2015.2456107 |
[9] |
黄心, 王清心, 丁家满.
基于概率盒理论的电网规划方案中指标不确定性建模[J]. 信息与控制, 2016, 45(3): 272–277.
Huang X, Wang Q X, Ding J M. Index uncertainty modeling in grid planning based on probability box theory[J]. Information and Control, 2016, 45(3): 272–277. |
[10] | Sandberg H, Teixeira A, Johansson K H. On security indices for state estimators in power networks[C]//Preprints of the First Workshop on Secure Control Systems. Stockholm, Sweden:CPSWEEK, 2010:1-6. |
[11] | Teixeira A, Dán G, Sandberg H, et al. A cyber security study of a SCADA energy management system:Stealthy deception attacks on the state estimator[J]. IFAC Proceedings Volumes, 2011, 44(1): 11271–11277. DOI:10.3182/20110828-6-IT-1002.02210 |
[12] | Deng R, Xiao G, Lu R, et al. False data injection on state estimation in power systems-attacks, impacts, and defense:A Survey[J]. IEEE Transactions on Industrial Informatics, 2017, 13(2): 411–423. DOI:10.1109/TII.2016.2614396 |
[13] | Bobba R B, Rogers K M, Wang Q, et al. Detecting false data injection attacks on DC State estimation[C]//Preprints of the First Workshop on Secure Control Systems. Stockholm, Sweden:CPSWEEK, 2010:1-9. |
[14] | Gu Y, Liu T, Wang D, et al. Bad data detection method for smart grids based on distributed state estimation[C]//2013 IEEE International Conference on Communications. Piscataway, NJ, USA:IEEE, 2013:4483-4487. |
[15] | Manandhar K, Cao X, Hu F, et al. Detection of faults and attacks including false data injection attack in smart grid using Kalman filter[J]. IEEE Transactions on Control of Network Systems, 2014, 1(4): 370–379. DOI:10.1109/TCNS.2014.2357531 |
[16] | Kwon C, Hwang I. Reachability analysis for safety assurance of cyber-physical systems against cyber attacks[J]. IEEE Transactions on Automatic Control, 2017, PP(99): 1–1. |
[17] |
夏小虎, 刘明.
基于交互式多模型卡尔曼滤波的电池荷电状态估计[J]. 信息与控制, 2017, 46(5): 519–524.
Xia X H, Liu M. Battery state-of-charge estimation using interactive multiple-model Kalman filter[J]. Information and Control, 2017, 46(5): 519–524. |
[18] | Qi H, Wang X, Tolbert L M, et al. A resilient real-time system design for a secure and reconfigurable power grid[J]. IEEE Transactions on Smart Grid, 2011, 2(4): 770–781. DOI:10.1109/TSG.2011.2159819 |
[19] | Rigatos G, Serpanos D, Zervos N. Detection of attacks against power grid sensors using Kalman filter and statistical decision making[J]. IEEE Sensors Journal, 2017, PP(99): 1–1. |
[20] | Mo Y, Garone E, Casavola A, et al. False data injection attacks against state estimation in wireless sensor networks[C]//49th IEEE Conference on Decision and Control. Piscatawy, NJ, USA:IEEE, 2011:5967-5972. |
[21] | Jie Z, Zhang G, Tao W, et al. Overview of fraudulent data attack on power system state estimation and defense mechanism[J]. Power System Technology, 2016, 40(8): 2406–2415. |
[22] |
赵琳, 王小旭, 孙明, 等.
基于极大后验估计和指数加权的自适应UKF滤波算法[J]. 自动化学报, 2010, 36(7): 1007–1019.
Zhao L, Wang X X, Sun M, et al. An adaptive UKF filtering algorithm based on maximum a posteriori estimation and exponential weighting[J]. Acta Automatica Sinica, 2010, 36(7): 1007–1019. |
[23] | Sun J, Xu X, Liu Y, et al. FOG random drift signal denoising based on the improved AR model and modified sage-Husa adaptive Kalman filter[J]. Sensors, 2016, 16(7): 1073. DOI:10.3390/s16071073 |
[24] | Dixon W J, Massey F J J. An introduction to statistical analysis[M]. 4th ed. NewYork, USA:McGraw-Hill, 1983:426-441. |
[25] | Kashima K, Inoue D. Replay attack detection in control systems with quantized signals[C]//2015 European Control Conference. Piscataway, NJ, USA:IEEE, 2015:782-787. |