孫楊燕,周秀瑩,任 祝
(浙江理工大學 信息學院,浙江 杭州 310018)
隨著人類社會網絡化、信息化、智能系統一體化逐步發展,信息系統與物理世界不斷交互。計算技術、通信技術、控制技術深度耦合的信息物理系統(Cyber-Physical Systems,CPS)被廣泛應用于新型工業、智能制造、軍事等領域。由惡意攻擊引發的CPS感知物理層和信息傳輸層的破壞是CPS現在面臨的主要安全威脅來源。在系統受到欺騙攻擊(Spoofing Attack,SA)、拒絕服務攻擊(Denial of Service,DoS)、虛假數據注入攻擊(False Data Injection,FDI)時,避免狀態估計性能受到毀滅性破壞成為諸多學者的重點研究方向。因此,研究面向網絡攻擊的狀態估計問題,設計有效的攻擊檢測方法,具有一定的現實意義。
目前主要的攻擊方式為DoS攻擊和FDI攻擊。其中,FDI攻擊是攻擊者修改不同網絡部分之間傳輸數據包的完整性以獲取對攻擊目標的訪問權或者獲取關鍵信息的攻擊手段[1-3]。作為一種特殊的FDI攻擊,偏差攻擊(Biasing Attack,BA)指攻擊者通過入侵信息網絡,篡改傳輸的控制指令和(或者)測量傳輸。攻擊者小量連續地篡改多個數據,即在對每個時刻的數據添加一個非零常數恒定值。“恒定值”是BA 攻擊和FDI攻擊的主要區別。為了避免被檢測到,恒定值通常取值較小。需要注意的是,疊加的該恒定值通常是針對系統的穩態情況設計的,其目的是擾亂系統工作且不被常規檢測手段發現。
近年來,可以騙過系統內置攻擊檢測機制的攻擊策略層出不窮??紤]到類似網絡攻擊對CPS的影響,許多學者從不同角度進行研究。文獻[4]考慮狀態估計器在虛假數據注入攻擊中的脆弱性,提出一種依賴于最小攻擊強度和檢測閾值之間平衡關系的在線異常檢測算法。文獻[5]定義了時間相關型檢測和空間相關型檢測的CPS綜合安全威脅模型,構建了一種將攻擊可能發生的情況抽象為系統控制流程中對量測值與控制指令篡改策略求解問題。文獻[6]在拒絕服務攻擊參數已知的情況下,提出了一種既能緩解通信帶寬壓力,又可同時消除拒絕服務攻擊影響的彈性事件觸發機制。文獻[7]提出了一種基于局部卡爾曼濾波并在局部中心之間交換必要信息的分布式狀態估計器,并提供了理論保證的假警報率檢測方案。文獻[8]針對無線傳感器網絡的分布式目標估計問題,提出了基于攻擊檢測策略的改進分布式卡爾曼濾波算法。文獻[9]基于一種優化的聚類算法,提出一種實時檢測FDI攻擊的檢測方法,通過驗證測量值與預測測量值的一致性來檢測FDI攻擊。文獻[10]從攻擊者的角度降低任意通信速率約束下的估計質量,給出了攻擊方的最小均方誤差估計算法,并研究了攻擊閾值與調度閾值之間的封閉關系。文獻[11]中研究了FDI攻擊下的分布式濾波安全問題,采用隨機規則對閾值檢測進行變換來保證其高斯性。文獻[12]根據線性離散時不變系統前向通道和反饋通道的數據設計偏差攻擊,并設計檢測方法。但該研究沒有考慮網絡通信約束,例如網絡延遲、丟包,給出的攻擊序列對系統的模型要求較高。目前關于分布式信息物理系統的攻擊檢測和安全狀態估計的研究主要集中在單個線性系統上,對多智能體、不確定性以及測量噪聲的分布式大規模信息物理系統還沒有廣泛的延展性研究。
針對CPS的偏差攻擊檢測,文獻[13]提出一種將網絡電力系統負載頻率控制環上的偏差注入網絡攻擊的框架模型,將損壞的傳感器測量值傳輸到一個受影響控制區域的自動生成控制單元。文獻[14~15]對BA攻擊附加彈性要求的分布式H∞估計問題進行了分析。研究者在分布式觀察者網絡中增加一個基于協同狀態估計算法的狀態觀測器攻擊檢測層,以檢測BA攻擊并修正其對網絡估計結果的影響。文獻[16]在攻擊對象未知的情況下,將殘差檢測與變化檢測相結合,將多個數據殘差值偏差的累積量作為判決攻擊發生的條件。但特征的選擇較為復雜,會影響攻擊檢測率。文獻[17]設計了一種基于融合間隔和歷史測量的傳感器攻擊檢測方法,利用傳感器之間的成對不一致關系檢測并識別攻擊。但由于根據歷史測量預測的當前測量不夠準確,導致誤報率增高。以上文獻通過抽象傳感器和系統建模,采用殘差值偏差累積及動態遞推估計等方法從不同角度給出了不同的偏差攻擊檢測方法,執行復雜度較高,檢測方案成本較高,可行性較低。
本文針對CPS中偏差攻擊檢測問題,提出一種新型的混合時間型檢測模型。該模型以終端估計誤差協方差作為性能指標[18],采用最優卡爾曼濾波狀態估計器和t檢測器相結合的檢測方案,檢驗偏差攻擊識別閾值。
本文在CPS系統遭到偏差攻擊時,分析系統動態目標的狀態估計,以終端估計誤差協方差作為性能指標,得到最優攻擊檢測的結果。其攻擊策略為攻擊者隨機為被攻擊的傳感器節點添加一個偏差值。
現考慮CPS由一個離散線性時不變系統組成,其過程為
x(k+1)=Ax(k)+Bu(k)+w(k)
(1)
y(k)=(1-α(k))S(k)+α(k)S*(k)
(2)
式中,k∈{0,1,2,…,N}為時間指數;x(k)={x1(k),x2(k),x3(k),…,xn(k)}∈Rn,x(k)表示系統在k時刻的狀態向量;u(k)={u1(k),u2(k),u3(k),…,ul(k)}∈Rl,u(k)為控制信號;y(k)∈Rm代表系統輸出量測值;α(k)表示傳感器是否收到攻擊,并且服從獨立同分布。
Pr(α(k)=1)=Pα
(3)

