王俊彥 衣 然 張 斌 車聰聰 馬 超
(1.中車青島四方機車車輛股份有限公司, 266111, 青島; 2.華北計算機系統工程研究所, 100083,北京∥第一作者, 高級工程師)
《中華人民共和國網絡安全法》明確了對于涉及公共利益的關鍵信息基礎設施,在網絡安全等級保護制度的基礎上,實行重點保護[1]。CBTC(基于通信的列車控制)是城市軌道交通的核心系統之一,包括ATS(列車自動監控)、MSS(維護支持系統)等多個子系統[2]。隨著工業互聯網時代的到來,CBTC各個子系統互聯互通的程度越來越高,各子系統間的信息安全也逐漸開始受到行業和相關管理部門(包括中共中央網絡安全和信息化委員會辦公室、公安部、工業和信息化部等)的高度重視。傳統的安全防護設備往往關注的是信號系統的流量安全,而忽視了更底層的信號采集端的安全,因此,及時檢測出信號采集過程中的惡意流量并進行報警,對于城市軌道交通信號系統來說尤為重要。
近年來,針對CBTC系統這類關鍵基礎設施的攻擊大多為APT(高級可持續攻擊)。攻擊者通過注入大量虛假數據來隱藏自己的攻擊[3],同時控制受損的傳感器值,使其大致保持在噪聲水平之內。這樣,對噪聲不敏感的故障檢測裝置或本身性能存在異常的檢測裝置就很難檢測到這種隱藏在噪聲中的惡意攻擊。
入侵檢測是實時監測網絡中的流量,在出現異常問題時進行相應處理的一種網絡安全技術[4]。如圖1所示,傳統入侵檢測主要分為信息收集、系統辨識、威脅處理3個步驟[5],在完成信息收集后,通過模式匹配、統計與完整性分析等系統辨識方式,建立物理過程的線性動態狀態空間模型,經過預測和更新這兩個計算過程來判斷系統是否含有惡意攻擊流量。雖然這樣的方法可能會檢測到異常行為,但其檢測模型很難建立,需要在初始階段付出大量的人力,而且建立的物理模型并不一定適用于城市軌道交通系統。因此,本文嘗試使用一種新的入侵檢測方法,不需要建立線性動態狀態空間模型,而是只關注CBTC系統中現場傳感器的采樣狀態變化,通過檢測傳感器當前的讀數是否因生成機制的變化而偏離了過去的讀數,來判斷CBTC系統中是否有異常行為。

a) 傳統入侵檢測流程
本文提出的新型入侵檢測技術是一種輕量、快速、無模型的進程級檢測技術,能夠檢測傳感器信號中的細微變化,大大增加了檢測出策略性攻擊者的可能性。其工作機制是:首先通過一個訓練階段學習傳感器測量時間序列中記錄的正常行為,再從正常工作的傳感器測量時間序列中提取降噪信號信息,最后主動檢查當前提取的信號是否與歷史值產生偏離,從而判斷系統中是否混合了惡意流量。為了提取信號信息,新型入侵檢測技術借鑒了SSA(奇異譜分析)概念來提取信號信息[6],通過識別1個信號子空間并進行計算,然后將計算結果與預估的結果進行對比,如果結果不一致,則表明生成時間序列的機制可能發生了變化,被測系統可能受到攻擊。
如圖2所示,在CBTC系統信號提取過程中經過了嵌入、奇異值分解、分組、重構4個步驟。具體工作過程如下:第一步,將傳感器測量的時間序列嵌入到歐幾里得空間中[7];第二步,對從時間序列數據得出的特殊矩陣進行頻譜分解,以提取系統行為的確定性部分;第三步,識別信號子空間,并將與正常操作條件下的傳感器測量值相對應的矢量投影到該子空間上,以獲得正常過程行為的表示;第四步,系統會跟蹤偏離分數,以確定該過程是否偏離正常狀態。

