彭 莎,孫銘陽,張鎮(zhèn)勇,2,鄧瑞龍,程 鵬
(1. 浙江大學控制科學與工程學院,浙江省 杭州市 310027;2. 貴州大學計算機科學與技術學院,貴州省 貴陽市 550025)
隨著控制、通信和計算機等信息技術的發(fā)展,傳統(tǒng)電力系統(tǒng)廣泛引入了傳感、網絡和計算等技術,逐步發(fā)展成為信息系統(tǒng)與物理系統(tǒng)深度融合并廣泛交互的信息物理系統(tǒng)(cyber-physical system,CPS)[1]。電力CPS 是關系國民經濟和國家安全的重大關鍵基礎設施。隨著信息化程度的不斷深入,電力CPS的安全運行面臨著各種潛在網絡攻擊的威脅[2]。為保障電力系統(tǒng)的安全穩(wěn)定運行,面向電力CPS 網絡安全的研究受到了學術界和工業(yè)界的廣泛關注。
近年來,機器學習技術在計算速度以及學習能力方面發(fā)展迅速,在計算機視覺、醫(yī)學診斷以及異常檢測等領域的應用表現可圈可點[3-5]。各領域都在進行技術革新,向智能化時代邁進。在電力CPS 領域,各項信息技術的深度融合使得電力系統(tǒng)數據量顯著增長,為數據驅動的機器學習方法應用提供了便利。將機器學習方法應用于電力CPS 網絡安全領域,能夠有效提高數據解析度,克服電力系統(tǒng)的日益龐大以及網絡攻擊的復雜多變引入的無法準確構建模型的難題。同時,一些機器學習方法還能滿足電力系統(tǒng)的實時性需求[6]。
目前,已有大量文獻對機器學習在電力CPS 網絡安全領域的應用進行了探索[2,6-10],但現有的電力CPS 領域的綜述文章并未對這一研究課題進行歸納總結。一部分文章關注于機器學習相關技術在整個電力系統(tǒng)中的應用,對網絡安全部分的探討不夠具體和深入[6-8];另一部分文章對電力CPS 網絡安全中的關鍵技術進行了調研,但缺少具體闡明機器學習技術在網絡安全各環(huán)節(jié)的應用情況[2,9-10]。鑒于此,本文對機器學習在電力CPS 網絡安全中的應用進行了全面分類與總結。
本文首先對電力CPS 網絡安全進行了概述,介紹了電力CPS 網絡安全要求以及面臨的挑戰(zhàn),接著簡要介紹了各類機器學習方法,并總結了機器學習方法應用于電力CPS 網絡安全領域的契機與優(yōu)勢。然后,從攻防2 個角度分別出發(fā),具體闡述了電力CPS 網絡安全研究中面臨的問題,全面調研了機器學習應用于電力CPS 網絡安全的現有文獻。其中,攻擊角度的應用包括拓撲信息推斷、攻擊資源優(yōu)化以及攻擊構建,防御角度的應用包括攻擊前的保護、攻擊時的檢測以及緩解。最后,對該研究領域存在的挑戰(zhàn)以及未來的研究方向進行了分析與展望。
電力CPS 的物理系統(tǒng)與信息系統(tǒng)深度融合并廣泛交互,系統(tǒng)中各設備的相互作用由系統(tǒng)的動態(tài)特性以及協(xié)調系統(tǒng)運行的規(guī)則決定。電力CPS 的具體結構如圖1 所示。物理系統(tǒng)由與物理世界直接連接的一次設備組成,主要涉及發(fā)電、輸電、配電系統(tǒng)中的設備,包括光伏板、發(fā)電機、變壓器以及輸/配電路等。這些設備通過量測設備、執(zhí)行器以及信息系統(tǒng)進行交互,控制電能的生產、傳輸和分配。信息系統(tǒng)由二次設備(信息通信單元)組成,包括路由器、交換機和集線器等通信網絡組件、控制系統(tǒng)主機等計算組件及數據庫等設備。這些設備使用公共通信協(xié)議在數字鏈路上互聯(lián)、共享、存儲并處理來自物理系統(tǒng)的數據,執(zhí)行廣域監(jiān)測、控制和保護[1]。具體來說,物理系統(tǒng)的運行情況由量測設備進行采集,采集得到的實時量測數據通過通信網絡傳輸給控制中心,控制中心基于所接收的數據進行計算,更新控制策略,控制器根據控制策略輸出適當的控制指令并傳輸給執(zhí)行器,執(zhí)行器通過被控介質控制物理系統(tǒng)的運行。與直接對物理設備產生影響的物理安全問題不同,電力CPS 的網絡安全問題是指利用電力信息系統(tǒng)的安全漏洞,破壞數據的機密性、完整性和可用性,導致錯誤的規(guī)劃判斷、財產損失和用戶隱私泄露等,間接影響物理系統(tǒng)的安全問題[2]。隨著物理系統(tǒng)與信息系統(tǒng)的耦合逐漸深入,信息物理耦合交互過程更為復雜,電力CPS 的運行過程對信息系統(tǒng)更具依賴性。然而,信息系統(tǒng)的通信環(huán)境較為開放,為電力CPS 增加了更多的攻擊面,使得電力CPS 面臨著越來越多網絡攻擊的威脅。因此,增強電力CPS 網絡安全至關重要。
圖1 電力CPS 結構Fig.1 Framework of cyber-physical power system
電力CPS 網絡安全旨在確保電力系統(tǒng)的健壯性、安全性以及抵御攻擊的彈性,為此電力CPS 需要滿足以下3 點要求[11]。
要求1:攻擊檢測以及自愈。在信息系統(tǒng)運行代碼維度方面,攻擊檢測是保障電力CPS 安全穩(wěn)定運行的關鍵環(huán)節(jié)。電力CPS 需要及時掌握系統(tǒng)運行狀態(tài)、預測運行趨勢、快速檢測與識別攻擊導致的異常事件。此外,從物理系統(tǒng)設備維度出發(fā),需要保障電力基礎設施的可用性,因此,電力CPS 需要彈性運行,具有自愈能力,檢測出攻擊后能夠自動干預,快速隔離攻擊并及時自我修復[12]。
要求2:身份認證以及訪問控制。在信息系統(tǒng)協(xié)議維度方面,電力CPS 需要提供可靠的身份認證以及訪問控制等機制來防止未經授權的訪問,以保證信息系統(tǒng)中的電子信息設備以及相關數據的安全。
要求3:安全的通信協(xié)議以及架構。為確保信息系統(tǒng)網絡維度的安全,電力CPS 需要將防御策略集成到網絡協(xié)議和體系結構中,使得電力CPS 能夠實現安全高效的通信。
當前,針對電力CPS 網絡安全的研究也圍繞上述3 點要求展開。由于要求2 和3 與電力系統(tǒng)物理特性關聯(lián)較弱,可以直接遷移或擴展其他領域的相關方法或架構,例如針對要求2 的現有研究通常將信息安全和計算機安全領域的相關工作遷移到電力CPS 領域[13-14];針對要求3 的網絡架構開發(fā)設計大多也由現有的架構改進而來[15-16]。因此,電力CPS網絡安全相關研究大部分關注要求1。針對要求2和3 的研究大都致力于設計合適的加密機制和通信架構,較少應用機器學習方法,所以本文主要關注要求1。針對要求1,傳統(tǒng)的機理建模方法利用電力系統(tǒng)的物理特性以實現攻擊檢測和自愈[17-19]。然而,隨著電力CPS 規(guī)模的日益龐大以及網絡攻擊種類的增加,機理建模方法面臨建模困難和計算復雜度高等挑戰(zhàn)。因此,學術界開始廣泛探索應用機器學習方法以滿足該安全要求。
機器學習是利用經驗來提升性能或做出準確預測的計算方法[20]。其中,“經驗”通常以“數據”形式存在,每條數據由關于一個對象的多個特征組成,特征反映了該對象在某方面的表現或性質。在機器學習中,數據的集合稱為數據集。一個完整的數據集通常被劃分為訓練集與測試集,機器學習基于訓練集訓練模型,通過測試集評價模型效果?;谀P蛯π碌臄祿M行判斷的過程稱為預測,預測任務分為分類、回歸以及決策等。根據所需數據集類型的不同,可以將機器學習分為無監(jiān)督學習、監(jiān)督學習、半監(jiān)督學習和強化學習。
無監(jiān)督學習所需數據集為未標記數據集,其基于未標記數據訓練模型,試圖挖掘出這些數據中隱含的共同特征[21]。根據訓練方式的不同,無監(jiān)督學習可分為不同的子類,常見子類包括降維與度量學習(例如主成分分析[22]、獨立成分分析[23])、聚類(例如K均值聚類[24]、局部異常因子法[25])和神經網絡(例如自組織映射網絡[26]、自編碼器[27])等。
監(jiān)督學習所需數據集為標記數據集,其基于標記數據訓練模型,學習數據與對應的標記之間存在的特定關系[21]。監(jiān)督學習根據訓練方式的不同可分為不同的子類,常見子類包括神經網絡(例如前饋神經網絡[28]、長短期記憶(long short-term memory,LSTM)人工神經網絡[29])、回歸(例如線性回歸[30]、邏輯回歸[31])、決策樹[32]和貝葉斯方法[33]等。
在半監(jiān)督學習所需數據集中,少量數據為標記數據,其余均為無標記數據,2 類數據一起訓練得到模型[34]。半監(jiān)督學習假設未標記數據與標記數據從同樣的數據源獨立同分布采樣而來,該假設說明未標記數據揭示的數據分布信息與標記數據是相關聯(lián)的,所以可以在僅使用標記數據的監(jiān)督學習中加入無標記數據提升模型性能,由此產生了半監(jiān)督學習。典型的半監(jiān)督學習算法包括半監(jiān)督核均值漂移聚類[35]和半監(jiān)督支持向量機[36]等。
強化學習所需數據通過與環(huán)境交互產生,智能體在環(huán)境中不斷嘗試和試驗來獲取數據并優(yōu)化動作策略[37]。動作策略是狀態(tài)到動作的映射,最優(yōu)策略描述了在給定狀態(tài)下采取何種動作將獲得最大的長期累積回報。強化學習用于解決序列決策問題。傳統(tǒng)的強化學習方法,例如Q 學習[38]用表格的形式表示值函數,只適用于狀態(tài)和動作空間較小的情況。為克服這一局限性,將深度神經網絡強大的表達能力與強化學習的決策能力相結合的深度強化學習算法被廣泛研究應用,例如異步優(yōu)勢行動者-評論家(asynchronous advantage actor-critic,A3C)算法[39]。
隨著大數據時代的來臨,機器學習已被廣泛應用于各個領域[3-5]。在電力CPS 領域,一方面,控制、通信和計算機等信息技術的深度融合使得與電力系統(tǒng)運行相關的數據量呈指數趨勢增長[6,40],為機器學習的應用提供了數據基礎;另一方面,高性能計算正以遠超摩爾定律的速度快速發(fā)展[41],其高速處理數據和執(zhí)行復雜計算的能力為機器學習的應用提供了硬件基礎。這2 個方面為機器學習在電力CPS 中的應用創(chuàng)造了良好條件。
此外,相較于傳統(tǒng)的機理建模方法,機器學習方法具有模型構建以及實時性需求2 個方面的優(yōu)勢。首先,隨著電力CPS 的規(guī)模日益擴大、信息物理耦合的不斷深入以及大規(guī)??稍偕茉吹慕尤?電力系統(tǒng)的模型構建日漸復雜,且網絡攻擊的復雜多變也為機理模型的建立引入了新的難題,使得無法準確構建模型已成為機理建模方法在電力CPS 網絡安全領域的應用瓶頸。機器學習方法將復雜的機理模型看作一個黑箱,通過擬合黑箱輸入與輸出間的映射關系實現數據驅動的求解方案,不僅擺脫了煩瑣的建模環(huán)節(jié)以及模型建立不準確對電力CPS 網絡安全研究帶來的影響[6],還能夠捕捉電力系統(tǒng)數據的時空相關性,實現基于數據維度的多方位網絡攻擊檢測。其次,電力CPS 網絡安全至關重要,需要及時對各類網絡攻擊進行檢測、識別、緩解以及隔離等,以免造成整個系統(tǒng)的崩潰。因此,電力CPS網絡安全領域的應用通常對實時性有著較高的要求。然而,實際的電力系統(tǒng)模型復雜龐大,網絡攻擊種類繁多,傳統(tǒng)的機理建模分析方法計算過程時間復雜度較高[42]。雖然由于應用場景和所選擇算法的不同,并非所有機器學習方法都具有實時性優(yōu)勢,但在電力CPS 網絡安全領域,機器學習方法的應用往往考慮了實時性需求。機器學習方法對物理模型依賴程度較低,通過數據擬合簡化電力CPS 問題[43-44],一定程度上降低了計算復雜度,且部分機器學習方法的模型訓練過程可以離線進行,減輕了實時計算負擔[20]。因此,在電力CPS 網絡安全領域,機器學習方法在滿足實時性需求方面更有優(yōu)勢,優(yōu)勢的大小與具體場景和算法選擇有關。
綜上所述,電力CPS 的網絡安全問題研究存在諸多理論制約和技術瓶頸,需要探索應用新的方法幫助其擺脫困境。在外在的條件支持以及內在的問題需求的雙向驅動下,利用數據進行快速預測的機器學習技術憑借其多方面的優(yōu)勢,在電力CPS 網絡安全領域逐漸嶄露頭角,已應用于自動電壓控制[45]、頻 率 控 制[46]、數 據 采 集 與 監(jiān) 控(supervisory control and data acquisition,SCADA)系統(tǒng)[47-48]、廣域測 量 系 統(tǒng)(wide area measurement system,WAMS)[49-50]、狀 態(tài) 估 計[51-53]、高 級 量 測 體 系(advanced metering infrastructure,AMI)[54-55]以 及 電力市場[56-58]等方面。
為確保電力CPS 網絡安全,提升攻擊檢測以及自愈能力,現有研究從攻、防2 個角度展開。攻擊角度研究的主要目的是分析電力CPS 面臨的潛在攻擊威脅,為防御設計提供指導。潛在攻擊威脅分析主要包括拓撲信息推斷、最小化攻擊資源、攻擊資源優(yōu)化以及攻擊構建等方面。目前,機器學習主要應用于拓撲信息推斷、攻擊資源優(yōu)化以及攻擊構建3 個方面。
針對電力CPS 的網絡攻擊手段繁多,例如拒絕服務攻擊、中間人攻擊、重放攻擊、旁路控制等[2]。實施這些攻擊不需要任何與電力系統(tǒng)相關的拓撲以及線路參數等物理信息,難以對電力物理系統(tǒng)造成影響,攻擊效果有限。如果攻擊者掌握相關物理信息,便可根據這些信息設計出對電力系統(tǒng)更具破壞力的攻擊,例如虛假數據注入攻擊(false data injection attack,FDIA)[59]。當前,針對電力CPS 的潛在攻擊威脅分析大都集中于此類需要相關物理信息的攻擊中。然而,這些信息通常被嚴格管理,攻擊者難以直接獲取。在電力CPS 中,信息系統(tǒng)環(huán)境較為開放,傳輸或存儲于信息系統(tǒng)中的電力系統(tǒng)日常運行數據較為容易獲取。因此,當前研究都以此為突破口,從較易獲取的量測數據中推導攻擊所需的電力系統(tǒng)拓撲信息[60]。為易于推導,該問題通常被表述為信號處理領域的盲源分離問題[61]。
機器學習方法能夠有效揭示數據間潛在的機理聯(lián)系,而不利用任何機理信息,為盲源分離問題提供可行解。無監(jiān)督學習中的降維與度量學習方法——獨立成分分析以及主成分分析,常用于解決盲源分離問題。部分僅需無標記數據的神經網絡方法也已被應用于電力系統(tǒng)物理信息挖掘。另外,無監(jiān)督聚類方法可以識別出與當前拓撲更相關的量測數據,幫助攻擊者更為準確地進行拓撲信息推斷。
一些研究利用主成分分析或獨立成分分析推導攻擊所需的電力系統(tǒng)信息。文獻[62-64]使用主成分分析將量測數據投影到前n個主成分上,其中n為狀態(tài)變量的個數,投影所得矩陣即為電力系統(tǒng)拓撲矩陣。若攻擊者能推導證明量測數據是若干個相互獨立的分量的線性組合,則使用獨立成分分析解混量測數據將更具合理性與準確性,因為獨立成分分析假設源數據彼此獨立且不為高斯分布,目標為最大化獨立性,而主成分分析對數據分布不做任何假設。線性獨立成分分析已被應用于推導攻擊所需關鍵信息[56]。然而,上述研究存在諸多局限之處,首先,上述研究都是基于直流(direct current,DC)潮流模型,在交流(alternating current,AC)潮流模型下算法準確性將大大降低;其次,基于矩陣分解的無監(jiān)督學習方法計算復雜度較高,不適用于大規(guī)模系統(tǒng)。為此,可以考慮將神經網絡應用于電力系統(tǒng)物理信息推導,其強大的非線性特征提取能力可以較為準確地提取出基于AC 潮流模型的系統(tǒng)物理信息,并且大多神經網絡算法可采用離線訓練,在線使用的方式,極大減輕了實時計算負擔,可適用于大規(guī)模系統(tǒng)。文獻[65]利用此思路,引入自注意生成式對抗網絡,基于攻擊區(qū)域的歷史量測數據以及攻擊區(qū)域與非攻擊區(qū)域之間的結線信息獲取電力系統(tǒng)相關物理信息。
然而,由于用于推斷的歷史量測數據往往與某個特定的拓撲相關聯(lián),因此上述方案僅在電力系統(tǒng)拓撲和相關參數固定時有效,難以應對通過主動改變電力系統(tǒng)參數值來防御FDIA 的移動目標防御策略[66]。為對抗該防御策略,可以從歷史數據中挑選出與當前拓撲更相關的量測數據用于推斷。文獻[67]使用具有噪聲的基于密度的空間聚類(densitybased spatial clustering of applications with noise,DBSCAN)方法識別出與當前拓撲更相關的量測數據,再通過獨立成分分析推導系統(tǒng)拓撲信息。然而,聚類和獨立成分分析過程所需計算時間較長,特別是聚類過程需要識別分類大規(guī)模系統(tǒng)的大范圍量測數據。因此,該研究方案在實時操作中存在瓶頸。
綜上所述,目前關于電力系統(tǒng)拓撲信息推斷的研究較少,且在大規(guī)模復雜系統(tǒng)上的性能表現以及實時操作存在局限性。為此,電力CPS 研究者可以從算法選擇上探索該問題的解決方案。近年來,關于非線性盲源分離問題的研究發(fā)展迅速,基于貝葉斯集合學習、基于自組織映射以及基于核的非線性盲源分離算法等都實現了較好的應用效果[68-70]。電力CPS 研究者可以根據電力系統(tǒng)量測數據的特點,選擇合適的非線性盲源分離問題算法,探索更為高效準確的實時拓撲信息推斷策略。
電力系統(tǒng)拓撲信息推導研究表明,海量的電力CPS 量測數據蘊含了許多關鍵信息,攻擊者可利用這些信息構造出極具破壞力的攻擊。因此,量測數據的機密性對保障電力CPS 安全不可忽視。
攻擊者掌握的攻擊資源往往有限,如何優(yōu)化攻擊資源的使用仍需要探討。由于電力CPS 中各個設備的功能、拓撲位置以及與其他設備的安全互相關性不同,因此攻擊不同設備對電力CPS 造成的影響有強弱之分[19]。為最大化攻擊造成的影響,攻擊者需要在攻擊實施前合理分配攻擊資源,確定攻擊目標。電力CPS 的結構與運行方式較為復雜,如果僅利用傳統(tǒng)的機理建模方法,通過時域仿真手段計算每種攻擊目標組合策略對電力系統(tǒng)造成的影響,計算量將十分龐大。另外,當攻擊目標的數量大于一時,攻擊者需要發(fā)起多次攻擊。一般來說,多次攻擊可分為連續(xù)攻擊和并發(fā)攻擊[71]。連續(xù)攻擊所需的并發(fā)資源相對較少,但其對電力系統(tǒng)造成的影響可能與并發(fā)攻擊相當甚至更嚴重。然而,由于連續(xù)攻擊的攻擊序列組合數較多,因此計算量將更為龐大。通常,可以將連續(xù)攻擊的攻擊序列確定問題看作一個序列決策問題進行求解。
相比傳統(tǒng)的機理建模方法,機器學習在模型構建以及實時性需求方面更具優(yōu)勢,可以利用電力系統(tǒng)海量的數據進行訓練,快速獲取最優(yōu)攻擊策略,最大限度利用攻擊資源。不同機器方法依照其不同的特性,被應用于攻擊資源優(yōu)化的不同方面,其中,無監(jiān)督學習主要用于攻擊目標的選擇,其應用優(yōu)勢在于能夠挖掘電力CPS 設備間的潛在聯(lián)系,對設備進行預分類,加速目標選擇過程;強化學習主要用于攻擊序列的設計,其應用優(yōu)勢在于免去了煩瑣的電力CPS 建模過程,并能實現在線序列決策,滿足實時性需求。
無監(jiān)督學習中的聚類學習可以將數據分組為多個由具有相似特征的對象組成的子集。利用聚類方法,可將電力系統(tǒng)各元件按照其某些特征劃分為若干不相交的子集,用于攻擊目標的選擇。如文獻[72]依照總線坐標,采用K均值聚類將電力系統(tǒng)各總線劃分為不同總線組,再選取每個總線組中功率最大的總線作為攻擊目標,其攻擊方式假設為攻擊者可以通過網絡入侵(例如釣魚攻擊、分布式拒絕服務攻擊以及蠻力攻擊等)致使線路切換。然而,聚類方法無法對連續(xù)攻擊問題的攻擊序列給出建議。
強化學習擅長解決順序決策問題,已應用于設計電力CPS 連續(xù)攻擊策略。文獻[71]考慮電路切換攻擊,提出了一個電力系統(tǒng)攻防雙方零和博弈模型,并利用Q 學習求解最優(yōu)攻擊序列。目前,利用強化學習設計連續(xù)攻擊策略的研究僅在小規(guī)模系統(tǒng)上進行了實驗驗證,大規(guī)模系統(tǒng)的狀態(tài)-動作空間較大,有效性難以考證。此外,在電力CPS 中,攻防雙方會根據當前的系統(tǒng)狀態(tài)及時調整攻防策略,即雙方的策略在博弈過程中是動態(tài)的且具有耦合性,而當前研究往往假設防守方的防守策略在每次博弈開始前已確定且整個博弈過程中不再改變,簡化了實際場景。
基于上述已有研究可知,當前研究還存在對攻擊效果影響因素考慮不全,將攻防場景過于簡化等問題,導致當前各研究方案的通用性及說服力較弱。為此,電力CPS 研究者需要在設計攻擊資源優(yōu)化方案時將更多因素納入考慮,例如文獻[72]僅依據坐標對總線進行聚類,而忽略了各總線的流量限制等其他物理特性。此外,當前研究往往假設攻擊方式為線路切換攻擊,因為不同的線路所連接的節(jié)點重要性不同,所以攻擊不同的線路造成的級聯(lián)影響通常具有強弱之分,使得選擇攻擊線路以及確定攻擊順序尤為重要。而針對其他一些攻擊方式(例如通過網絡攻擊造成發(fā)電器或者變壓器異常)的攻擊資源優(yōu)化問題,目前尚缺乏基于機器學習的研究對此進行探索。
針對攻擊資源優(yōu)化的研究對揭示電力CPS 的脆弱性,找出電力CPS 較薄弱的部分具有重要意義。電力系統(tǒng)操作人員可據此提前發(fā)現問題,采取適當的方案對脆弱部分加以保護。
當前,基于機理建模方法構建攻擊的方案通常是離線的,需要攻擊者較為準確地提前評估攻擊的表現以及隱蔽性[59,73]。在線攻擊方法通過與環(huán)境實時交互,獲取環(huán)境的即時反饋,免去了對攻擊效果的預判。恰當的在線攻擊方法能夠實時調整攻擊策略,使得攻擊在實現攻擊效果的同時,又能滿足隱蔽性要求。
相較機理建模方法,一方面,機器學習方法不需要對電力系統(tǒng)機理建模,不要求攻擊者掌握任何電力系統(tǒng)拓撲參數信息;另一方面,大部分機器學習方法能夠實現快速在線預測。這兩方面的優(yōu)勢為機器學習方法應用于電力CPS 在線攻擊方案的設計提供了可能。強化學習方法通過與環(huán)境交互來學習和優(yōu)化動作策略,已應用于電力CPS 在線攻擊的構建。
電力系統(tǒng)的狀態(tài)轉換過程可以看作一個馬爾可夫鏈,為強化學習的應用提供了基礎。文獻[45]將FDIA 的構建問題轉化為一個部分可觀察的馬爾可夫決策過程,并通過Q 學習求解。該研究將動作設定為對原始量測值調整的百分比,獎勵由目標總線前后電壓變化差值確定。然而,目前基于強化學習的序列攻擊構建方案停留于靜態(tài)攻擊策略求解層面,沒有考慮攻防雙方的動態(tài)博弈過程。
相比于離線攻擊構建方案[59,73],在線攻擊構建方案的關鍵優(yōu)勢在于對動態(tài)環(huán)境的及時響應。為此,電力CPS 研究者需要探索如何準確刻畫電力系統(tǒng)環(huán)境的動態(tài)特性以及環(huán)境中各動態(tài)變量的耦合性,以提高在線攻擊構建方案的性能表現。
探索攻擊構建方案的本質是加強并完善攻擊檢測方法等電力CPS 防御措施。電力系統(tǒng)操作人員可根據構建攻擊的原理反向推導,設計合適的防御方法。
目前,機器學習在電力CPS 潛在攻擊威脅分析中的應用分類如圖2 所示。
圖2 機器學習在潛在攻擊分析中的應用分類Fig.2 Classification of applications of machine learning in potential attack analysis
防御角度可分為4 個部分:攻擊前的保護、攻擊時的檢測、攻擊時的緩解和攻擊后的恢復。目前,各研究工作主要集中于前3 個部分,即安全保護、攻擊檢測和攻擊緩解。
電力CPS 網絡安全保護研究是指在電力CPS安全規(guī)劃階段,分析系統(tǒng)最重要以及面對網絡攻擊最脆弱的部分,以便對這些部分加強保護力度,防止網絡入侵。當前,該部分研究主要集中于脆弱性分析問題。
脆弱性分析是指找出電力系統(tǒng)中最脆弱的節(jié)點。這些節(jié)點遭受網絡攻擊后將對電力CPS 產生較大的影響,因此需要防御者在攻擊發(fā)生前對這些節(jié)點進行保護,防患于未然。脆弱性分析研究等價于4.2 節(jié)中介紹的攻擊資源優(yōu)化研究,只是分別以防御者和攻擊者的角度對問題進行剖析,因此這兩類問題使用的機理建模方法以及這些方法面臨的瓶頸也基本相同,即難以建立精確的系統(tǒng)模型以及計算復雜度過高。
為解決上述瓶頸問題,機器學習方法憑借其在模型構建以及實時性需求方面的優(yōu)勢,已應用于電力CPS 脆弱性分析領域。與機器學習方法在攻擊資源優(yōu)化問題上的應用類似,無監(jiān)督學習中的聚類方法能夠挖掘出數據間的內在關聯(lián),主要應用于識別電力CPS 最脆弱的節(jié)點;強化學習作為一種序列決策工具,主要應用于連續(xù)攻擊防御領域。
針對最脆弱節(jié)點的識別,文獻[74]提出了一個基于自組織映射神經網絡的聚類方案。文獻[55]應用K 均值聚類確定在不同程度的FDIA 下各節(jié)點的脆弱程度。相比K均值聚類方案,基于自組織映射神經網絡的聚類方案對非線性關系的擬合能力更強,更適合擁有復雜節(jié)點關系的電力CPS。
針對連續(xù)攻擊的防御研究,文獻[75]應用強化學習識別導致大停電的關鍵節(jié)點序列。目前,該類研究的局限之處在于沒有考慮攻防雙方的動態(tài)博弈過程。
綜上所述,電力CPS 脆弱性分析研究與攻擊資源優(yōu)化研究面臨的不足之處類似,即對防御效果影響因素考慮不全、將攻防場景過于簡化等問題。為此,電力CPS 研究者在設計防御方案時需要考慮更多可變因素,例如節(jié)點間的相關性、攻擊者的攻擊行為變化等,使防御策略更具實用性。
攻擊檢測是保障電力CPS 安全穩(wěn)定運行的重要一環(huán),及時準確的檢測方案能將攻擊帶來的影響最小化。面對復雜化的電力物理系統(tǒng)以及多元化的電力信息系統(tǒng),基于機理建模的檢測方法存在諸多理論制約和技術瓶頸。第一,電力CPS 網絡龐大且結構復雜,針對電力CPS 的網絡攻擊種類繁多,機理建模方法難以準確構建系統(tǒng)故障與攻擊特征之間的關聯(lián)關系;第二,當電力系統(tǒng)安全穩(wěn)定運行時,相鄰時刻的運行數據一般變化較小,因此運行數據在時間尺度上發(fā)生突變意味著該時刻發(fā)生攻擊的可能性較高,而多數機理建模方法無法在時間尺度上構建量測數據的相關性,一定程度上影響了檢測準確率;第三,攻擊檢測算法的實時性至關重要,然而機理建模方法的檢測過程較為耗時,難以滿足實時安全的要求。
機器學習方法克服了上述難題,其免去了煩瑣的建模步驟,利用海量數據揭示電力CPS 各尺度上的關聯(lián)關系,在線進行攻擊檢測[76]。
目前,應用機器學習檢測電力CPS 網絡攻擊的文獻主要關注一些常見的以及對電力系統(tǒng)影響較大的網絡攻擊,其具體可分為四大類:異常檢測、FDIA 檢測、斷路攻擊檢測和竊電檢測。此外,還有一些研究關注電力CPS 中其他網絡攻擊的檢測問題。
5.2.1 異常檢測
異常檢測用于檢測量測數據中的離群點,并不針對某一類特定的網絡攻擊。無監(jiān)督學習和監(jiān)督學習作為各領域常用的異常檢測方法,已被廣泛應用于電力CPS 網絡安全領域。此外,強化學習方法也已被應用于該領域。
文獻[77]和文獻[78]分別采用局部異常因子法以及獨立森林算法檢測同步相量測量單元(phasor measurement unit,PMU)數據是否遭受攻擊。文獻[79]應用主成分分析方法得到PMU 數據的核心子空間,通過判斷核心子空間是否發(fā)生改變進行攻擊檢測。上述檢測方案均假設訓練數據和測試數據的分布相同,若數據分布改變,則模型需要重新訓練。然而電力CPS 環(huán)境是動態(tài)的,其物理層和網絡層均面臨持續(xù)的變化,導致數據分布發(fā)生改變。電力CPS 攻擊檢測任務相關性較強,遷移學習方法可將已訓練好的檢測模型的相關參數遷移到新的檢測模型中。文獻[80]提出了一個基于深度神經網絡的遷移學習框架,用于攻擊檢測。
相比無監(jiān)督學習方法,監(jiān)督學習方法擁有數據標記作為指導,可更準確地識別各種攻擊。檢測結果的可解釋性對電力CPS 較為重要,因此一些文獻采用具有較高可解釋性的基于規(guī)則的機器學習方法檢測攻擊[81]。然而規(guī)則的生成耗時耗力,為克服這一缺陷,有研究采用兼顧可解釋性與消耗時間的決策樹進行實時網絡攻擊檢測[49]。神經網絡的可解釋性雖然欠佳,但具有較強的非線性特征提取能力,已被廣泛應用于電力CPS 異常檢測領域[82-84]。集成學習由多個弱分類器構成一個強分類器,以期在某些情況下提高檢測性能,極端梯度提升[85]以及自適應增強[86]等集成學習算法已應用于電力CPS 網絡攻擊檢測。
攻擊檢測問題也可設計為馬爾可夫決策問題并利用強化學習求解。文獻[87]將如何在誤報率最小的情況下最快檢測到電力CPS 網絡攻擊的問題設計為馬爾可夫決策問題,并基于強化學習求解。相比其他機器學習方法,強化學習方法關注于每一步動作所能得到的長期累計回報,通過合理設置獎勵函數可實現誤報率與檢測速度間的平衡。
5.2.2 FDIA 檢測
遭受FDIA 的數據仍遵循物理定律,可以繞過傳統(tǒng)的壞數據檢測方法。監(jiān)督學習、半監(jiān)督學習、無監(jiān)督學習以及強化學習方法已應用于FDIA 檢測研究。
監(jiān)督學習方法是最早應用于FDIA 檢測的機器學習方法。早期主要應用了一些淺層、相對簡單的監(jiān)督學習算法檢測FDIA,主要包括K最近鄰分類[88-89]、支持向量機[57,88-89]、稀疏邏輯回歸[88]、感知機[89]、自適應增強算法[89]、多核學習[89]以及貝葉斯推理[90]等。這些方法各具優(yōu)勢,其中K最近鄰分類和支持向量機分別在小規(guī)模系統(tǒng)和大規(guī)模系統(tǒng)中表現更佳,稀疏邏輯回歸在稀疏系統(tǒng)中的表現優(yōu)于前兩者,感知機對系統(tǒng)大小敏感性較低,自適應增強算法和多核學習對系統(tǒng)大小和數據稀疏性的變化更具魯棒性,貝葉斯推理方法的可解釋性較高。隨著計算能力以及系統(tǒng)運行數據量的攀升,基于深度神經網絡的攻擊檢測方案開始嶄露頭角,深度置信網絡(deep belief network,DBN)[58]、深 度 前 饋 神 經 網絡[91]、循 環(huán) 神 經 網 絡(recurrent neural network,RNN)[51]、卷 積 神 經 網 絡(convolutional neural network,CNN)[52]等算法已應用于FDIA 檢測,由于深度學習方法具有強大的非線性特征提取能力,RNN 還能捕獲連續(xù)系統(tǒng)狀態(tài)下數據的時間相關性,深度神經網絡的檢測性能普遍優(yōu)于前述淺層機器學習算法,但同時也犧牲了可解釋性。另外,還有一些文獻使用集成學習算法檢測FDIA,例如文獻[92]分別集成了決策樹、樸素貝葉斯、邏輯回歸、神經網絡以及支持向量機等多種分類器,并將它們的性能與單一分類器的性能進行了對比分析。
監(jiān)督學習需要大量的標記數據,但與電力CPS安全相關的標記數據往往難以獲得。半監(jiān)督學習利用少量的標記數據和大量的無標記數據進行學習。文獻[89]利用半監(jiān)督支持向量機檢測FDIA,是半監(jiān)督學習方法在此領域的首次應用。深度學習算法也可以采用半監(jiān)督的方式進行訓練,并已有研究將其應用于FDIA 檢測領域[53],該研究結合自編碼器與生成對抗網絡,將自編碼器的編碼部分作為生成對抗網絡的產生器。
與電力CPS 網絡安全相關的標記數據往往較少,因此許多研究應用無監(jiān)督學習方法檢測FDIA。主成分分析可以恢復由低秩分量和稀疏分量疊加而成的矩陣中的每個分量[93]。電力系統(tǒng)狀態(tài)在短時間內變化較小,實際量測值矩陣通常是低秩的;而攻擊矩陣由于攻擊者傾向于以最小的代價發(fā)起攻擊且一些量測數據可能受到保護,往往是稀疏的。因此,可以采用主成分分析恢復觀測矩陣中的每個分量,以檢測FDIA[47]。然而該方法的計算復雜度較高,難以實際應用。相較而言,聚類方法的時間復雜度更低,常用于異常分離,文獻[94]和文獻[48]分別使用模糊C 均值聚類以及局部異常因子法進行攻擊檢測。擅于提取非線性表達的自編碼器也可通過比較輸入與輸出間的重構誤差的方式檢測FDIA[95]。
文獻[96]將FDIA 檢測問題描述為局部可觀馬爾可夫決策過程,并采用深度強化學習技術求解。與傳統(tǒng)的強化學習方案相比,深度強化學習方案利用深度神經網絡擬合未知狀態(tài),更適用于狀態(tài)-動作空間較大的電力CPS 環(huán)境。
5.2.3 斷路攻擊檢測
傳統(tǒng)的機理建模方法已能較為準確地檢測斷路攻擊,然而隨著電力系統(tǒng)的規(guī)模日益增大,計算量較大的機理建模方法難以滿足實時檢測的要求,因此一些研究開始探索基于機器學習的檢測方法。目前該類研究較少,且僅有監(jiān)督學習的方法應用于該領域。
文獻[97]和文獻[98]分別使用支持向量機和線性回歸檢測斷路攻擊。文獻[99]研究并比較了支持向量機、樸素貝葉斯和K 最近鄰分類算法用于檢測斷路攻擊的性能表現,實驗結果表明基于樸素貝葉斯的檢測方案性能最佳。然而上述研究[97-99]只能檢測單條線路中斷,文獻[50]克服了這一局限性,結合貝葉斯推理以及前饋神經網絡的思想,可實時檢測多條線路中斷。
5.2.4 竊電檢測
異常檢測、FDIA 檢測以及斷路攻擊檢測的數據集通常來自遠程終端單元(remote terminal unit,RTU)或PMU,而竊電檢測的數據集通常來自提供用戶用電數據的電表。一般情況下,竊電不會導致電力系統(tǒng)的不安全或不穩(wěn)定,但會給電力公司造成一定的經濟損失。目前監(jiān)督學習、無監(jiān)督學習、半監(jiān)督學習均已應用于竊電檢測研究。
通常,普通用戶的數量遠超竊電用戶,使得訓練數據集不平衡。支持向量機可通過為正、反例分配不同的權值處理不平衡數據集,已應用于竊電檢測[100]。文獻[101]采用可處理不平衡數據集的隨機欠采樣自適應增強集成學習方法檢測竊電。電表數據蘊含的信息較多,神經網絡可準確、高效地學習自變量和因變量之間復雜的非線性關系,在竊電檢測領域應用十分廣泛,多層前饋神經網絡[54]、卷積神經網絡[102]、LSTM 網絡[103]均有所應用。其中,卷積神經網絡主要用于提取一天內不同時刻的電表數據與用戶是否竊電的關系;而LSTM 網絡擅長學習數據間的時間特性,被用于學習用電數據的長期依賴性。為同時捕獲順序數據的長短期特征,一些研究將LSTM 網絡與卷積神經網絡的思想相結合用于竊電檢測[104]。
對于某個給定用戶,竊電樣本有時很少甚至不存在,因此一些研究利用無監(jiān)督學習方法進行竊電檢測。文獻[105]使用規(guī)則歸納創(chuàng)建基于各類用戶特征的竊電檢測模型,但規(guī)則生成過程極具挑戰(zhàn)性且十分耗時。為克服此缺陷,一些研究使用聚類方法檢測竊電[106-108]。
雖然竊電樣本較少,但半監(jiān)督學習方法可最大限度利用這些樣本。基于自編碼器的半監(jiān)督學習模型已被應用于竊電檢測[109]。
5.2.5 其他攻擊檢測
電力CPS 網絡攻擊種類繁多,一些文獻對其他網絡攻擊檢測進行了研究。例如,基于支持向量機的分布式入侵檢測系統(tǒng)被用于檢測電力通信系統(tǒng)網絡層的攻擊[110]。監(jiān)督學習方法被應用于電力CPS時間同步攻擊[111]的檢測[46]。部分文獻利用機器學習算法檢測數據源標識混合攻擊,例如多粒度級聯(lián)森林算法[112]和前饋神經網絡算法[113]等。極限學習機技術被用于識別網絡入侵中被破壞的儀表[114]。樸素貝葉斯分類器被用于檢測針對負荷預測數據的網絡攻擊[115]。
上述各類針對不同攻擊的機器學習檢測算法優(yōu)缺點各異,需要根據實際應用背景與應用需求選擇合適的算法。例如,各類無監(jiān)督學習算法免去了成本較高的人工類別標注過程,但檢測精度往往低于監(jiān)督學習算法;半監(jiān)督學習算法能將少量的標注樣本利用起來以提高檢測精度;強化學習算法適用于求解序列決策問題,但將其應用于攻擊檢測領域需要將檢測問題重新定義為序列決策問題,過程較為復雜且難以帶來檢測性能的提高。在攻擊檢測算法的具體選擇上,也需要考慮各機器學習算法的特性,例如,樸素貝葉斯算法有較強的數學基礎,可解釋性強、對數據缺失不敏感,但其需要計算先驗概率且對輸入樣本的表達形式較敏感;K最近鄰算法檢測準確度高且能提取非線性特征,但其計算量較大且不適用于樣本集不平衡的情況;支持向量機算法可處理不平衡樣本集且檢測準確率較高,但其對缺失數據較敏感且核函數的選取較難;神經網絡可充分擬合復雜的非線性關系,檢測準確度高,但其需要大量的模型參數且可解釋性較差等。此外,各類攻擊檢測問題在實際應用中面臨著可用樣本數量較少、樣本集不均衡、檢測準確率與模型泛化能力難以兼顧以及模型可解釋性較差等難題。因此,電力CPS 研究者需要根據實際應用背景下的難點所在以及關于模型檢測精度、檢測速度、泛化能力、可解釋性等方面的應用需求,綜合考慮各機器學習算法的優(yōu)缺點,以挑選出合適的機器學習算法。
目前,利用機理建模方法或機器學習方法緩解針對電力CPS 網絡攻擊的研究相對較少。現有研究利用博弈論[116]或語義分析[117]的方法以緩解攻擊對電力系統(tǒng)帶來的影響,但這些方法面臨著模型構建困難以及計算資源消耗較多等局限性。近年來,部分研究將機器學習方法應用于攻擊緩解領域,這些研究主要集中于攻擊緩解中的數據恢復部分。
攻擊向量移除指移除被攻擊量測值中的攻擊注入部分,將量測數據恢復到未攻擊狀態(tài),以減輕數據完整性攻擊對電力CPS 的影響。對于該問題,機理建模方法無法挖掘數據間的深層聯(lián)系以及時間關聯(lián)性,難以實現電力數據恢復。
機器學習方法擁有強大的數據挖掘能力,使恢復被攻擊數據成為可能。目前無監(jiān)督學習和監(jiān)督學習方法已應用于該問題。
矩陣分解是數據恢復領域的常用方法[118]。為移除攻擊向量,可采用無監(jiān)督的矩陣分解技術,例如魯棒主成分分析[93],恢復低秩量測值矩陣和稀疏攻擊矩陣疊加而成的觀測矩陣中的各分量,從而得到實際量測矩陣[47]。但基于矩陣分解的方法計算復雜較高,且矩陣稀疏度會影響恢復精度。一些無監(jiān)督神經網絡算法,例如降噪自動編碼器[119]以及生成對抗網絡[120]可重建受FDIA 影響的量測值,以消除攻擊所致的偏差。然而上述方法均會使未受攻擊的量測部分被替換。
一些研究將監(jiān)督學習方法應用于攻擊向量移除中。文獻[121]采用貝葉斯狀態(tài)估計實時去除不可靠的量測值,并使用多層前饋神經網絡降低貝葉斯估計的計算復雜度。然而,貝葉斯技術需要系統(tǒng)先驗知識,對高度動態(tài)化的電力CPS 適應能力較差。卷積神經網絡在圖像去噪任務中具有較高的有效性[122]。為此,文獻[123]應用卷積神經網絡剔除被攻擊的量測值,然而該方法也會使未受攻擊的量測部分被替換。
當前,移除攻擊向量的研究主要面臨的難題是如何保證量測數據中未被攻擊部分的完整性,求解該難題的前提在于準確定位量測數據中被攻擊的部分。隨后,需要最大限度保護未被攻擊部分在攻擊向量移除過程中不被改動,以使恢復得到的量測數據更接近原始量測數據。
目前,機器學習在電力CPS 安全防御中的應用分類如圖3 所示。
圖3 機器學習在安全防御中的應用分類Fig.3 Classification of applications of machine learning in defense
與較為健壯的電力一次系統(tǒng)相比,電力CPS 網絡安全較薄弱,研究起步較晚。目前,該領域仍面臨著許多挑戰(zhàn),包括但不局限于如下4 個方面:
1)最小化攻擊資源:攻擊者在發(fā)動攻擊前,需要考慮攻擊實施成功的可能性,確定發(fā)動攻擊所需的最小攻擊資源。例如,文獻[124]表明在CPS 中,若超過一半的傳感設備被攻擊,則CPS 操作者將不能精確恢復系統(tǒng)狀態(tài),而在電力CPS 網絡安全領域,對于某種網絡攻擊,攻擊者需要多少攻擊資源才能達到攻擊目的的研究仍為欠缺。最小攻擊資源的確定是攻擊資源、攻擊效果以及攻擊隱蔽性三者的權衡問題,將該問題表述為優(yōu)化問題求解可作為研究思路之一。
2)網絡安全評估:網絡安全評估指估計不同種類網絡攻擊對電力CPS 造成的影響,將這些攻擊按影響大小排序,以便設計防御措施。網絡安全評估問題與穩(wěn)定評估問題相似,不同的是,穩(wěn)定評估根據系統(tǒng)當前運行狀態(tài)對重要故障進行篩選,并據此對當前狀態(tài)做N?k故障分析,分析不同故障對當前運行狀態(tài)的影響程度。而網絡安全評估用于分析不同網絡攻擊對當前運行狀態(tài)的影響,不考慮攻擊造成的故障種類。當前,已有許多研究關注穩(wěn)定評估問題[125],而對網絡安全評估的研究工作仍較匱乏。針對電力CPS 的網絡攻擊種類繁多,該問題的難點之一在于如何使評估方案具有通用性或可遷移性。由于針對電力CPS 的網絡攻擊相關性較強,因此可以考慮利用遷移學習方法將針對某種網絡攻擊的評估方案遷移到針對新的網絡攻擊的評估方案中。目前,遷移學習在電力CPS 網絡攻擊檢測中已取得較好的表現[80]。
3)防御資源規(guī)劃:不同的網絡攻擊具有不同的特征(例如頻率、可發(fā)現性以及再現性等),對電力CPS 整體安全性的影響有強弱之分。由于防守方的防御資源往往有限,無法針對所有網絡攻擊實施保護措施,因此,需要根據網絡攻擊的影響程度及其相應的特征合理部署防御資源,建立電力CPS 網絡安全首道防線。防御資源規(guī)劃是防御成本與防御性能之間的權衡問題。該問題建立在已明確各網絡攻擊對電力CPS 的影響的基礎上,由影響強弱判斷電力CPS 對各網絡攻擊的容忍度,并以此為基準分配防御資源。電力CPS 各設備間存在物理連接或通信關系,因此,網絡安全具有整體、全面、協(xié)同的特點,在分配防御資源時,需要考慮合并針對不同網絡攻擊的防御策略產生的并發(fā)影響。該問題的解決方案之一是利用多智能體強化學習[126],使每個智能體維護一個關于不同網絡攻擊的防御策略和一個局部值函數,所有智能體的總目標是使電力CPS 更為安全。目前,在微電網領域,多智能體強化學習算法已有較多應用[127]。
4)恢復策略評估:電力CPS 網絡攻擊防御由攻擊前的保護、攻擊時的檢測、攻擊時的緩解和攻擊后的恢復4 個部分組成。然而現存文獻大多關注前3 個部分。電力CPS 與國家安全以及國民經濟發(fā)展息息相關,快速消除攻擊影響,及時恢復電力系統(tǒng)的安全平穩(wěn)運行,以保障電力可用性尤為重要。根據攻擊發(fā)生的時間段以及電力使用場景的不同,需要采取不同的防御措施,以達到恢復成本與恢復所需時長的平衡,例如,城市商圈白天斷電相比學校區(qū)域夜晚斷電要求更短的恢復時長。文獻[128]利用深度強化學習方法確定因網絡攻擊而跳閘的輸電線路的最佳合閘時間,該研究為機器學習在恢復策略設計中的應用提供了范例,更多的應用尚待挖掘探索。
本文首先介紹了電力CPS 網絡安全的要求及挑戰(zhàn),然后從數據基礎及硬件基礎、模型構建及實時性需求角度分別分析了機器學習應用于電力CPS網絡安全領域的契機與優(yōu)勢,接著從攻防兩個角度闡述了電力CPS 網絡安全面臨的難點問題并歸納了機器學習在各問題上的應用,最后分析展望了該領域存在的挑戰(zhàn)以及未來的研究方向。
機器學習方法具有強大的線性及非線性關系擬合能力,對于電力CPS 網絡安全面臨的各類挑戰(zhàn)均有應用的可能。例如對于最小化攻擊資源問題,可根據電力系統(tǒng)當前的狀態(tài)、預期達到的攻擊效果以及要求的攻擊隱蔽性,端到端輸出最小需要的攻擊資源,也可利用機器學習加速該優(yōu)化問題的求解速度,以達到實時性要求。由此可見,電力CPS 網絡安全領域還有許多亟待解決的問題,機器學習在該領域的應用尚待進一步探索。