国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SHA1的SCADA系統(tǒng)PLC固件完整性驗證方法

2017-07-31 17:13黃信兵劉桂雄
中國測試 2017年6期
關鍵詞:傳輸數(shù)據(jù)固件完整性

黃信兵, 劉桂雄

(1.廣東交通職業(yè)技術學院,廣東 廣州 510800;2.華南理工大學機械與汽車工程學院,廣東 廣州 510640)

基于SHA1的SCADA系統(tǒng)PLC固件完整性驗證方法

黃信兵1,2, 劉桂雄2

(1.廣東交通職業(yè)技術學院,廣東 廣州 510800;2.華南理工大學機械與汽車工程學院,廣東 廣州 510640)

針對SCADA系統(tǒng)面臨的數(shù)據(jù)竊取、篡改等信息安全問題,基于固件、可信根完整性度量,研究SCADA系統(tǒng)PLC固件完整的必要性;采用安全性高的SHA1算法,提出一種PLC固件完整性驗證方法。在SCADA系統(tǒng)外的驗證計算機上開發(fā)完整性驗證軟件,通過網(wǎng)絡偵聽、協(xié)議分析實現(xiàn)固件二進制數(shù)據(jù)提取、待下載固件SHA1值匹配驗證、下載固件SHA1值匹配驗證等功能,完成PLC固件傳輸過程中的完整性驗證。試驗結果表明:該方法可有效驗證PLC固件完整性,提高PLC運行可信度。

安全哈希算法;數(shù)據(jù)采集與監(jiān)視控制系統(tǒng);可編程邏輯控制器;固件;完整性

0 引 言

安全、可靠的SCADA系統(tǒng)為分布在各地站點的石油天然氣管道、電網(wǎng)、鐵路等重要基礎設施提供關鍵的控制、通信和監(jiān)視功能[1]。隨著信息技術在工業(yè)控制系統(tǒng)中的廣泛應用,越來越多SCADA系統(tǒng)暴露于Internet,網(wǎng)絡攻擊、信息篡改、病毒木馬等問題越來越嚴重。2015年戴爾公司年度安全威脅報告指出,2014年針對SCADA系統(tǒng)攻擊比2013年增加約2倍[2]。PLC作為SCADA系統(tǒng)核心現(xiàn)場設備,可直接監(jiān)視和控制終端物理系統(tǒng),正如Stuxnet攻擊,一臺處于惡意控制下的PLC會對重要基礎設施工業(yè)控制系統(tǒng)產生毀滅性后果[3-4],PLC固件的完整性直接關系到SCADA系統(tǒng)的安全性。本文針對工業(yè)以太網(wǎng)環(huán)境下PLC固件傳輸,提出一種基于SHA1算法[5]的PLC固件完整性驗證方法,以提高固件源可信性。

1 PLC固件完整驗證的必要性

PLC架構主要包括應用程序、固件和硬件3部分,如圖1所示。固件是存儲在具有永久儲存功能器件中的二進制代碼,作為橋梁為硬件和應用程序提供接口[6]。固件一般加載到PLC設備后不能被修改,也不能直接被讀取[7]。因此,若是在加載前或加載過程中固件被修改,PLC處于不安全工作環(huán)境中,所有數(shù)據(jù)都可能被監(jiān)聽或竊取,一旦滿足其執(zhí)行條件,將導致SCADA系統(tǒng)癱瘓,甚至SCADA系統(tǒng)能被攻擊者操縱[8]。固件作為PLC的可信根,是保證PLC可信運行關鍵所在??尚庞嬎愕幕舅枷胧窃谝粋€系統(tǒng)中首先建立一個信任根,再建立一條信任鏈,一級測量認證一級,一級信任一級,把信任關系擴大到整個SCADA系統(tǒng),從而確保SCADA系統(tǒng)可信[9]。

圖1 通用PLC架構

2 基于SHA1算法PLC固件完整驗證方法

通過對ANSI/ISA-99等標準分析,PLC屬于工業(yè)控制系統(tǒng)分層參考模型第1層(即本地或基本控制層),監(jiān)控第0層(物理過程層)的執(zhí)行器等現(xiàn)場設備[10]。若PLC由于攻擊等原因導致發(fā)出不正確指令,則第0層現(xiàn)場設備可能會出現(xiàn)異常操作。本文基于PLC硬件和邏輯程序是在可信的前提下進行研究。