(4)
S*(k)表示傳感器受到攻擊時的隨機偏差攻擊矢量,即傳感器節點提供錯誤量測
S*(k)=S(k)+2d,0<|d| (5) 其中,S*(k)是傳感器S在k時刻的測量值。 S(k)=Cx(k)+v (6) w(k)∈Rn,v∈Rm代表相互獨立的在k時刻的過程噪聲和量測噪聲。協方差分別為Q和Rv,均服從零均值多元高斯分布。A∈Rm×n及B∈Rn×l分別為系統狀態矩陣和控制矩陣,C∈Rm×n為量測矩陣。(A,C)是可觀的,(A,Q)是可控的。dmax表示在不受環境干擾下所有傳感器節點中最大的誤差精度。 本文研究的是偏差攻擊。偏差攻擊隸屬于虛假數據注入攻擊,系統受到攻擊后的主要表現形式為:傳感器節點被隨機注入了一個虛假的噪聲信息,并引入了一個傳感器誤差精度干擾的偏差信息?;诖祟愄摷贁祿⑷氲墓?,為減少系統噪聲和測量噪聲對系統的干擾,從包含噪聲的量測中得到系統狀態的最優估計量。本文采用基于卡爾曼濾波算法和估計誤差協方差最小跡原則的狀態估計器和t檢測器進行攻擊檢測。 在攻擊狀態下,綜合式(1)和式(2)即可得到偏差攻擊時,基于改進一致性卡爾曼濾波算法[6]的狀態估計器的去噪過程,在每個k時刻,傳感器節點首先基于過程量測值執行本地估計,然后將更新值發送到遠程估計器。 (7) (8) (9) 式中,Pk-1為上一時刻估計誤差的最小協方差。 在預測更新的基礎上,對卡爾曼濾波增益K(k)進行調整 (10) (11) (12) (13) 其中 (14) 式中,P1、P2、P3分別為相同、不同時刻狀態之間的協方差;P4、P5為同一時刻實際值與預測值之間的協方差。 當系統未遭到攻擊時,測量誤差呈正態分布??紤]到偏差攻擊信號d和傳感器量測精度密切相關,在對系統進行最優狀態估計處理的基礎上,當攻擊者少量多次進行攻擊時,在隨機注入的偏差攻擊值遠小于dmax的狀態下,可以達到攻擊隱蔽的效果,系統報警被限制在容忍范圍之內。 對比下,t檢測器能夠對測量殘差z(k)的微小變化進行分析。對其具有t分布的統計估計值進行假設檢驗,得到偏差攻擊下的t檢測器接收殘差為 (15) 由式(15)進一步計算得到攻擊狀態下量測殘差的協方差為 為了更好地檢驗浙江省對外直接投資對出口貿易和進口貿易的不同影響,本文建立如下出口效應模型和進口效應模型: (16) 令 (17) 式中,ρ*(k)表示非攻擊狀態下測量殘差z*(k)的協方差[19]。 在測量殘差z(k)方差不變的前提下[20-21],定義系統的攻擊判斷規則為 (18) 式中,J為傳感器的檢測窗口大小;μ為所有zi(k)的零假設均值。由假設檢驗與置信區間的估計的等價性可知,攻擊檢測閾值δ滿與觀測值rk滿足 Pr(rk<δ)<0.95 (19) 即遵循假設檢驗 (20) 當系統正在遭受攻擊并被成功檢測出異常,檢測器將會判決系統狀態為H1,并觸發警報信號,即發生報警。 為了驗證本文所提出的偏差攻擊下攻擊識別檢測方案的有效性,根據離散系統狀態方程,即式(1)和式(2)構建仿真模型,將變加速曲線運動的目標作為觀測對象。本文采用MATLAB對穩定系統進行偏差攻擊檢測的仿真實驗,并給出與其他檢測方法檢測性能的對比分析。當前系統狀態矩陣、量測矩陣和噪聲協方差為 圖1 目標運動軌跡Figure 1.Movement trace of target 由圖1可以看出,圖中真實狀態和預測狀態值近似重合,該機制能在系統正常運行時進行可靠的狀態估計。 本文假設在固定窗口中,攻擊者對傳感器進行偏差攻擊?,F從k=1至k=60時刻,對系統持續注入微小偏差攻擊量,即取d=0.12,得到系統在未受攻擊和受攻擊情況下的正態概率圖,如圖2和圖3所示。 圖2 正常狀態下量測殘差的正態概率分布Figure 2.Normal probability distribution of residuals measured under normal conditions 圖3 受攻擊狀態下量測殘差的正態概率分布Figure 3.Normal probability distribution of residuals measured under attack state 由圖2和圖3可以看出,該偏差攻擊具有較強的隱蔽性,僅通過量測殘差無法觀測到系統是否受到攻擊。取J=20,在連續時間內對量測殘差z(k)的變化進行多次統計,如圖4所示。 圖4 量測殘差變化Figure 4.Changes in measured residuals 通過查詢t分布的累積分布函數查詢表可知,當J=20時,δ=1.729。由此,經多次計算,分別得到k=1至k=20,k=10至k=30,k=20至k=40時刻的z(k)的觀測值rk始終滿足minrk>δ。由攻擊判斷規則式(20)可知,系統狀態為H1,即μ≠ 0,系統受到偏差攻擊后能及時準確地檢測異常。 為了進一步評估本文提出的基于最小跡原則的卡爾曼濾波狀態估計算法和t檢測器相結合的檢測方案,本文分別收集了20次被攻擊的傳感器數據,并分析卡方檢測、Z檢測和t檢測各自的平均檢測率,如表1所示。 其中,表1給出了不同窗口和同一偏差攻擊場景3種攻擊檢測的檢測率。傳感器以10 Hz分別平均采樣1~5 s,因此傳感器分別有10~40個測量值。其中,卡方檢測是一種基于卡爾曼濾波器的傳感器攻擊檢測方法。從表中可以看出,對于隱蔽型偏差攻擊,t檢測方法在小窗口中都比Z檢測和卡方檢測更加魯棒,并且隨著窗口大小的增加,直至30時,t檢測方法逐漸達到穩態檢測率。此時t檢測與Z檢測性能相近,t檢測器的平均檢測率比卡方檢測器大約高 12%,比Z方法高約 2%。當J>30時,在大窗口中Z檢測的檢測性能較優于t檢測方法。對于檢測偏差攻擊來說,t檢測方法的優勢是能在最短時間內更快、更精確地檢測到攻擊。 表1 偏差攻擊量d不變時檢測率Table 1. Detection rates when biasing attack value d is constant /% 表2給出了在同一窗口和不同偏差攻擊場景下3種攻擊檢測的檢測率,取J=20。從表中可以看出,隨著偏差攻擊量d的增加,t檢測方法都比Z檢測和卡方檢測更加魯棒,并且當d>1后,t檢測方法逐漸達到穩態檢測率,檢測率高達99.86%。此時t檢測與Z檢測性能相近,t檢測器的平均檢測率比卡方檢測器大約高 10%,比Z方法高約 3%。 表2 窗口大小J不變時檢測率Table 2. Detection rates when window size J is constant /% 表3總結了在窗口大小中取d=0.12時3種方法的檢測速度。該實驗結果表明,t檢測方法對隱蔽型偏差攻擊具有最高的靈敏度。 表3 檢測速度Table 3. Detection speed /s 本文研究了信息物理系統中狀態估計安全問題。首先在引入離散線性時不變系統的基礎上,構建了一種混合時間空間型攻擊檢測模型,并針對偏差攻擊檢測提出了基于卡爾曼濾波算法和最小跡原則的最優狀態估計。此外,本文對多個時刻的殘差變化進行分析,在t檢測結果的基礎上給出了攻擊檢測判決規則。MATLAB仿真實驗結果驗證了該檢測判決規則的有效性。 需要注意的是,當被攻擊的傳感器添加的偏差值很小時,系統將很難成功地進行攻擊識別檢測。假設傳感器節點的量測模型可觀可控,對于多傳感器而言,部分節點可能無法獲得目標的真實量測數據,今后還有待對多節點信息進行數據融合,提高攻擊檢測的準確性和魯棒性。2 攻擊識別檢測方案
2.1 偏差攻擊下的狀態估計器









2.2 偏差攻擊檢測判決規則

2.3 仿真驗證







3 結束語