• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Hash算法嵌入式系統(tǒng)固件安全驗證方法

      2014-03-03 03:57:32劉桂雄余中潑洪曉斌譚文勝
      中國測試 2014年5期
      關鍵詞:固件通信協(xié)議完整性

      劉桂雄,余中潑,洪曉斌,譚文勝

      (1.華南理工大學機械與汽車工程學院,廣東 廣州 510640;2.廣州柏誠智能科技有限公司,廣東 廣州 511442)

      基于Hash算法嵌入式系統(tǒng)固件安全驗證方法

      劉桂雄1,余中潑1,洪曉斌1,譚文勝2

      (1.華南理工大學機械與汽車工程學院,廣東 廣州 510640;2.廣州柏誠智能科技有限公司,廣東 廣州 511442)

      針對多樣化攻擊對終端設備嵌入式系統(tǒng)安全造成的嚴重威脅,設計一種嵌入式系統(tǒng)固件安全驗證方法。基于固件安全分析和可信根完整性度量,提出基于Hash算法嵌入式系統(tǒng)固件安全驗證方法,在驗證計算機上設計安全驗證軟件,通過通信協(xié)議分析、串口偵聽,實現(xiàn)固件二進制數(shù)據(jù)提取、安全固件Hash值建立、未知安全固件Hash建立等功能,完成嵌入式系統(tǒng)固件載入或者升級過程的完整性驗證,并設計基于MD5算法的PLC固件驗證軟件進行對比實驗。實驗結果表明:該方法可以正確判斷PLC系統(tǒng)固件完整性,可推廣應用到其他具有固件的嵌入式系統(tǒng)設備中。

      嵌入式系統(tǒng);固件;安全驗證;Hash算法

      0 引 言

      工業(yè)控制系統(tǒng)是數(shù)據(jù)采集與監(jiān)控系統(tǒng)、分布式控制系統(tǒng)、現(xiàn)場總線控制系統(tǒng)的總稱[1],為國家關鍵基礎設施提供安全可靠的數(shù)據(jù)采集、通信、控制、監(jiān)測等功能,其受到的各種安全威脅也日益嚴重[2-3]。從計算機系統(tǒng)中裁剪并發(fā)展起來的嵌入式系統(tǒng)固件(embedded system firmware,ESF),是工業(yè)控制系統(tǒng)的重要部分,研究開發(fā)適用于ESF的安全防范技術意義重大。目前主流ESF包括嵌入式操作系統(tǒng)、嵌入式PLC系統(tǒng),國內(nèi)外關于嵌入式系統(tǒng)安全固件研究成果較少,第一代Adept-50操作系統(tǒng)[4]、AT&T與MIT聯(lián)合開發(fā)的Multics系統(tǒng)與美國Trusted Information Symtems公司的Tmach操作系統(tǒng)是代表性安全系統(tǒng),成果突出于各種安全模型及訪問控制框架。由于攻擊方式多樣化,增加ESF復雜程度有利于提高其安全性;但由于能源、體積、價格等因素,現(xiàn)有計算機安全技術難以直接用于嵌入式系統(tǒng),提取嵌入式系統(tǒng)中固件代碼并對其進行安全驗證至今還沒有很好的解決方法[5]?;谝陨媳尘?,本文研究一種基于Hash算法[6]的嵌入式系統(tǒng)固件安全驗證方法,提高嵌入式系統(tǒng)固件源的安全性。

      1 基于Hash算法固件安全驗證方法

      根據(jù)ANSI/ISA-99等標準,控制系統(tǒng)分層參考模型的第1層(即本地或基本控制層)直接對第0層(即現(xiàn)場被控設備的物理空間層)控制、監(jiān)測[1],若第1層受到攻擊而發(fā)出錯誤指令,則第0層現(xiàn)場被控設備可能異常運行。第1層主要包含可編程邏輯控制器(programmable logic controller,PLC)、遠程終端、智能電子設備等嵌入式設備;增強嵌入式系統(tǒng)本身安全可從電路安全、硬件(處理器、內(nèi)存、加密處理器等)安全、軟件(操作系統(tǒng)、虛擬機[7]等)安全、應用(應用程序[8]、網(wǎng)絡安全協(xié)議等)安全等分層框架以及層次間相互安全協(xié)議[9-10]來實現(xiàn)。

      固件作為可信根,具有隱蔽性強、難以檢測、不易清除、破壞性強等特點[11],隱藏于固件芯片中的惡意代碼能受到攻擊者的遠程控制,進行諸如刪除數(shù)據(jù)、信息竊取、摧毀系統(tǒng)等破壞活動。驗證固件完整性,最直接辦法就是提取二進制代碼和已知安全固件代碼進行一一對比驗證[12]。Hash算法作為將任意長度輸入變換成固定長度輸出的散列壓縮算法廣泛應用于數(shù)據(jù)加密技術,在可信計算中以可信平臺模塊TPM為可信根[13],計算公式為

      New PCR[i]=Hash(Old PCR[i]||New Value)

      其中,PCR是在TPM中用于保存完整性度量摘要值的平臺配置寄存器,New PCR[i]代表當前平臺的完整性狀態(tài),Old PCR[i]代表上一次TPM平臺啟動時的完整性狀態(tài),符號||表示連接,Old PCR[i]||New Value表示將上一次Hash值和當前新值相連。具體要求是每次在TPM啟動時PCR以一種新迭代計算Hash值的方式被賦值,用摘要的形式存儲在PCR中,并將新計算Hash值作為新的完整性度量值替換原來的值。

      本文Hash算法用來生成每個固件的識別序列?;贖ash算法的固件安全驗證方法包括串口偵聽、模擬通信、固件二進制代碼提取、安全固件Hash值建立、未知安全固件Hash值建立、驗證未知安全固件完整性等部分。圖1為實現(xiàn)該方法的終端嵌入式系統(tǒng)設備固件安全驗證系統(tǒng)架構圖,在工作計算機傳輸嵌入式設備固件外部增加驗證計算機,進行安全固件傳輸(標號①)建立安全固件Hash值和未知安全固件傳輸(標號②)驗證,對固件進行安全驗證。

      圖1 嵌入式設備固件安全驗證系統(tǒng)架構圖

      1.1 安全固件Hash值建立

      安全固件Hash值建立由廠家完成,當用戶需要燒入固件或者升級固件時,廠家不僅提供固件(該固件從廠家到用戶手中過程可能受到攻擊,故下文也稱未知安全固件),同時提供安全固件Hash值。

      圖2是安全固件Hash值建立流程圖。其中,通信協(xié)議分析、串口偵聽是建立固件Hash值的準備環(huán)節(jié),通信協(xié)議分析得到該嵌入式設備異步串行接口使用的數(shù)據(jù)傳輸協(xié)議;串口偵聽通過讀串口截取傳輸數(shù)據(jù)。通過串口偵聽截獲安全固件傳輸過程的二進制數(shù)據(jù),基于通信協(xié)議分析提取安全固件二進制數(shù)據(jù)并對其進行Hash,重復獲得2次以上Hash值后進行對比驗證,通過后建立安全固件Hash值。

      圖2 安全固件Hash值建立流程圖

      1.2 未知安全固件Hash及驗證

      未知安全固件Hash和對比驗證由用戶完成。用戶燒入固件或者升級固件時,從廠家獲得未知安全固件、安全固件Hash值后,通過下面方法開發(fā)的驗證軟件對未知安全固件進行驗證。未知安全固件不能直接載入到嵌入式設備中,而需基于通信協(xié)議分析建立一個模擬嵌入式設備的通信軟件,與計算機通信。

      圖3為Hash驗證流程圖。計算機通過JTAG等接口將未知安全固件燒寫到該軟件,得到傳輸過程的二進制數(shù)據(jù),去掉截獲數(shù)據(jù)中通信協(xié)議部分,提取未知安全固件二進制數(shù)據(jù),并進行Hash值計算;再將未知安全固件Hash值、安全固件Hash值進行對比,若兩者相同則通過驗證,否則不通過。

      圖3 未知安全固件截獲Hash值建立流程圖

      2 實例分析

      利用C#語言開發(fā)一個基于信息摘要算法(Message-Digest Algorithm 5,MD5)的PLC固件驗證軟件,MD5是計算方便、碰撞概率極低的Hash算法之一。采用信捷XC3系列14-T-C型號PLC,并采用該公司提供的V3.2、V3.3版本安全固件。

      2.1 通信協(xié)議分析

      信捷公司未提供固件通信協(xié)議,需對信捷PLC異步串行接口的數(shù)據(jù)傳輸協(xié)議進行分析:查看產(chǎn)品使用手冊確定其異步串行傳輸規(guī)程RS-232線路基本參數(shù):57600波特率、8位數(shù)據(jù)位、1位停止位和偶校驗方式;利用串口偵聽截獲傳輸數(shù)據(jù),得到通信協(xié)議是Modbus串行通信協(xié)議;對多次截獲的傳輸數(shù)據(jù)進行相關性、規(guī)律性分析,找出協(xié)議數(shù)據(jù)段、固件數(shù)據(jù)段,剖析其數(shù)據(jù)鏈路層傳輸協(xié)議。圖4是對傳輸數(shù)據(jù)進行分析得到的數(shù)據(jù)摘要。

      圖4 傳輸數(shù)據(jù)的分析摘要

      2.2 安全固件MD5值建立實驗設計

      圖5、圖6分別為安全固件MD5值建立實驗的軟件設計流程圖和軟件界面圖。單擊“串口偵聽(第1次)”按鈕,進入串口偵聽模式,截獲傳輸過程的數(shù)據(jù);單擊“提取安全固件”按鈕,分析截獲數(shù)據(jù),分離出通信協(xié)議數(shù)據(jù)段、固件數(shù)據(jù)段,保存安全固件數(shù)據(jù);單擊“串口偵聽(第2次)”按鈕,進行第2次安全固件截獲,單擊對應“提取安全固件”提取安全固件數(shù)據(jù);單擊“校對并計算MD5值”,將兩次提取的安全固件數(shù)據(jù)進行按位檢驗,若校驗成功,則計算安全固件MD5值,否則重新進行。

      2.3 未知安全固件截獲及驗證實驗設計

      圖7為未知安全固件截獲及驗證實驗的軟件界面圖。單擊“未知安全固件傳輸數(shù)據(jù)”按鈕,顯示未知安全固件傳輸數(shù)據(jù);單擊“提取固件”按鈕,分離出固件數(shù)據(jù)段;單擊“計算固件MD5”按鈕,根據(jù)固件數(shù)據(jù)計算得到32位MD5值;單擊“讀取安全固件MD5”按鈕,再單擊“基于MD5驗證”按鈕,將未知安全固件MD5值和安全固件MD5值進行檢驗,若校驗成功,則固件完整,否則固件安全性未知。

      圖5 安全固件MD5值建立軟件流程圖

      圖6 安全固件MD5值建立實驗軟件界面

      圖7 未知安全固件截獲及驗證軟件界面

      2.4 對比實驗分析

      設計4組試驗,分別為增加、減少、替換和完整的固件數(shù)據(jù)試驗。固件版本統(tǒng)一選擇為信捷PLC固件V3.2。表1是4組試驗結果。

      表1 4組試驗結果

      試驗都準確識別,前3組不完整、第4組完整,結果表明該方法通過驗證固件源完整性有效提高其安全性。

      3 結束語

      1)基于Hash算法的嵌入式系統(tǒng)固件安全驗證方法具有較好的應用性,用一臺外部驗證計算機來對固件進行安全驗證,提高固件安全性同時不必對現(xiàn)有固件進行更改。

      2)該方法基于通信協(xié)議分析、串口偵聽技術,實現(xiàn)固件二進制數(shù)據(jù)提取、安全固件Hash值建立、未知安全固件Hash建立、對比驗證等功能,進行嵌入式系統(tǒng)固件載入或者升級過程的完整性驗證,從而提高嵌入式系統(tǒng)固件源的安全性。

      3)用C#開發(fā)一個基于MD5算法的PLC固件驗證軟件,對信捷PLC進行固件驗證,實驗結果證明該方法可正確判斷PLC系統(tǒng)固件完整性,且可以應用到其他具有固件的嵌入式系統(tǒng)設備。

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

      [2]張彤.電力可信網(wǎng)絡體系及關鍵技術的研究[D].北京:華北電力大學,2013.

      [3]Chen K.Reversing and exploiting an Apple firmware update[C]∥ Proceedings ofthe IEEE Symposinm on Security and Privacy.Oakland,2009.

      [4]Weissman C.Security controls in the ADEPT-50 time sharing system[C]∥Proceedings of the 1069 AFIPS Fall Joint Computer Conference,1969:119-133.

      [5]McMinn L,Butts J,Robinson D,et al.Exploiting the critical infrastructure via nontraditional system inputs[J]. Association for Computing Machinery,2011:37-39.

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

      [7]徐欽桂.虛擬儀器網(wǎng)絡化測控系統(tǒng)可信分析及增強方法研究[D].廣州:華南理工大學,2012.

      [8]徐欽桂,劉桂雄.應用程序作弊型后門防御模型[J].計算機工程與設計,2010(11):2423-2426,2438.

      [9]Department of Homeland Security(DHS).Cyber security assessments of industrial control system[S].Washington DC,2010.

      [10]The European Network and Information Security Agency(ENISA).Protecting industrial control systems,recommenda tions for europe and member state[R].Heraklion,Greece:Recommendations for Europe and Member States,2011.

      [11]黃華強.嵌入式系統(tǒng)程序完整性驗證技術研究與實現(xiàn)[D].廣州:華南理工大學,2010.

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

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

      Embedded system firmware security verification method based on Hash algorithm

      LIU Gui-xiong1,YU Zhong-po1,HONG Xiao-bin1,TAN Wen-sheng2
      (1.School of Mechanical and Automotive Engineering,South China University of Technology,Guangzhou 510640,China;2.Basic Intelligence Technology Co.,Ltd.,Guangzhou 511442,China)

      Aimed at the challenge that the diverse attacks defy the terminal equipment embedded system security seriously,an embedded system firmware security verification method is studied. According to firmware safety analysis and the measurement method of trusted root integrity,an embedded system firmware security verification method based on Hash algorithm is proposed.It designs a security authentication software on the computer and implements the function of firmware binary data extraction,safety firmware Hash value establishment,unknown security firmware Hash value establishment and so on through the communication protocol analysis and serial port monitor. The embedded system firmware integrity is verified in loading or upgrading process.Meanwhile,firmware authentication software for PLC based on MD5 algorithm is designed to conduct an acontrast experiment.Experimental results indicate that the method can judge firmware integrity of PLC system exactly and it can be applied to other embedded system firmware.

      embedded system;firmware;security verification;Hash algorithm

      TP301.6;O224;TP311.522;TP309

      :A

      :1674-5124(2014)05-0092-04

      10.11857/j.issn.1674-5124.2014.05.024

      2014-04-18;

      :2014-06-12

      國家科技型中小企業(yè)技術創(chuàng)新基金(12C26214405145)廣州市科技計劃項目(2013J4400064)

      劉桂雄(1968-),男,廣東揭陽市人,教授,博士生導師,主要從事先進傳感與網(wǎng)絡化控制研究。

      猜你喜歡
      固件通信協(xié)議完整性
      稠油熱采水泥環(huán)完整性研究
      云南化工(2021年9期)2021-12-21 07:44:00
      基于Z-Stack通信協(xié)議棧的紅外地溫采集電路設計
      莫斷音動聽 且惜意傳情——論音樂作品“完整性欣賞”的意義
      基于固件的遠程身份認證
      基于DMX512通信協(xié)議的多路轉發(fā)器設計與研究
      基于NS-3的PLC多頻通信協(xié)議仿真平臺設計與實現(xiàn)
      電測與儀表(2016年2期)2016-04-12 00:24:52
      精子DNA完整性損傷的發(fā)生機制及診斷治療
      提取ROM固件中的APP
      電腦愛好者(2015年7期)2015-04-09 08:54:02
      一種通過USB接口的可靠固件升級技術
      RSSP-I、RSSP-Ⅱ及SAHARA三種安全通信協(xié)議實現(xiàn)技術簡介
      泰来县| 舞阳县| 隆德县| 东明县| 甘德县| 顺平县| 德江县| 克什克腾旗| 陆良县| 康平县| 嫩江县| 兰溪市| 临江市| 承德县| 崇义县| 丹巴县| 绥宁县| 桐柏县| 恩平市| 海林市| 天长市| 阿拉善左旗| 陵水| 绥宁县| 林甸县| 古浪县| 郑州市| 白山市| 忻州市| 来凤县| 乌鲁木齐市| 开阳县| 会同县| 三门峡市| 郎溪县| 黎川县| 瑞丽市| 余干县| 建德市| 远安县| 梓潼县|