固件完整性是指在傳輸、儲存固件過程中,確保固件不被未授權篡改或篡改后能被及時發(fā)現(xiàn)[11]。SHA1作為一種驗證數(shù)據(jù)完整性方法,對接收消息會產生一個具有唯一性的消息摘要,但該消息摘要不能復原信息。工業(yè)控制系統(tǒng)中采用現(xiàn)場總線傳輸數(shù)據(jù),其中使用以太網(wǎng)進行數(shù)據(jù)傳輸最為廣泛。隨著自動化水平提高,通過以太網(wǎng)可實現(xiàn)PLC固件版本更新等高級操作。以太網(wǎng)環(huán)境下基于SHA1算法的PLC固件驗證包括待下載固件SHA1值驗證、下載固件SHA1值驗證、固件完整性驗證等。圖2為實現(xiàn)該方法PLC固件完整性驗證系統(tǒng)模型,在控制計算機傳輸PLC設備固件外部增加驗證工具,進行待下載固件傳輸(標號①)驗證和下載固件傳輸(標號②)驗證,完成固件完整性驗證。

圖2 PLC設備固件完整性驗證系統(tǒng)模型

2.1 待下載固件驗證

PLC廠家在向用戶提供固件時還需要提供該固件的SHA1值(即安全固件SHA1值),用戶從廠家獲得固件(本文稱為待下載固件)過程中可能會受到攻擊,因此用戶需要在下載固件或更新固件之前,對該固件進行完整性驗證。

待下載固件不能直接載入PLC,而需要基于通信協(xié)議分析建立一個模擬PLC設備的通信軟件,與控制計算機通信。圖3為待下載固件SHA1值驗證流程圖??刂朴嬎銠C通過網(wǎng)絡等接口將待下載固件傳輸?shù)津炞C工具中,得到傳輸過程的二進制數(shù)據(jù),去掉數(shù)據(jù)中通信協(xié)議部分,對待下載固件二進制數(shù)據(jù)進行SHA1值計算。將待下載固件SHA1值與安全固件SHA1值進行匹配,若兩者一致則通過驗證,可下載到PLC中;否則說明在獲取固件過程中受到非授權篡改,需要從廠家重新獲得固件。

2.2 下載固件完整性驗證

圖3 待下載固件驗證流程圖

將驗證后的PLC固件通過工業(yè)以太網(wǎng)方式下載到現(xiàn)場PLC中,為監(jiān)控下載過程中PLC固件完整性,對網(wǎng)絡偵聽截獲的下載固件建立SHA1值,并與安全固件SHA1值匹配對比,具體如圖4所示。若兩者一致則通過驗證,下載到PLC中固件完整;否則說明下載過程中固件完整性受到破壞,需重新下載。

圖4 下載固件驗證流程圖

3 實例分析

利用Microsoft Visual Studio語言開發(fā)一款基于SHA1算法的PLC固件驗證軟件。采用羅克韋爾FlexLogix 5434 PLC及該公司提供的15.06.01版本安全固件,在控制計算機上需要安裝RSLinx軟件和固件更新軟件Control Flash 9.00.015。

3.1 數(shù)據(jù)傳輸分析

利用網(wǎng)絡偵聽截獲傳輸數(shù)據(jù),通過對截獲傳輸數(shù)據(jù)進行相關性、規(guī)律性分析,找出協(xié)議數(shù)據(jù)段、固件數(shù)據(jù)段,剖析其數(shù)據(jù)鏈路層傳輸協(xié)議,如圖5所示。

圖5 傳輸數(shù)據(jù)的分析

3.2 未知安全固件驗證實驗設計

本文將待下載固件和下載固件統(tǒng)稱為未知安全固件。圖6為未知固件驗證實驗軟件界面圖。點擊“未知安全固件傳輸數(shù)據(jù)”按鈕,固件傳輸數(shù)據(jù)將會得到顯示;單擊“提取固件”按鈕,得到從獲得數(shù)據(jù)中分離的固件數(shù)據(jù);單擊“計算固件SHA1”按鈕,根據(jù)固件數(shù)據(jù)計算得到40位SHA1值;單擊“安全固件SHA1”按鈕,再單擊“固件SHA1值驗證”按鈕,將截獲固件SHA1值和安全固件SHA1值進行匹配對比,若匹配一致,則在對話框中顯示“完整”,如圖6(a)所示;否則顯示“不完整”,如圖 6(b)~圖 6(d)所示。通過對比試驗可看出,該方法能夠驗證PLC固件完整性,從而提高PLC數(shù)據(jù)的安全性、可信性。

4 結束語

1)在重要基礎設施系統(tǒng)中建立針對SCADA系統(tǒng)的安全工具,對保持和建立信任非常有必要,基于SHA1的PLC固件完整性驗證方法,對于增強SCADA系統(tǒng)PLC固件可信性是可行選擇。

2)該方法是在現(xiàn)有SCADA系統(tǒng)外增加一套驗證工具,其優(yōu)勢在于保證下載到PLC中的固件完整性,同時不會對原有SCADA系統(tǒng)進行更改,且與生產系統(tǒng)相隔離。

