武津園, 王 勇, 劉麗麗, 程彥喆
(1.上海電力大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院, 上海 200090;2.華電電力科學(xué)研究院有限公司 國家能源分布式能源技術(shù)研發(fā)(實驗)中心, 浙江 杭州 310030;3.東南大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院, 江蘇 南京 210000)
現(xiàn)代電網(wǎng)具有規(guī)模大、層次復(fù)雜、網(wǎng)絡(luò)拓?fù)涠鄻印崟r性要求嚴(yán)格等特點。隨著電網(wǎng)的智能化發(fā)展,電力系統(tǒng)對計算機(jī)信息技術(shù)的依賴程度越來越高,物理元件和網(wǎng)絡(luò)的交互,使得電網(wǎng)正在演變?yōu)橐粋€電力信息物理系統(tǒng)(Cyber Physical System,CPS)[1]。大量傳感設(shè)備和集成的通信網(wǎng)絡(luò)使系統(tǒng)具有實時感知、信息服務(wù)和動態(tài)控制功能[2]。數(shù)據(jù)采集與監(jiān)視控制(Supervisory Control and Data Acquisition,SCADA)系統(tǒng)是以計算機(jī)為基礎(chǔ)的電力系統(tǒng)生產(chǎn)過程控制與調(diào)度自動化系統(tǒng),可以對現(xiàn)場運(yùn)行設(shè)備進(jìn)行監(jiān)視和控制[3]。電力系統(tǒng)設(shè)計之初并沒有充分考慮到網(wǎng)絡(luò)的安全因素,因此物理系統(tǒng)與信息系統(tǒng)的深度融合使得傳統(tǒng)物理攻擊及網(wǎng)絡(luò)攻擊能夠協(xié)同作用,給電網(wǎng)帶來了新的安全隱患[4-5]。LIU Y等人[6]于2009年首次提出了假數(shù)據(jù)注入攻擊(False Data Injection Attack,FDIA),通過破壞數(shù)據(jù)完整性干擾決策。攻擊者在對電力網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)部分了解的前提下,通過向分布在電網(wǎng)中的計量裝置注入虛假數(shù)據(jù),影響電力系統(tǒng)正常運(yùn)行的同時,成功躲過壞數(shù)據(jù)檢測機(jī)制,達(dá)到危及電力系統(tǒng)安全的目的[7]。FDIA對電力系統(tǒng)狀態(tài)估計[8](State Estimation,SE)有致命影響,導(dǎo)致電網(wǎng)控制中心的誤判,進(jìn)而可能導(dǎo)致電網(wǎng)大停電事故,造成重大的國民經(jīng)濟(jì)損失。由于假數(shù)據(jù)注入攻擊對智能電網(wǎng)的危害性較大,隱蔽性較強(qiáng),在學(xué)術(shù)界受到了廣泛關(guān)注[9]。作為針對基礎(chǔ)工業(yè)控制系統(tǒng)的新型攻擊方式,網(wǎng)絡(luò)攻擊已成為電力系統(tǒng)維護(hù)安全穩(wěn)定運(yùn)行不容忽視的威脅,其攻擊機(jī)理、檢測方法、防御手段及相應(yīng)的安全態(tài)勢評估方法亟待研究[10-11]。
當(dāng)下存在的主要問題是:假數(shù)據(jù)注入攻擊發(fā)生在高度耦合的環(huán)境下,自信息網(wǎng)絡(luò)的威脅導(dǎo)致物理系統(tǒng)惡意破壞,引發(fā)一系列的連鎖事故;需要在制定虛假數(shù)據(jù)入侵檢測策略時,充分考慮檢測算法的時效性、靈敏性和抗擾動性。本文結(jié)合CPS分析了虛假數(shù)據(jù)注入的原理,并結(jié)合攻擊原理和兩種傳統(tǒng)的惡意數(shù)據(jù)檢測方法,設(shè)計了一種實驗方案,從大量且不重復(fù)的對IEEE拓?fù)浣Y(jié)構(gòu)單點假數(shù)據(jù)注入攻擊中,驗證了理論的正確性,進(jìn)一步表明傳統(tǒng)檢測方法對假數(shù)據(jù)的局限性。
FDIA是一種針對電力系統(tǒng)狀態(tài)估計的蓄意攻擊。假數(shù)據(jù)是由攻擊者為了毀壞系統(tǒng)或應(yīng)用而惡意構(gòu)建的。
在電力系統(tǒng)不良數(shù)據(jù)檢測中,狀態(tài)估計表達(dá)式為
J(x)min=[z-H(x)T·Wz-H(x)]
(1)
式中:J(x)min——估計表達(dá)式;
z——測量值;
H(x)——由各狀態(tài)量x和節(jié)點導(dǎo)納矩陣表示的各測量值的函數(shù)關(guān)系;
W——權(quán)重。
測量值中可能帶有壞數(shù)據(jù),為了避免可能因源自故障傳感器、拓?fù)湔`差等帶來的不良測量,檢測機(jī)子需要將J(x)與預(yù)先設(shè)定的閾值τ進(jìn)行比較。如果J(x)小于閾值τ,則認(rèn)為沒有不良數(shù)據(jù),反之要剔除相應(yīng)的壞數(shù)據(jù),對系統(tǒng)重新進(jìn)行狀態(tài)估計。
CPS的虛假數(shù)據(jù)注入攻擊,主要集中于輸電、配電、用電系統(tǒng)。對其檢測逐漸從依賴操作人員經(jīng)驗轉(zhuǎn)向為依賴自動化數(shù)據(jù)采集和檢測系統(tǒng)[12]。CPS是一個綜合計算、網(wǎng)絡(luò)和物理環(huán)境的多維系統(tǒng),可以實現(xiàn)計算、通信和控制的一體化。典型的CPS框架如圖1所示。
圖1 典型CPS框架示意
由圖1可知,CPS框架可劃分為3層:感知執(zhí)行層、數(shù)據(jù)傳輸層和應(yīng)用控制層[13]。CPS以通信網(wǎng)絡(luò)為核心,網(wǎng)絡(luò)規(guī)模和分布式的信息處理環(huán)境使得CPS容易受到虛假數(shù)據(jù)攻擊。在電力系統(tǒng)中引入網(wǎng)絡(luò)特性,入侵者能通過FDIA將判斷結(jié)果指向不需要的控制命令,從而導(dǎo)致系統(tǒng)無法執(zhí)行合理指令,甚至使電力系統(tǒng)系統(tǒng)陷入不可控的狀態(tài)。
目前常用的攻擊檢測方法主要是基于量測數(shù)據(jù)殘差的方法,包括目標(biāo)函數(shù)檢測法、rW檢測法和rN檢測法[14]。
rTR-1r
(2)
式中:R——m×n階量測誤差方差矩陣。
假設(shè)第i個測量值存在不良數(shù)據(jù),數(shù)據(jù)值為ai,量測誤差矢量可表示為
v=vz+eiai
(3)
式中:vz——正常量測條件下的m維量測誤差矢量;
ei——m維單位矢量。
于是有
(4)
式中:vwz——正常量測條件下的m維加權(quán)量測誤差矢量;
WW——加權(quán)殘差靈敏度矩陣;
等式右端第一項是正常量測條件下的目標(biāo)函數(shù)極值J(x),第二項為0均值的正態(tài)分布,第三項為常數(shù)項,故統(tǒng)計特性為
(5)
式中:E——期望值;
K——階數(shù);
ww,ii——影響系數(shù)。
rW檢測法是通過比較殘差的加權(quán)形式是否超過閾值來檢測不良數(shù)據(jù)。將rW表示為
(6)
式中:WW,ij——WW的對角元素;
vwj——加權(quán)量測誤差矢量。
正常量測條件下Evwz,j=0,Erwz,i=0,加權(quán)殘差服從0均值的正態(tài)分布。加權(quán)殘差的方差表示為
(7)
式中:zwz,i——加權(quán)殘差法中的測量值;
rwz,i——加權(quán)殘差法中的殘差。
綜上可得,rwz,i~N(0,Ww,ii)。根據(jù)數(shù)理統(tǒng)計,rW檢測法將每一維測量值按假設(shè)檢驗方式進(jìn)行,具體為
(8)
式中:γw,i——第i個加權(quán)殘差的門檻值。
與rW檢測法類似,rN檢測法是通過檢驗標(biāo)準(zhǔn)化殘差rN來檢測不良數(shù)據(jù)。殘差方程的標(biāo)準(zhǔn)化形式為
rN=WNv
(9)
式中:WN——?dú)埐铎`敏度矩陣;
v——量測誤差矢量。
類似rW檢測法,rN檢測法按如下形式進(jìn)行:
(10)
式中:γN,i——第i個標(biāo)準(zhǔn)化殘差的門檻值。
FDIA是對單個或多個量測添加可以躲避殘差檢測的隨機(jī)誤差,使?fàn)顟B(tài)估計器誤認(rèn)為是好的數(shù)據(jù),達(dá)到操縱狀態(tài)估計準(zhǔn)確性的目的。
添加到原始測量值中的非零攻擊矢量為
a=(a1,a2,a3,…,am)T
(11)
導(dǎo)致新的測量值za=z+a產(chǎn)生偏差。
將新的測量值za發(fā)送到狀態(tài)估計器,導(dǎo)致帶有偏差的估計為
(12)
c——非零向量,表示惡意注入對狀態(tài)估計的影響。
將攻擊矢量構(gòu)造為
a=Hc
(13)
則:
(14)
本文提供了一種對單點注入的虛假數(shù)據(jù)攻擊進(jìn)行檢測的實驗方法。通過MATLAB軟件編程實現(xiàn),數(shù)據(jù)采用matpower 4.1電力仿真數(shù)據(jù)包中的IEEE 30與118節(jié)點系統(tǒng)的拓?fù)鋽?shù)據(jù)。
IEEE 30節(jié)點系統(tǒng)拓?fù)浣Y(jié)構(gòu)如圖2所示。
圖2 IEEE 30節(jié)點系統(tǒng)拓?fù)浣Y(jié)構(gòu)
在IEEE 30節(jié)點系統(tǒng)的潮流參數(shù)中,在數(shù)據(jù)編號為20的節(jié)點處注入虛假數(shù)據(jù),具體如圖3所示。
圖3 在數(shù)據(jù)編號為20的節(jié)點處注入虛假數(shù)據(jù)
利用電力系統(tǒng)惡意數(shù)據(jù)檢測方法,對注入了虛假數(shù)據(jù)的位置參數(shù)進(jìn)行檢測,并繪制目標(biāo)函數(shù)、標(biāo)準(zhǔn)化殘差檢測結(jié)果和目標(biāo)函數(shù)檢測結(jié)果如圖4所示。
圖4 IEEE 30節(jié)點系統(tǒng)虛假數(shù)據(jù)注入下的檢測結(jié)果
檢測結(jié)果表明,經(jīng)過目標(biāo)函數(shù)6次迭代,圖4均顯示檢測出了虛假數(shù)據(jù)。在圖4(b)中,虛假數(shù)據(jù)標(biāo)注在20號,在圖4(c)中,虛假數(shù)據(jù)標(biāo)注在79號,與注入數(shù)據(jù)編號不符,說明在目標(biāo)函數(shù)檢測結(jié)果中發(fā)生了誤檢現(xiàn)象。
IEEE 118節(jié)點系統(tǒng)拓?fù)浣Y(jié)構(gòu)如圖5所示。
在IEEE 118節(jié)點系統(tǒng)的潮流參數(shù)中,在數(shù)據(jù)編號為10的節(jié)點處注入虛假數(shù)據(jù),具體如圖6所示。
圖5 IEEE 118節(jié)點系統(tǒng)拓?fù)浣Y(jié)構(gòu)
圖6 在數(shù)據(jù)編號為10的節(jié)點處注入虛假數(shù)據(jù)
同樣利用電力系統(tǒng)惡意數(shù)據(jù)檢測方法,對注入了虛假數(shù)據(jù)的參數(shù)進(jìn)行檢測,并繪制目標(biāo)函數(shù)、標(biāo)準(zhǔn)化殘差檢測結(jié)果和目標(biāo)函數(shù)檢測結(jié)果,具體如圖7所示。
如圖7可知,在標(biāo)準(zhǔn)化殘差和目標(biāo)函數(shù)檢測結(jié)果中均未顯示檢測出了虛假數(shù)據(jù),發(fā)生了漏檢現(xiàn)象。
文中使用的實驗方法,可以在IEEE 30與IEEE 118節(jié)點系統(tǒng)的任意數(shù)據(jù)節(jié)點上注入任意數(shù)值的虛假數(shù)據(jù),實現(xiàn)對系統(tǒng)的單點攻擊。從上述實驗分析可以看出,檢測存在漏檢和誤檢兩種情況。在每個節(jié)點中分別注入數(shù)據(jù),反復(fù)進(jìn)行實驗,統(tǒng)計對虛假數(shù)據(jù)注入檢測的錯誤率,系統(tǒng)檢測結(jié)果如圖8所示,其中0代表檢測失敗,1代表標(biāo)準(zhǔn)化殘差方法檢測成功,2代表目標(biāo)函數(shù)方法檢測成功。
從圖8(a)中可以看出,在IEEE 30節(jié)點系統(tǒng)的多次實驗中,標(biāo)準(zhǔn)化殘差法和目標(biāo)極值法的成功檢出率與理論證明相符合,說明傳統(tǒng)檢測方法對假數(shù)據(jù)的注入并不靈敏。從圖8(b)中可以看出,相比IEEE 30節(jié)點系統(tǒng),兩種方法的成功檢出率有所提升,但仍存在很高的錯誤率。
分別對兩種系統(tǒng)進(jìn)行攻擊,在IEEE 30節(jié)點系統(tǒng)中進(jìn)行35次節(jié)點的單點攻擊,每個數(shù)據(jù)編號攻擊兩次,其中首次注入的虛假數(shù)據(jù)偏差較小,第二次數(shù)據(jù)較原始數(shù)據(jù)偏差較大,檢測結(jié)果發(fā)生了漏檢、誤檢以及少量無法檢測的情況。在IEEE 118節(jié)點系統(tǒng)中,選取前35個數(shù)據(jù)編號,注入同樣數(shù)值大小的假數(shù)據(jù),檢測結(jié)果同樣發(fā)生了漏檢和誤檢的情況。
網(wǎng)絡(luò)入侵檢測系統(tǒng)的指標(biāo)主要包括3類,即檢測率、誤報率和漏報率。
檢測率是受到虛假數(shù)據(jù)入侵攻擊時,系統(tǒng)能夠正確報警的概率。通常利用已知入侵攻擊的實驗數(shù)據(jù)集合來測試系統(tǒng)的檢測率。
圖7 IEEE 118節(jié)點系統(tǒng)虛假數(shù)據(jù)注入下的檢測結(jié)果
圖8 兩種系統(tǒng)中兩種方法的檢測結(jié)果
(15)
式中:TP——被判定為無攻擊,且實際無攻擊存在的情況數(shù);
FP——被判定為有攻擊存在,但實際未攻擊的情況數(shù)。
誤報率是系統(tǒng)把正常行為作為入侵攻擊而進(jìn)行報警的概率和把一種周知的攻擊錯誤報告為另一種攻擊的概率。
(16)
式中:FN——被判定為無攻擊發(fā)生,實際卻發(fā)生攻擊的情況數(shù);
TN1——被判定有攻擊存在,但實際與判定的攻擊不一致的次數(shù);
TN——被判定為有攻擊存在,實際也發(fā)生攻擊的情況數(shù)。
漏報率指被檢測網(wǎng)絡(luò)受到入侵攻擊時,系統(tǒng)不能正確報警的概率。通常利用已知入侵攻擊的實驗數(shù)據(jù)集合來測試系統(tǒng)的漏報率。
(17)
式中:N——總體攻擊發(fā)生的次數(shù)。
采用上述3個指標(biāo)對數(shù)據(jù)進(jìn)行分析,結(jié)果如表1所示。
表1 結(jié)果分析 單位:%
由表1可以看出,兩種針對傳統(tǒng)惡意數(shù)據(jù)的檢測方法對虛假數(shù)據(jù)注入的檢測效果不好,存在較低的檢測率和較高的誤報率、漏報率。這說明殘差檢測對虛假數(shù)據(jù)注入攻擊的局限性較大。
在對電力系統(tǒng)惡意數(shù)據(jù)的檢測方面,J(x)屬于總體檢測,在電力系統(tǒng)規(guī)模較小,量測的冗余度較小時,有較高的靈敏度。rW與rN檢測法不屬于總體型檢測法,電力系統(tǒng)規(guī)模不影響檢測靈敏度。此外,不良數(shù)據(jù)的檢測能力與量測系統(tǒng)中測點的配置、不良數(shù)據(jù)值的大小以及檢測門檻值有關(guān)。測點配置越完善,不良數(shù)據(jù)值愈大,檢測門檻值愈低,檢測不良數(shù)據(jù)的能力也愈強(qiáng)。單數(shù)過低的門檻值又會使誤檢概率增大[15]。
經(jīng)過反復(fù)實驗證明,殘差檢測法通過判斷測量值與量測估計值之差是否超過界限來檢查,并不能適應(yīng)虛假數(shù)據(jù)注入的情況。特定的攻擊矢量,使殘差不包含攻擊矢量的影響,導(dǎo)致檢測失敗。
在當(dāng)前的智能電網(wǎng)中,FDIA發(fā)生在攻擊者對網(wǎng)絡(luò)拓?fù)洳糠忠阎那闆r下,通過構(gòu)造攻擊向量,篡改電力系統(tǒng)的狀態(tài)估計值,導(dǎo)致電網(wǎng)出現(xiàn)故障報警,從而使電網(wǎng)陷入錯誤狀態(tài)。本文在虛假數(shù)據(jù)注入理論的基礎(chǔ)上,提出了一種電力虛假數(shù)據(jù)注入攻擊的殘差檢測方法,可以對IEEE 30和IEEE 118節(jié)點系統(tǒng)拓?fù)浣Y(jié)構(gòu)上指定的數(shù)據(jù)節(jié)點發(fā)起任意數(shù)值的單點攻擊。實驗結(jié)果表明,利用傳統(tǒng)的電力系統(tǒng)惡意數(shù)據(jù)檢測方法,存在較大的漏檢和誤檢風(fēng)險。在虛假數(shù)據(jù)注入攻擊下,基于殘差的檢測算法不能滿足系統(tǒng)對準(zhǔn)確性的要求。