基于数据关系图的恶意假数据注入攻击检测

2017-12-19 03:47张林鹏
上海电力大学学报 2017年5期
关键词:测数据残差测点

张林鹏, 王 勇, 陈 武, 刘 蔚

(1.上海电力学院, 上海 200090;2.上海云剑信息技术有限公司, 上海 200433)

基于数据关系图的恶意假数据注入攻击检测

张林鹏1, 王 勇1, 陈 武1, 刘 蔚2

(1.上海电力学院, 上海 200090;2.上海云剑信息技术有限公司, 上海 200433)

分析了假数据注入攻击的原理,并在4节点16测点系统上进行了攻击验证.最后提出了基于数据关系图的电力系统状态估计检测方法,并在4节点16测点系统上对假数据注入攻击进行了检测效果实验.实验结果表明,基于数据关系图的电力系统状态估计检测能够检测假数据注入攻击,并能辨识攻击注入点.

状态估计; 不良数据检测; 恶意假数据注入攻击; 数据关系图

电力系统的状态量一般是节点的电压幅值和角度,量测量一般为节点注入复功率或者支路复功率,也可以是节点电压的幅值.在常规潮流计算中,量测量取PQ节点的注入有功功率及无功功率,PV节点的有功功率及电压幅值;状态量取PQ节点的电压及相角,PV节点的相角及无功功率.若其量测量数等于状态量数,恰好能求出惟一解.若状态估计中的量测量还包含支路复功率及节点电压幅值,量测量数大于状态量数,则没有惟一解,只有以特定量为目标函数的近似解.状态估计是广义上的潮流计算,常规潮流是特定条件下的状态估计[1].

电力系统状态估计对数据采集与监视控制系统(Supervisory Control And Data Acquisition,SCADA)实时量测数据进行滤波,能够计算出表征电力系统运行的状态变量[2],给能量管理系统(Energy Management System,EMS)的最优潮流、经济调度等算法提供数据支持.因而在电力系统状态估计过程中,采用一些不良数据检测方法检测并剔除量测数据中的不良数据,对系统的正常运行至关重要.

2009年之前,对量测数据的安全性研究局限于数据完整性和有效性,以及提高检测方法的检测精度和效率.2009年,LIU Y等人[3]提出了电力系统假数据注入攻击(False Data Injection Attacks,FDIAs)的概念,这种攻击模型不仅能攻击直流系统的状态估计器,也能攻击交流系统的状态估计器[4].FDIAs通过构造与雅克比矩阵列向量线性相关的攻击矢量,使得传统基于最大标准残差的不良数据检测方法对于FDIAs完全失效.对此,本文提出了一种基于数据关系图新的不良数据检测方法,能够检测假数据注入攻击.

1 传统不良数据检测方法

1.1 J(x)检测

电力系统状态估计的已知条件是m维实时的量测量z,包含注入节点的有功功率和无功功率,支路的穿越功率以及节点电压的幅值,待求的状态量是各节点的电压幅值和角度组成的n维矢量.由于m>n,且存在量测误差,无法找到一个状态量x,使残差矢量各分量均为零.残差矢量公式为:

r(x)=z-h(x)

(1)

式中:h(x) ——由各状态量x和节点导纳矩阵表示的各量测量的函数关系.

可以找到使加权残差平方和最小的状态量x,其建立的目标函数为:

J(x)=[z-h(x)]TR-1[z-h(x)]

(2)

且J(x)的统计特性为:

式中:H——雅克比矩阵;

K——阶数;

Tr——迹;

Var——方差.

由此看出J(x)是服从K阶自由度的χ2-分布.假设第i个量测量存在不良数据,数据值为αi,量测误差矢量可表示为:

v=vz+eiαi

(5)

式中:vz——正常量测条件下的m维量测误差矢量;

于是有:

(6)

等式右端第1项是正常量测条件下的目标函数极值J(x),第2项为零均值的正态分布,第3项为常数项,故其统计特性为:

(7)

(8)

式中:vwz——正常量测条件下的m维加权量测误差矢量;