圖2 SSA技術流程圖Fig.2 Technical flowchart of SSA
設xi為滯后向量。L為整數,作為xi的滯后參數,然后通過形成K個長度為N的滯后向量T,使之作為初始子序列,嵌入L維歐幾里得空間RL中,T∈L,則有:
xi=[xi,xi+1,…,xi+L-1]T
(1)
式(1)中,1≤i≤K,K=N-L+1。構造軌跡矩陣X,X的每一列均是滯后向量:
(2)
為了提取用以描述CBTC系統確定性行為的降噪信號信息,對X進行奇異值分解后可得到l個特征向量u1,u2,…,ul,組成滯后協方差矩陣XXT。然后,計算時間序列的統計個數r,判斷確定性與變異性的自由度數。
在獲得信號信息之后,在第三個步驟中,識別正常過程行為的數學表示。設有r個前導特征值,U是l×r矩陣,其列是r個特征向量u1,u2,…,ur。由此可知,lr是U的列向量所跨越的子空間。計算xi的樣本均值c:
(3)


(4)
其中,P為投影矩陣,P=U(UTU)-1UT=UUT。

(5)
設θ為系統設置的報警閾值。當Dj≥θ時,將生成報警信息。設τ是惡意流量攻擊的開始時間,則在(n+1,τ-1)這個時間段內,通過對比正常狀態下觀測值和攻擊開始前的觀測值,可計算得到正常流量下偏離分數的最大值,以有效避免正常流量擾動產生的誤報。
如圖3所示,CBTC被廣泛運用于城市軌道交通系統中,可以實現車-地之間的雙向通信[8]。CBTC的核心為ATP (列車自動防護)、ATO(列車自動運行)兩個子系統,這兩個子系統分別用以處理列車超速防護、車門開關、列車制動等列車運行控制,確保列車安全、高效運行[9]。

注:OCC——運營控制中心;DCS——數據通信子系統;CI——計算機聯鎖;ZC——區域控制器;DSU——數據存儲單元。圖3 CBTC系統結構圖Fig.3 Diagram of CBTC system structure
如圖4所示,本次試驗中使用的硬件設備包括2臺計算機(PC1、PC2)、1個具有鏡像功能的交換機和1臺路由器。其中:PC1用于安裝科萊數據重放軟件,模擬CBTC系統運行,產生運行數據;PC2作為安全管理終端,運行入侵檢測程序,采集并檢測數據。

圖4 試驗環境網絡拓撲圖Fig.4 Network topology of test environment
本次試驗中,使用某地鐵線路CBTC系統采集到的真實鏡像數據,數據采集耗時10 d。作為仿真試驗的數據,在數據重放之前,先對流量數據進行檢測和處理,并將數據分為3個部分。其中:第一部分數據為正常流量數據;第二部分數據為攻擊流量數據,即在正常流量數據中混合的APT數據包,但該數據包只保留漏洞驗證程序,不會對系統產生影響;第三部分數據為混合流量,正常流量數據中插入了APT流量,以此進行試驗驗證。這些數據均存放在PC1中,由PC1進行數據包的重放。PC2通過交換機的鏡像口采集試驗數據,并運行新型入侵檢測程序。
具體的試驗過程包括兩個部分:
1) 試驗一。PC1進行正常流量數據重放,PC2進行系統監控,重放時間為24 h;
2) 試驗二。PC1進行攻擊流量和混合流量數據重放,PC2進行系統監控,重放時間為24 h。
根據試驗的設定值θ,觀測入侵檢測程序的輸出值。在正常流量數據通過時,檢測到Dj<θ,系統未生成告警;在攻擊流量數據通過時,Dj≥θ,系統立即生成告警;在混合流量數據通過時,Dj≥θ,系統也生成告警,試驗達到了預期效果。重放最終監測結果如表1所示,為方便計算,所有數值均已取整。

表1 試驗參數設定及其仿真輸出值Tab.1 Test parameter setting and simulation output value
與傳統的IT(信息技術)系統相比,城市軌道交通CBTC系統這類工業控制系統若受到網絡攻擊,可能會造成更為嚴重的損失和影響。本文提出了一種新型入侵檢測技術,對CBTC系統的底層數據進行實時監測,可精準識別隱藏在正常流量中的惡意攻擊,這對于CBTC系統網絡的安全防護具有重大意義[10]。如果在底層網絡設置該新型入侵檢測系統,在上層網絡部署其他安全設備和安全策略,CBTC系統的安全防護水平將會大大提高。