3)用Microsoft Visual Studio開發(fā)基于SHA1算法驗證工具,在羅克韋爾FlexLogix 5434 PLC上實現(xiàn)固件驗證,實驗結果表明,該驗證方法可有效驗證固件完整性。

圖6 未知安全固件驗證實驗軟件界面

[1] 蘭昆,饒志宏,唐林,等.工業(yè)SCADA系統(tǒng)網(wǎng)絡的安全服務框架研究[J].信息安全與通信保密,2010(3):47-49.

[2]戴爾年度威脅報告揭示新興的安全風險[EB/OL].(2015-04-14)[2016-08-12].http://server.51cto.com/News-472123.htm.

[3]MATROSOV A, RODIONOV E, HARLEY D, et al.Stuxnet under the microscope[R].ESET Technical Report,2011.

[4]ALBRIGHT D, BRANNAN P, WALROND C.Did stuxnet take out 1000 centrifuges at the natanz enrichm ent plant?[R].Institute for Science and Internat-ional Security,2010.

[5] 劉桂雄,張龍,徐欽桂.基于改進SHA-1物聯(lián)網(wǎng)監(jiān)測節(jié)點完整性驗證與增強方法[J].中國測試,2013,39(1):80-83.

[6]SCHUETT C, BUTTS J, DUNLAP S.An evaluation of modification attacks on programmable logic controllers[J].International Journal of Critical Infrastructure Protection,2014,7(1):61-68.

[7]STRADLEY J,KARRAKER D.The electronic part supply chain and risks of counterfeit parts in defense applications[J].Components and Packaging Technologies,IEEE Transactions,2006,29(3):703-705.

[8]SRIDHAR S,MANIMARAN G.Data integrity attacks and their impacts on SCADA control system[C]//Power and Energy Society General Meeting,2010,2007(2009):1-6.

[9]沈昌祥,張煥國,王懷民,等.可信計算的研究與發(fā)展[J].中國科學,2010,40(2):139-166.

[10]彭勇,江常青,謝豐,等.工業(yè)控制系統(tǒng)信息安全研究進展[J].清華大學學報(自然科學版),2012(10):1396-1408.

[11]劉桂雄,鐘森鳴,余中潑.一種PLC固件完整性驗證裝置及驗證方法:103645672A[P].2014-03-19.

(編輯:商丹丹)

PLC firmware integrity verification method of SCADA system based on SHA1

HUANG Xinbing1,2, LIU Guixiong2
(1.Guangdong Communication Polytechnic,Guangzhou 510800,China;2.School of Mechanical and Automotive Engineering,South China University of Technology,Guangzhou 510640,China)

For data theft,data tampering and other information security issues of SCADA system and based on integrity measurement of the firmware and the trusted root,this paper aimed to research the necessity of integrity of PLC firmware for SCADA system,and proposed a PLC firmware integrity verification method by using SHA1 algorithm with high security.It developed an integrity authentication software on an authentication computer which was independent from SCADA system.Through the network listening and protocol analysis,the functions of the extraction of the firmware binary data, matched verification of SHA1 value of un-download firmware, and matched verification of SHA1 value of download firmware were realized,and completed the integrity test during PLC firmware transmission.The test results show that the method can effectively verify the integrity of PLC firmware,and improve the operation credibility of the PLC.

SHA1; SCADA system; PLC; firmware; integrity

A

1674-5124(2017)06-0114-04

10.11857/j.issn.1674-5124.2017.06.024

2016-09-20;

2016-11-15

2016年度省科技發(fā)展專項資金(2016B010113001)

黃信兵(1982-),男,河南濮陽市人,高級工程師,華南理工大學訪問學者,研究方向為自動化與檢測系統(tǒng)研發(fā)。

猜你喜歡
傳輸數(shù)據(jù)固件完整性
基于單片機的物聯(lián)網(wǎng)傳輸數(shù)據(jù)高并發(fā)讀寫系統(tǒng)設計
基于SSL VPN實現(xiàn)安全共享疾控單位之間的數(shù)據(jù)
基于深度強化學習的物聯(lián)網(wǎng)傳輸數(shù)據(jù)實時調度方法
石油化工企業(yè)設備完整性管理
ELM及IS/OS完整性對年齡相關性黃斑變性預后視力的影響
蘋果專利可采用光纖輸出燈光并傳輸數(shù)據(jù)將光纖隱藏于車輛部件內
基于固件的遠程身份認證
谷歌公司推出計算機固件分析工具幫助用戶阻止惡意軟件入侵
英特爾發(fā)布免費固件引擎
提取ROM固件中的APP