Ww——加权残差灵敏度矩阵;

ww,ii——影响系数.

J(x)检测按假设检验方法进行.

(9)

J(x)检测法是一种总体检测法,只能确定量测数据中是否存在不良数据,而无法确定不良数据的位置.

1.2 rw检测和rN检测

rw是m维残差矢量r的加权形式,表示为:

(10)

且rw检测是将逐维残差按假设检验方法进行.

(11)

式中:rw,i,γw.i——第i个加权残差,残差的门槛值,i=1,2,3,…,m.

若规定误检概率为0.005,则正常的加权残差取值范围为:

(12)

rN法与rw法类似,使用标准化残差分量进行检测,按下述假设检验方式进行.

(13)

式中:rN,i,γN,i——第i个标准化残差,残差的门槛值.

若规定误检概率为0.005,标准化残差门槛值可定义为γN,i=2.81.

2 基于数据关系图的检测

J(x)检测是一种总体检测方法,只能检测某次采样时刻的总体量测量中是否含有不良数据,无法定位不良数据的测点;rw检测和rN检测在不良数据偏离正常范围不大的情况下效果良好,若不良数据偏差较大,检测的残差污染现象凸显.J(x)检测、rw检测和rN检测都是以残差方程为基础,通过判断量测值与量测估计值之差是否超过界限来检查,是基于残差的检测方法.若有一个特定攻击矢量,使得检测过程中的残差不包含攻击矢量的影响,那么上述3种检测方法的检测失败.对此,引入一种新的检测方法,基于数据关系图的检测方法.

基于数据关系图的检测以变量的变化量来表示正常运行条件下网络的状态,具体表示为:

(14)

zk=(x1,k,x2,k,x3,k,…,xm,k)T

(15)

zk——k时刻系统所有测点的状态变化量的集合;

εk,δk——阈值,对于不良数据检测,一般取εk=-δk=6σ,σ为标准差.

检测方法的基础假设是:在正常系统运行周期内,系统的状态变化有一定规律,即zk是有限个,且zk-1和zk+1是有规律可循的.算法流程如下:

(1) 对t0-tk-1时刻的z0,z1,z2,…,zk-1进行训练,生成数据关系集合U(z);

(2) 确定zk-1在U(z)中的位置zi-1,并找出zi;

(3) 比较zi与zk,若相同,则tk时刻的量测数据没有不良数据,转到第5步;若不同,则有不良数据存在,转到第4步;

(4) 比较h(xi)(对应于zi)与h(xk)(对应于zk),找出数据不同的测点,即存在不良数据的测点;

(5) 进行下一采样时刻的数据比较.

3 假数据注入攻击

假数据注入攻击是一种针对电力系统状态估计的恶意攻击.这种攻击发生在电力系统的二次系统.在二次系统中,各个量测器将量测数据汇总给远程终端单元(Remote Terminal Unit,RTU),RTU通过电力通信网络传给SCADA系统,SCADA系统对数据进行状态估计和不良数据检测,并将估计结果提供给EMS的控制算法(如最优潮流、事故分析和经济调度)[5-6],EMS的控制算法根据估计结果做出相应控制决断,再经SCADA系统、通信网络将控制量数据流传输给RTU.假数据注入攻击的系统结构如图1所示.

图1 假数据注入攻击的系统结构

攻击者在获取电力系统拓扑结构后,可通过攻击RTU设备(攻击点1)、拦截量测量数据流(攻击点2)以及入侵SCADA系统(攻击点3)注入假数据,干扰系统正常运行,达到破坏目的.

3.1 假数据注入攻击原理

(16)

根据式(1)和式(16)可得到的残差方程为:

(17)

当a=Hc时,式(17)中将不包含假数据的残差,基于残差的不良数据检测方法将无法检测出假数据.

3.2 假数据注入攻击验证

在4节点16测点系统上,对传统不良数据检测方法防御假数据注入攻击的效果进行测试.系统的阻抗和量测配置如图2和图3所示.

图2 4节点16测点模拟系统阻抗示意

