伍 虹, 楊 超, 魯 杰, 徐立立
(1 貴州大學(xué)電氣工程學(xué)院, 貴陽 550025; 2 中國電建貴陽勘測設(shè)計研究院, 貴陽 550081)
近年來,隨著通信技術(shù)以及自動化技術(shù)的迅速發(fā)展,傳統(tǒng)工業(yè)設(shè)備需面向信息化、網(wǎng)絡(luò)化發(fā)展,與人們?nèi)粘I钕⑾⑾嚓P(guān)的電力系統(tǒng)正逐漸發(fā)展成一個典型的信息物理系統(tǒng)(Cyber-Physical System,CPS)[1]。 但是由于基礎(chǔ)通信網(wǎng)絡(luò)和信息化設(shè)備自身的缺陷以及弊端,電力CPS 在加速構(gòu)建的同時,電力系統(tǒng)的安全穩(wěn)定運(yùn)行也面臨新的挑戰(zhàn)[2]。
數(shù)據(jù)采集和監(jiān)視控制系統(tǒng)(Supervisory Control And Data Acquisition, SCADA)作為電力系統(tǒng)控制中心取得基礎(chǔ)量測數(shù)據(jù)和指令傳輸控制的關(guān)鍵環(huán)節(jié),已成為電力CPS 網(wǎng)絡(luò)攻擊的重要目標(biāo),例如:2016年烏克蘭國家電網(wǎng)因遭到黑客發(fā)起的電力網(wǎng)絡(luò)攻擊而發(fā)生區(qū)域大面積停電,造成烏克蘭西部停電超3小時,波及數(shù)以百萬計人口的正常生活[3]。 2009 年Liu Yao[4]等首次提出虛假數(shù)據(jù)注入攻擊(False Data Injection Attack, FDIA)定義,指出了靜態(tài)狀態(tài)估計中存在的不良數(shù)據(jù)檢測(Bad Data Detection, BDD)原理性漏洞,黑客能在掌握一定電力系統(tǒng)拓?fù)湫畔⒌那闆r下,通過構(gòu)造虛假數(shù)據(jù)攻擊向量并注入關(guān)鍵量測裝置,以達(dá)到既躲過不良數(shù)據(jù)檢測又篡改系統(tǒng)狀態(tài)估計數(shù)值的目的。 作為能量管理系統(tǒng)(Energy Management System, EMS)中的重要組成部分,精準(zhǔn)的狀態(tài)估計對電力CPS 安全控制和經(jīng)濟(jì)調(diào)度起到關(guān)鍵性作用。 FDIA 作為一種針對電力系統(tǒng)量測數(shù)據(jù)完整性的新型攻擊,由于其強(qiáng)大的破壞性和特殊的隱蔽性,成為近年來電力CPS 中最具威脅性的攻擊方式之一[5]。 從攻擊者的角度出發(fā),國內(nèi)外已有大量關(guān)于FDIA 模型研究,針對虛假數(shù)據(jù)注入攻擊的檢測研究具有實(shí)際意義。 如:文獻(xiàn)[6]提出一種在未獲得完整電網(wǎng)拓?fù)浣Y(jié)構(gòu)信息情況下,利用狀態(tài)估計過程進(jìn)行隱蔽注入攻擊的方法;文獻(xiàn)[7]認(rèn)為可以在不需要電網(wǎng)任何拓?fù)浣Y(jié)構(gòu)和線路信息,黑客攻擊者仍然能夠發(fā)動一種廣義上的FDIA;文獻(xiàn)[8]提出一種具有多項式的時間復(fù)雜度的注入攻擊算法,最大程度平衡攻擊向量引起的攻擊影響和被檢驗(yàn)到的概率;文獻(xiàn)[9]研究考慮對多個系統(tǒng)狀態(tài)變量進(jìn)行注入攻擊時,如何最小化攻擊向量建模的問題。
本文以靜態(tài)狀態(tài)估計—加權(quán)最小二乘法(Weighted Least Square, WLS)和自適應(yīng)無跡卡爾曼濾波(Adaptive Unscented Kalman Filter, AUKF)之間的估計值為基礎(chǔ),以歐幾里得距離作為檢測指標(biāo)并設(shè)定檢測閾值,通過實(shí)時比較二者偏差值來判定系統(tǒng)是否遭到虛假數(shù)據(jù)注入攻擊。 以IEEE-14 標(biāo)準(zhǔn)節(jié)點(diǎn)系統(tǒng)為例進(jìn)行仿真,仿真結(jié)果表明此方法能夠有效檢測出虛假數(shù)據(jù)注入攻擊。
在電力系統(tǒng)潮流計算中,量測方程表示為式(1):
其中,z表示基于SCADA 系統(tǒng)采集得到的量測值(m維列向量);x表示待估計的狀態(tài)變量集合(n維列向量,包含節(jié)點(diǎn)電壓的幅值和相角);e為量測誤差;h(·) 表示量測量和狀態(tài)變量之間的非線性關(guān)系。
由于電力系統(tǒng)的高度非線性,直接對于式(1)應(yīng)用加權(quán)最小二乘法求解狀態(tài)變量存在計算量大,易發(fā)散等問題,因此在實(shí)際應(yīng)用中,往往將其簡化為直流模型進(jìn)行計算,即式(1)簡化為式(2):
其中,H為m×n維雅可比矩陣。
當(dāng)量測值中存在不良數(shù)據(jù),則可以通過最大標(biāo)準(zhǔn)化殘差(Largest Normalized Residual, LNR)方法進(jìn)行不良數(shù)據(jù)檢測,殘差r定義為式(3):
在系統(tǒng)正常運(yùn)行下,由量測噪聲引起的殘差r服從自由度為k=m - n(其中m為量測裝置數(shù),n為狀態(tài)變量),顯著性水平為α的分布。 由檢測機(jī)制可知,當(dāng)‖r‖2>τ時,即系統(tǒng)量測數(shù)據(jù)中存在不良數(shù)據(jù);若‖r‖2<τ,則認(rèn)為沒有不良數(shù)據(jù),其中τ為檢測閾值。
虛假數(shù)據(jù)注入攻擊是利用不良數(shù)據(jù)檢測缺陷。假設(shè)a=[a1,a2,a3,…,am]T表示為攻擊發(fā)起者在量測數(shù)據(jù)中注入的一組攻擊向量,則實(shí)際量測數(shù)據(jù)為za=z+a;從而狀態(tài)變量變化為xa=x+c,其中c為受攻擊后偏差向量,c=[c1,c2,c3,…,an]T。 此時殘差表達(dá)式經(jīng)式(4)和式(5)的推導(dǎo)后,可表示為式(6):
至此,在不良數(shù)據(jù)檢測機(jī)制下,該組攻擊向量成功繞過最大標(biāo)準(zhǔn)化殘差檢驗(yàn),完成虛假數(shù)據(jù)注入攻擊,成為危害電力系統(tǒng)穩(wěn)定運(yùn)行的隱患。
無跡卡爾曼濾波(Unscented Kalman Filter,UKF)以卡爾曼濾波為基礎(chǔ),通過引入無跡變換(Unscented Transform, UT)來獲取近似非線性變換后的特性。 在動態(tài)狀態(tài)估計中,狀態(tài)方程和量測方程如式(8)和式(9):
其中,f(xk) 為狀態(tài)轉(zhuǎn)移函數(shù);h(xk+1) 為狀態(tài)變量和量測值的非線性關(guān)系;qk為系統(tǒng)誤差;rk+1為服從均值為0 的加性高斯白噪聲的量測誤差。
通過UT 變換獲得Sigma 點(diǎn)集,同時為避免采樣時的非局部效應(yīng)和高階項誤差,本文采取對稱比例修正法的采樣策略。 對于一個n維系統(tǒng),Sigma 采樣策略和均值、方差的權(quán)值計算分別如式(10)和式(11)所示:
一共取2n+1 個Sigma 點(diǎn),式(10)中的λ=a2(n+κ)-n為尺度因子,用于控制預(yù)測誤差;a為比例修正因子,κ為自由參數(shù),通常取0;β為高階矩陣信息的權(quán)系數(shù),通常取2。
經(jīng)對稱比例修正法采樣得到的Sigma 點(diǎn)集{χi}滿足式(12)和式(13):
再一次對Sigma 點(diǎn)集{χi} 進(jìn)行非線性變換,得到{Yi},Sigma 點(diǎn)集{Yi} 滿足式(14)和式(15):
無跡卡爾曼濾波通過引入上述UT 變換對Sigma 點(diǎn)進(jìn)行非線性變換,使得狀態(tài)變量和協(xié)方差能夠達(dá)到至少二階以上的精度[10]。
2.2.1 狀態(tài)預(yù)測
根據(jù)所選采樣策略得到的Sigma 點(diǎn)集,進(jìn)行狀態(tài)變量x-和協(xié)方差陣Px的一步預(yù)測,式(16)~式(18):
2.2.2 量測預(yù)測
根據(jù)狀態(tài)預(yù)測步得到的狀態(tài)變量和協(xié)方差陣構(gòu)造新的Sigma 點(diǎn)集,并進(jìn)行下一步預(yù)測,式(19)和式(20):
2.2.3 濾波更新
根據(jù)前兩步預(yù)測結(jié)果計算卡爾曼增益,并對狀態(tài)變量以及協(xié)方差陣進(jìn)行更新,式(21)~式(25):
至此完成UKF 的濾波過程。
由于電力系統(tǒng)的多維非線性,卡爾曼濾波一步預(yù)測值中的狀態(tài)轉(zhuǎn)移方程f(xk) 較難確定。 Holt′s兩參數(shù)指數(shù)平滑法通過過去幾個時刻的歷史數(shù)據(jù)進(jìn)行預(yù)測,可以近似得到狀態(tài)轉(zhuǎn)移函數(shù)fHolt,具有計算速度快、不占用系統(tǒng)資源等優(yōu)勢[11]。 其表達(dá)式為式(26)~式(28):
其中,Sk為水平分量;bk為傾斜向量;α和β為平滑系數(shù);取值為[0,1] 。
Holt′s 兩參數(shù)平滑法中的α和β選取通過R 語言結(jié)合歷史數(shù)據(jù)得到,當(dāng)α取0.957,β取0.145 時最為合適。
使用兩參數(shù)指數(shù)平滑法預(yù)測的系統(tǒng)噪聲未知,有可能隨時間發(fā)生變換,因此不能簡單假設(shè)Qk為常數(shù)陣。 針對噪聲時變問題,本文將基于漸消記憶指數(shù)加權(quán)法的Sage-Husa 噪聲估值器應(yīng)用于無跡卡爾曼濾波方法中,以此減小未知噪聲對模型精度的影響。 改進(jìn)的Sage-Husa 噪聲估值器表達(dá)式為式(29)~式(31):
將Sage-Husa 噪聲估值器引入無跡卡爾曼濾波中,實(shí)現(xiàn)自適應(yīng)無跡卡爾曼濾波。
傳統(tǒng)電力系統(tǒng)在正常運(yùn)行時,通常使用加權(quán)最小二乘法,根據(jù)某個時間斷面采集得到的量測值來進(jìn)行靜態(tài)狀態(tài)估計,以得到某時刻的狀態(tài)結(jié)果。 而在電力系統(tǒng)遭遇虛假數(shù)據(jù)注入攻擊時,由于WLS 等估計方法的靜態(tài)特性,被惡意篡改的量測值會使得相應(yīng)時刻的WLS-SE 遠(yuǎn)離真實(shí)值。 而AUKF 由于Holt's 指數(shù)平滑法近似得到的轉(zhuǎn)移函數(shù),其狀態(tài)估計過程具有一定的遲滯性,同時其估計值由預(yù)測值和量測值共同決定,由虛假數(shù)據(jù)注入引起的狀態(tài)偏移量很小。 因此,可以通過二者狀態(tài)估計值之間的偏差來檢測FDIAs。 本文采用歐幾里得距離,即n維空間中兩點(diǎn)的真實(shí)距離作為檢測指標(biāo), 式(32):
為驗(yàn)證所提檢測方法,本文采用IEEE14 節(jié)點(diǎn)標(biāo)準(zhǔn)系統(tǒng),用MATLAB 軟件及MATPOWER 仿真包獲取量測數(shù)據(jù),并對系統(tǒng)每五分鐘進(jìn)行一次數(shù)據(jù)采樣,一天二十四小時共計288 次。 基于AUKF 檢測虛假數(shù)據(jù)攻擊的仿真結(jié)果如下:
(1)系統(tǒng)正常運(yùn)行時,取某一時間斷面T= 30時刻,正常運(yùn)行時IEEE-14 節(jié)點(diǎn)電壓幅值與相角如圖1 所示。 通過仿真計算得到系統(tǒng)正常運(yùn)行時殘差‖r‖2為0.055 8。根據(jù)統(tǒng)計學(xué)理論,系統(tǒng)冗余度k=m-n=14,選擇顯著性水平為0.05,由卡方分布表得到不良數(shù)據(jù)檢測閾值,此時由量測噪聲引起的殘差‖r‖2遠(yuǎn)小于不良數(shù)據(jù)檢測閾值。同時,由歐式檢測指標(biāo)計算得該時刻電壓幅值歐氏距離du為0.093 7,電壓相角歐氏距離dθ為2.429 8。
圖1 正常運(yùn)行時IEEE-14 節(jié)點(diǎn)電壓幅值與相角Fig. 1 Voltage amplitude and phase angle of IEEE-14 node during normal operation
(2)注入2 攻擊時,取T=50 時刻,模擬對量測系統(tǒng)注入虛假數(shù)據(jù)攻擊向量[12]。 注入攻擊時IEEE-14 節(jié)點(diǎn)電壓幅值與相角如圖2 所示,此時系統(tǒng)運(yùn)行時殘差‖r‖2為0.203 2,注入攻擊后的殘差遠(yuǎn)小于不良數(shù)據(jù)檢測閾值τ=χ214,0.05=23.685,無法觸發(fā)不良數(shù)據(jù)檢測機(jī)制。 注入攻擊前后線路功率對比如圖3 所示,此次虛假數(shù)據(jù)注入攻擊造成線路1-2(即1 號量測裝置)有功功率和無功功率阻塞,其中有功功率增漲至系統(tǒng)正常運(yùn)行時的131%,無功功率增漲至系統(tǒng)正常運(yùn)行時的364%,已成功發(fā)起一次虛假數(shù)據(jù)注入攻擊。 由此看見,虛假數(shù)據(jù)注入攻擊在繞過傳統(tǒng)不良數(shù)據(jù)檢測的情況下,對電力系統(tǒng)的正常穩(wěn)定運(yùn)行已造成嚴(yán)重隱患。 根據(jù)歐氏距離檢測指標(biāo),注入虛假數(shù)據(jù)攻擊向量后,電壓幅值歐氏距離du為0.134 6,電壓相角歐氏距離dθ為7.249 6。
圖2 注入攻擊時IEEE-14 節(jié)點(diǎn)電壓幅值與相角Fig. 2 Voltage amplitude and phase angle of IEEE-14 node during injection attack
圖3 注入攻擊前后線路功率對比Fig. 3 Comparison of line power before and after injection attack
(3)對全局節(jié)點(diǎn)狀態(tài)變量進(jìn)行分析,全局節(jié)點(diǎn)歐氏距離du與dθ的變化如圖4 所示。 采樣時刻T <50 時,系統(tǒng)正常運(yùn)行,全局du和dθ保持一個較低水平;當(dāng)采樣時刻T=50,向系統(tǒng)注入虛假數(shù)據(jù)攻擊向量,在遭遇到FDIA 之后,電壓幅值和電壓相角歐式距離陡然增漲。 全局殘差變化如圖5 所示,可以看到在T=50 時刻前后,全局殘差均小于不良數(shù)據(jù)檢測閾值。 在此期間,根據(jù)全局節(jié)點(diǎn)歐氏距離變化趨勢,分別設(shè)置電壓幅值歐氏距離檢測閾值τU=0. 105和電壓相角歐氏距離檢測閾值τθ=3,當(dāng)du和dθ二者指標(biāo)超過攻擊檢測閾值τU和τθ時,即可立即檢測出電力系統(tǒng)遭受虛假數(shù)據(jù)注入攻擊;使用均方根誤差(Root-Mean Square-Error,RMSE)指標(biāo)對攻擊前后電壓幅值和電壓相角的精度進(jìn)行評價。 攻擊前后AUKF 性能見表1,在遭受虛假數(shù)據(jù)注入攻擊后,AUKF 仍然能得到較好估計效果。
表1 攻擊前后AUKF 性能Tab. 1 AUKF performance before and after attack
圖4 全局節(jié)點(diǎn)歐式距離變化Fig. 4 Euclidean distance change of global nodes
圖5 全局殘差變化Fig. 5 The global residual
本文提出了一種基于自適應(yīng)無跡卡爾曼濾波的虛假數(shù)據(jù)注入攻擊檢測方法,對電力系統(tǒng)內(nèi)部進(jìn)行狀態(tài)估計,同時利用靜態(tài)狀態(tài)估計的實(shí)時性和自適應(yīng)無跡卡爾曼濾波的遲滯性,引入歐幾里得距離作為檢測系統(tǒng)是否注入虛假數(shù)據(jù)的指標(biāo),并通過設(shè)置合理閾值,在IEEE-14 標(biāo)準(zhǔn)節(jié)點(diǎn)系統(tǒng)上進(jìn)行仿真試驗(yàn)。 試驗(yàn)表明:
(1)自適應(yīng)無跡卡爾曼濾波相比傳統(tǒng)靜態(tài)狀態(tài)估計具有估計精度高、抗干擾能力強(qiáng)等優(yōu)點(diǎn),即使受到虛假數(shù)據(jù)注入攻擊,狀態(tài)變量變化仍然很?。?/p>
(2)自適應(yīng)無跡卡爾曼濾波能夠同時評估當(dāng)前系統(tǒng)運(yùn)行狀態(tài)并預(yù)測下一時刻系統(tǒng)的狀態(tài);
(3)本文所提方法能夠有效、快速地檢測出虛假數(shù)據(jù)的注入,避免電力系統(tǒng)因虛假數(shù)據(jù)注入攻擊做出錯誤動作。