文/李學(xué)勇
近年來,煙草行業(yè)開始進(jìn)行大規(guī)模技術(shù)改造,其中之一就是進(jìn)行現(xiàn)代化物流系統(tǒng)建設(shè)。在該系統(tǒng)中,成套倉儲(chǔ)、分揀設(shè)備的自動(dòng)化運(yùn)行,全部依賴于工業(yè)控制系統(tǒng)的支持。
由于“兩化融合”的推動(dòng)和工業(yè)物聯(lián)網(wǎng)的出現(xiàn),工控網(wǎng)絡(luò)不可避免地從封閉走向開放,工控系統(tǒng)與信息系統(tǒng)的集成,給工業(yè)控制網(wǎng)絡(luò)的安全帶來了新的風(fēng)險(xiǎn)與挑戰(zhàn),尤其是以2010年爆發(fā)的“震網(wǎng)”病毒,給工業(yè)控制系統(tǒng)的安全敲響了警鐘。
據(jù)工信部相關(guān)部門統(tǒng)計(jì),在22個(gè)行業(yè)900套工業(yè)控制系統(tǒng)中,主要由國外廠商提供產(chǎn)品,相關(guān)系統(tǒng)運(yùn)維也由廠商直接接管,存在漏洞的國外工業(yè)控制產(chǎn)品大量應(yīng)用于我國重點(diǎn)領(lǐng)域工業(yè)控制系統(tǒng),在數(shù)據(jù)采集與監(jiān)控系統(tǒng)(SCADA)、分布式控制系統(tǒng)(DCS)、過程控制系統(tǒng)(PCS)中分別占據(jù)了55.12%、53.78%及76.79%的份額,在大型可編程控制器(PLC)中則占據(jù)了94.34%的份額。
在現(xiàn)代化煙草物流系統(tǒng)中,成套倉儲(chǔ)、分揀設(shè)備的自動(dòng)化運(yùn)行,都依賴于工業(yè)控制系統(tǒng)的支持
圖1: 2017年上半年全球范圍內(nèi)工控系統(tǒng)遭遇攻擊分布
圖2:不規(guī)則信號(hào)
圖3:傅里葉變換稀疏后正弦基信號(hào)
2017年10月,卡巴斯基實(shí)驗(yàn)室通過對(duì)各種各樣的信息系統(tǒng),比如商業(yè)、政府組織、銀行、電信運(yùn)營商、工業(yè)企業(yè)和個(gè)人等的信息系統(tǒng)進(jìn)行分析,發(fā)布了《2017上半年工業(yè)自動(dòng)化系統(tǒng)威脅報(bào)告》。報(bào)告顯示,中國工控系統(tǒng)遭受攻擊程度排在第五位,占比達(dá)57.1%。2017年上半年全球范圍內(nèi)工控系統(tǒng)遭遇攻擊分布,如圖1。
(1)基礎(chǔ)類
2010年美國國家標(biāo)準(zhǔn)與技術(shù)研究所發(fā)布了《工業(yè)控制系統(tǒng)安全指南》,2014年中國頒布了《工業(yè)控制系統(tǒng)信息安全》標(biāo)準(zhǔn),2016年工業(yè)和信息化部印發(fā)《工業(yè)控制系統(tǒng)信息安全防護(hù)指南》,國家質(zhì)檢總局、國家標(biāo)準(zhǔn)委發(fā)布《工業(yè)通信網(wǎng)絡(luò) 網(wǎng)絡(luò)和系統(tǒng)安全》相關(guān)的6部推薦性國家標(biāo)準(zhǔn)。雖然這些都屬標(biāo)準(zhǔn)和規(guī)范類的內(nèi)容,并沒有提出實(shí)際的安全防護(hù)機(jī)制,但是它們?yōu)楹髞淼陌踩雷o(hù)機(jī)制的研究提供了指導(dǎo)并奠定了基礎(chǔ)。
(2)策略類
Liao等人提出了一種認(rèn)證型的MODBUS協(xié)議,一般來說,現(xiàn)在占據(jù)國內(nèi)PLC市場(chǎng)90%以上份額的國外品牌,基本都沒有考慮過協(xié)議安全,因此,Liao等人提出了要對(duì)通過協(xié)議的信息進(jìn)行加密處理。但是,類似于這種對(duì)協(xié)議通信進(jìn)行加密的方式,都需要將已部署好的系統(tǒng)全部或者部分進(jìn)行重新設(shè)計(jì)和布置,或者會(huì)很大程度增加通信負(fù)載,降低實(shí)時(shí)性。因此,對(duì)于實(shí)際的工控系統(tǒng)而言,這種基于改變?cè)到y(tǒng)結(jié)構(gòu)的方法都顯得不太實(shí)用。
(3)檢測(cè)類
比較常用的就是基于異常的網(wǎng)絡(luò)入侵檢測(cè),其核心思想是通過網(wǎng)絡(luò)流量信息,從正常的活動(dòng)中識(shí)別出異常活動(dòng)。Yong等人提出了一種異常檢測(cè)方法,該方法通過分析he提取特征,識(shí)別異?;顒?dòng)。其它諸如此類的方法基本都能夠取得較好的異常檢測(cè)效果,但它們會(huì)消耗大量的網(wǎng)絡(luò)資源,因此對(duì)工控系統(tǒng)的實(shí)時(shí)性有較大的影響,所以實(shí)際應(yīng)用情況并不理想。
為了既不改變?cè)幸巡渴鸬墓た叵到y(tǒng)結(jié)構(gòu),又不要占用有限的網(wǎng)絡(luò)資源,我們需要研究一種非侵入式的安全監(jiān)測(cè)思路。該研究思路主要由旁路信息采集、特征提取以及異常檢測(cè)等三部分組成。其中,旁路信息采集是通過技術(shù)手段,對(duì)工控系統(tǒng)主控制器PLC在運(yùn)行中所泄露出來的各種信息進(jìn)行采集;特征提取是針對(duì)采集到的旁路信息進(jìn)行數(shù)學(xué)變換、基信號(hào)提取,用于設(shè)定正負(fù)樣本和分類器;異常檢測(cè)則是針對(duì)后來的攻擊進(jìn)行分類器對(duì)比,以確定是不是有效攻擊。
旁路信息是指電子設(shè)備在運(yùn)行過程中泄露出來的與其內(nèi)部運(yùn)行相關(guān)的各種物理信息,如溫度變化、執(zhí)行時(shí)間、功率消耗、電磁福射、聲音等信息。利用這些旁路信息,可以識(shí)別電子設(shè)備的內(nèi)部運(yùn)行狀態(tài),這種技術(shù)被稱為旁路分析技術(shù)。旁路分析技術(shù)中,應(yīng)用比較廣泛的是功耗分析、電磁輻射分析和時(shí)間分析,其中功耗分析由于其信息量豐富,受環(huán)境干擾相對(duì)較小,并且有分析效果比較好等優(yōu)點(diǎn),成為目前最有效的一種旁路信息分析方法,本文即以功耗為分析目標(biāo)。
(1)旁路信息采集可行性探討
工控系統(tǒng)的主控制器PLC是以循環(huán)掃描的方式工作的,一個(gè)掃描周期包括內(nèi)部處理、通信服務(wù)、輸入刷新、程序執(zhí)行和輸出刷新等五個(gè)階段,其執(zhí)行不同的指令集時(shí),會(huì)消耗不同的功耗。事實(shí)上,PLC的如下特性使得用功耗分析來區(qū)分其內(nèi)部運(yùn)行的程序成為可能:
a.倉儲(chǔ)、分揀工藝流程設(shè)計(jì)完成后,除非進(jìn)行大的技改或者全部重新設(shè)計(jì),否則在實(shí)際運(yùn)行中,生產(chǎn)工藝不會(huì)經(jīng)常改動(dòng),PLC的運(yùn)行周期、環(huán)境和程序模塊都有規(guī)律可循。
b.工藝固定、程序固定后,PLC的周期掃描工作方式就決定了,雖然是5個(gè)不同的階段,但是以周期為單位,每個(gè)階段的功耗消耗相對(duì)是固定的。
c.由于工控系統(tǒng)的穩(wěn)定性要求,PLC的供電是以模塊式供電,基本都采用廠家的電源轉(zhuǎn)換模塊給機(jī)架上其它各模塊進(jìn)行供電,因此我們可以很方便的在PLC的直流供電端采集CPU的功耗信息,而不需要對(duì)其內(nèi)部的硬件或軟件進(jìn)行修改。
(2)旁路信息采集實(shí)現(xiàn)
對(duì)于功耗采集,一般有兩種方式,一種是在直流電源端串入互感線圈,一種是并入采集電阻。但是由于互感線圈會(huì)收到PLC工作射頻信號(hào)的干擾,所以一般采用并入采集電阻,阻值一般在0.1歐姆。而信號(hào)采集器,必須支持實(shí)時(shí)采集、存儲(chǔ)和傳輸,與上位機(jī)有良好接口。
(1)提取原理
根據(jù)傅里葉變換原理,任何一個(gè)信號(hào),都可以由一系列正弦函數(shù)表示,比如圖2的不規(guī)則信號(hào)。
通過傅里葉變換,我們可以得到圖3的一系列基信號(hào)。
當(dāng)然可能不止4個(gè),可以有更多,越多表示得越準(zhǔn)確,這也反過來說明稀疏表示的一個(gè)問題,那就是稀疏到什么程度。上述信號(hào),如果只用前2個(gè)基信號(hào)表示的話,肯定會(huì)差很多,用前3個(gè)表示會(huì)好一些。然而另一個(gè)問題可以看出,用兩個(gè)表示,極其稀疏,表示起來也簡(jiǎn)單,但是效果差,用n個(gè),很不稀疏,但是效果好,所以一個(gè)信號(hào)到底要稀疏表示到什么程度,這是一個(gè)變化的參數(shù)。
(2)提取算法
從原理闡述可以看出,任何一個(gè)信號(hào)都已分解為一系列基信號(hào),這就是信號(hào)的特征庫,為了更好地區(qū)分程序運(yùn)行的正常樣本和帶有攻擊的異常樣本,就需要得到一組具有區(qū)分度,而且無信息冗余的特征值組合。而對(duì)于組合優(yōu)化問題而言,基于傅里葉變換的稀疏編碼算法是一個(gè)很好的解決方案。
當(dāng)我們提取了合適的信號(hào)特征庫后,就能建立起可用的信號(hào)樣本。對(duì)于常用的檢測(cè)攻擊方法,都是將后續(xù)采集到的信號(hào)通過特征提取后,和原始建立的分類器進(jìn)行對(duì)比,以此來判斷是否存在攻擊情況。然而,難點(diǎn)在于,我們?cè)诔跏荚O(shè)計(jì)時(shí),是無法采集到攻擊情況下的信號(hào)特征值的,也就是負(fù)樣本的采集率為零,這就只能基于正樣本采集和訓(xùn)練進(jìn)行檢測(cè)的過程變得困難,因?yàn)槲覀冃枰@取足夠多的正常樣本。在獲取正常樣本后,通過比較待測(cè)樣本與正常樣本之間的差距來實(shí)現(xiàn)異常檢測(cè)。基于長(zhǎng)短記憶單元(LSTM)的神經(jīng)網(wǎng)絡(luò)模型克服了遞歸神經(jīng)網(wǎng)絡(luò)中的梯度消失和梯度爆炸問題,被證明在異常檢測(cè)領(lǐng)域也有很好的效果,因此可以采用LSTM來實(shí)現(xiàn)對(duì)攻擊的檢測(cè)。
工控系統(tǒng)的主控制器PLC是以循環(huán)掃描的方式工作的,一個(gè)掃描周期包括內(nèi)部處理、通信服務(wù)、輸入刷新、程序執(zhí)行和輸出刷新等五個(gè)階段,其執(zhí)行不同的指令集時(shí),會(huì)消耗不同的功耗。
本文針對(duì)當(dāng)前工控系統(tǒng)遭到嚴(yán)重安全威脅的情況,研究了一種基于旁路分析技術(shù)的工控系統(tǒng)安全監(jiān)測(cè)思路,介紹了旁路信息分析技術(shù)、旁路信息采集實(shí)現(xiàn)、特征值提取方法、算法以及異常檢測(cè)算法等。該思路有別于其他介入式檢測(cè)方法,對(duì)原始硬件系統(tǒng)和軟件架構(gòu)影響極小,對(duì)于工控安全防護(hù)具有較好的參考價(jià)值。