注:Pi,Qi—节点i的有功功率和无功功率;Pij,Qij—节点i至节点j线路的有功功率和无功功率;Ui—节点i的电压幅值;i=1,2,3,4;j=1,2,3,4.

图34节点16测点模拟系统的量测配置

4节点16测点模拟系统节点1为平衡节点,基准电压UB=111.5 kV,变压器支路采用π型等值电路,系统的节点导纳矩阵Y和雅克比矩阵H分别如表1和表2所示.

表1 节点导纳矩阵Y

表2 雅克比矩阵H

注:U1,U2,U3,U4—节点电压幅值;θ2,θ3,θ4—节点电压相角.

根据假数据注入攻击原理,构建攻击矢量:

(18)

则量测量:

zbad=z+a

(19)

FDIAs前后效果如表3和表4所示.

表3 FDIAs前后量测量z和量测估计量对比

表4 FDIAs前后节点电压对比

由表3和表4可以看出,在攻击矢量a的作用下,测点12和测点14的量测量与量测估计值变化明显,且对节点4的电压幅值和角度产生明显的作用,节点4的电压幅值远超正常范围.rw检测和rN检测对此攻击的检测效果如表5所示.J(x)检测中,误检率为0.05对应的检测门槛值rJ为16.92,正常条件下,J(x)=13.922 3

由表5可以看出,FDIAs后测点12和测点14的检测值虽有变化,但仍然在各检测方法的阈值内,且这种变化并不明显.

表5 传统不良数据检测的效果

综上可知,假数据a注入到量测量z中,躲过了rw检测、rN检测和J(x) 检测,造成节点4电压U4达到211.74 kV,远远超过正常电压波动范围的假象,将对EMS中的控制算法产生不良影响.

4 基于数据关系图的检测法对数据注入攻击的检测效果

测试系统仍使用4节点16测点系统.量测器的测量数据如下:

z=h(x)+v

(20)

式中:v——量测误差,服从均值为零,方差为σ2的正态分布,通常由量测器的误差、量测过程中的方法误差、量测数据传输过程中传输误差等组成.

在正常量测条件下,一般认为误差大于±3σ的量测值即可认为是不良数据,而在实际应用中,不良数据的界限远大于3σ,常取大于±6~7σ[7].

在图3的4节点16测点中,取1 000组量测数据对基于数据关系图的检测方法进行训练,生成数据关系图.P1测点的1 000个数据和量测估计值如图4所示.

图4 P1测点的量测值与量测估计值对比

由图4可以看出,P1量测估计值并不紧密集中在某一值附近,量测估计值随量测量的变化有较大的波动.从波动的变化形式来看,量测估计值似乎符合一定的规律.考虑到式(20),量测数据的误差其实是高斯噪声,服从N(0,σ2)分布,即量测值与状态估计值的差服从正态分布.实际量测器数据采样中,各组量测数据是相互独立采样,那么各组量测的误差也服从正态分布,因此可以使用卡尔曼滤波法[8-9]对1 000组量测量估计值进行处理,处理后的数据集作为基于数据关系图检测方法的训练集,训练找出各状态变量的关系.其状态关系如图5所示.

由图5可以看出,4节点16测点系统在相当长的采样周期内,各量测量的状态值是某一定值,这个定值其实就是真实值.而在1 000组量测数据中,每个测点的量测数据并不惟一的原因在于误差的存在.

图5 状态关系

图6 FDIAs后状态关系

测点状态节点123测点状态节点12310009000200010000300011000400012011500013000600014012700015000800016000

由图6和表6可以看出,当注入攻击向量后,生成的新的状态关系图比正常运行条件下的状态关系图多出两个状态量,这两个状态量就是FDIAs后在几个采样周期内引起量测系统的变化量.也就是说,基于数据关系图的检测方法能够检测出假数据的注入攻击,并且还能看出除攻击矢量注入点(测点12和测点14)有变化之外,其他量测状态量并无变化,则测点12和测点14即是假数据注入的攻击点.在假数据注入测点12和测点14后,系统状态不保持在一个状态附近,而是在攻击后新生成的两个状态之间振荡.

5 结 论

(1) 电力系统的传统检测方法实质上是基于最大标准化残差的检测方法,这种检测方法无法检测出存在假数据注入攻击的电力系统量测数据.

(2) 正常运行条件下,基于数据关系图的检测方法对历史量测数据进行训练,能够找出正常运行条件下的电力系统状态关系图.

(3) 当存在假数据注入攻击时,电力系统的状态关系图将出现新的状态节点和状态分支,通过与正常条件下的电力系统状态关系图进行比对,能够判断电力系统是否出现了假数据注入攻击,并且能够辨识假数据注入攻击的攻击点.

[1] 于尔铿.电力系统状态估计[M].北京:水利水电出版社,1985:1-263.

[2] 朱杰,张葛祥,王涛,等.电力系统状态估计欺诈性数据攻击及防御综述[J].电网技术,2016,40(8):2 406-2 415.

[3] LIU Y,REITER M K,NING P.False data injection attacks against state estimation in electric power grids[C]//Proceedings of the 16th ACM Conference on Computer and Communicate Security.Chicago,USA:ACM,2009:21-32.

[4] 王先培,田猛,董政呈,等.输电网虚假数据攻击研究综述[J].电网技术,2016,40(11):3 406-3 414.

[5] 杨清宇,杨洁,马训鸣.电力系统假数据注入攻击研究[J].微电子学与计算机,2011,28(12):175-179.

[6] 杨清宇,李东鹤,蔡远利,等.针对电力系统中最优潮流的假数据注入攻击研究[C]//17th CCSSTAE 2016.Xi′an,China:ACM,2016:312-316.

[7] 黄彦全,肖建,李云飞,等.基于量测数据相关性的电力系统不良数据检测和辨识新方法[J].电网技术,2006,30(2):70-74.

[8] 李江,王义伟,魏超,等.卡尔曼滤波理论在电力系统中的应用综述[J].电力系统保护与控制,2014,42(6):135-144.

[9] 卫志农,孙国强,庞博.无迹卡尔曼滤波及其平方根形式在电力系统动态状态估计中的应用[J].中国电机工程学报,2011,31(16):74-78.

FalseDataInjectionAttackDetectionBasedonDataRelationshipGraph

ZHANG Linpeng1, WANG Yong1, CHEN Wu1, LIU Wei2

(1.ShanghaiUniversityofElectricPower,Shanghai200090,China;2.ShanghaiCloudSwordInformationTechnologyCo,.Ltd.,Shanghai200433,China)

The principle of the attack is studied,the attack testing on one four-nodes power system with 16 measuring points is realized,and a novel method based on data relationship graph is proposed to detect and identify the attack.The proposed method is effective against the state estimation.

state estimation; bad data detection; ill will; false data injection attack; data relationship graph

10.3969/j.issn.1006-4729.2017.05.014

2017-03-19

张林鹏(1991-),男,在读硕士,河北邢台人.主要研究方向为电力系统恶意攻击检测.E-mail:zhang_lp@foxmail.com.

上海科学技术委员会地方能力建设项目(15110500700);上海市浦江人才计划资助项目(16PJ1433100);上海自然科学基金(16ZR1436300);上海科学技术委员会中小企业创新基金(1501H1B7700,1601H1E2600).

TP309;TP391.3

A

1006-4729(2017)05-0480-07

(编辑 桂金星)

猜你喜欢
测数据残差测点
液压支架整机静强度试验及等效应力分析
基于双向GRU与残差拟合的车辆跟驰建模
基于CATIA的汽车测点批量开发的研究与应用
基于残差学习的自适应无人机目标跟踪算法
某废钢渣车间落锤冲击振动特性研究
基于递归残差网络的图像超分辨率重建
基于SCADA和WAMS的线路参数辨识研究
基于PMU/SCADA混合量测数据兼容性的船舶系统状态估计研究
提高变电站基础量测数据时间同步性的方法
平稳自相关过程的残差累积和控制图