?

動態可信度量分析的硬件安全機制研究*

2015-12-07 06:18驊,劉
電子技術應用 2015年1期
關鍵詞:度量進程重構

周 驊,劉 橋

(貴州大學 電子與信息學院,貴州 貴陽550025)

動態可信度量分析的硬件安全機制研究*

周驊,劉橋

(貴州大學 電子與信息學院,貴州 貴陽550025)

以可信計算理論為基礎,根據TCG組織的TPM1.2規范中對于信任鏈的構建中實現動態可信度量分析的描述,提出了一種基于FPGA動態可重構的動態可信度量分析實現DRTM的設計方法。并且通過建立基于ARM的嵌入式系統與FPGA結合的系統驗證平臺對設計進行了測試及分析,給出了相對應的測試系統。通過測試證明,基于FPGA動態可重構的DRTM設計對于TPM中構建動態信任鏈是一種有益的方法。

可信計算;動態可信度量根;FPGA動態可重構

0 引言

針對計算機系統的安全問題,TCG組織發布了TPM1.1規范[1],該規范制定了靜態可信度量根(SRTM)的標準。然而使用SRTM的計算機系統存在以下安全隱患:(1)引導裝載程序(BootLoader)作為系統引導程序是整個平臺啟動的關鍵,但是其存在的一些漏洞使其容易受到攻擊[2];(2)針對 BIOS的攻擊源于計算機生產廠家允許使用者對BIOS進行固件升級,這就給攻擊者創造了條件,通過 BIOS實現對計算平臺的攻擊;(3)針對惡意重啟TPM的攻擊,通過重啟 TPM,破壞其建立的信任鏈,實現攻擊的目的。

為了彌補 SRTM功能的不足,TCG發布了 TPM1.2規范,該規范在TPM1.1的基礎上增加了平臺配置寄存器(PCR)以便能夠實現動態可信度量根(DRTM)?;赥PM1.2規范的DRTM由可信硬件出發,同TPM一起構建起一個動態可信度量架構。TPM1.2規范中新增的 8個PCR可以在需要重新構建信任鏈時將信任鏈重置而不需要重啟整個平臺[3]。但是 TPM1.2規范中只是定義了DRTM,而沒有給出具體的實現。

本文基于TPM1.2規范中的DRTM,提出一種基于FPGA動態可重構技術的DRTM設計實現方法,同時基于嵌入式系統的計算環境對其進行驗證。

1 信任鏈的構建

1.1信任鏈的選擇

基于TPM模塊構建可信計算的信任鏈是建立可信計算環境的核心,SRTM只在系統啟動時參與建立信任鏈,系統啟動完成后以及系統運行中不再對信任鏈進行評估。而DRTM可以在任意時刻重新構建信任鏈,這是與SRTM根本的區別,同時DRTM重構信任鏈時對系統的正常運行沒有影響。SRTM是BIOS軟件的一部分[4],而DRTM始于CPU的安全指令跟BIOS無關,因此可以避免針對BIOS的攻擊,同時基于DRTM的信任鏈也能夠保證BootLoader的可信。因此基于DRTM的可信計算度量是真正意義上的完整性度量,為可信計算平臺建立了堅實可信的信任鏈。

TCG的信任鏈中可信度量根(CRTM)是在TPM之外存在于BIOS中的第一個軟件模塊,TPM有3個可信根:度量可信根 RTM(a Root of Trust for Measurement)、報告可信根 RTR(a Root of Trust for Reporting)和存儲可信根RTS(a Root of Trust for Storage)?;谲浖目尚哦攘扛菀妆还?,而硬件則不容易被篡改,如果將RTM、RTS以及RTR全部集成在 TPM芯片中,可以避免遭到軟件攻擊,提高平臺安全性[5],國內也有針對這方面的相關內容研究[6-7]。本文基于上述分析給出基于硬件實現CRTM的方案,其基本結構如圖1所示。

圖1 基于硬件的可信度量根的結構

基于這種結構的信任鏈的可靠性得到很大的提高,但是RTM、RTS以及RTR全部集成在TPM芯片中,硬件資源負擔較重,并且需要對現有計算平臺的系統結構重新設計,成本較高。為實現安全可靠且節約硬件成本開銷的目的,采用加入第三方度量模塊,即使用FPGA動態可重構技術來實現CRTM。FPGA既是硬件同時又可以利用軟件編程的方式來配置其內部結構,實現硬件的可編程能力,而基于FPGA的動態可重構技術可以在不重啟系統的情況下改變其硬件配置結構,完全適合這里的需求。本文使用星形動態信任鏈結構,信任鏈結構如圖2所示。

圖2 基于第三方度量模塊的動態可信鏈結構

1.2動態信任鏈的模型

對于信任鏈模型的建立需要考量兩方面:(1)對應用程序的動態行為進行行為建模;(2)判斷建模后該應用程序的行為是否以所期望的方式朝著預期目標發展。這里提出了一種基于 DRTM的完整性度量模型(Dynamic Integrity Measurement Model,DIMM)。DIMM采用度量代理,在加載應用程序后對運行的進程進行實時的監控,以完成真正意義上的動態度量。

根據進程所產生的行為是否對系統的完整性造成破壞,分為觀察行為和修改行為。DIMM將進程分為可信、可疑、攻擊三類:針對修改行為進行判斷,如果進程可信,則在該進程執行完畢之后更新完整性基準庫和安全策略;如果不能確定為可信進程,則進行隔離;對于攻擊性的進程則立即停止其運行。DIMM構架如圖3所示。

圖3 DIMM構架

應用程序在載入時,首先要通過度量模塊度量其完整性,然后將結果與標準值相比較,如果相同,則其得到信任并且獲得控制權。針對修改的進程,度量代理將該進程交給以下四個模塊進行完整的動態度量:判定模塊依據制定的安全策略判定該進程是否被許可,并進一步判定是否可信;度量模塊的作用是針對進程展開完整性度量;核實模塊檢測系統的完整性是否遭到破壞;隔離模塊將異常進程隔離起來以免影響正常的系統進程。

2 設計及驗證

2.1基于FPGA的動態可重構

基于DRTM的動態可信度量分析需要在系統運行時能夠根據需要重建信任鏈并且又不影響系統的運行,這里采用FPGA的動態可重構技術來實現。動態可重構技術是指擁有特殊結構的FPGA,使用SRAM編程技術,在特殊情況下能夠實現電路的功能和邏輯結構進行重新配置的特性。FPGA動態可重構技術本質是對FPGA的內部結構或者邏輯連接進行部分或者整體的更新,這些更新的運行是實時的,并且不會影響到整個系統的正常運行。

2.2系統搭建

根據動態信任鏈的構建方式,基于ARM嵌入式系統及可重構FPGA搭建了一個系統驗證平臺,其架構如圖4所示。系統上電后,控制權首先掌握在FPGA手中,FPGA將ARM復位,阻止其與其他設備的通信并啟動TPM,然后將指令發送給TPM并調用SHA-1算法;TPM啟動之后其PCR[0]內會獲得一段摘要值,FPGA將這段值與存儲在片內的標準值進行比對,如果不相同則平臺將不會被啟動,并且會更新存儲日志,否則將繼續對系統變量進行度量。若FPGA獲得摘要值均可信,則FPGA將平臺控制權移交給ARM。

圖4 系統驗證平臺結構

ARM啟動后加載BootLoader,初始化各種外設并且調用代碼度量模塊。度量模塊調用SHA-1算法,并且將擴展值存儲在 PCR[4]中,FPGA再次進行比對,只有度量值和標準庫的值一樣時,FPGA才正式將控制權交給ARM,然后才正式啟動系統內核?;贔PGA的系統整體結構如圖5所示。

圖5 FPGA內系統結構圖

其中CM模塊是整個系統的核心,該模塊負責控制其他模塊的運行,因此對該模塊的穩定性要求很高,這里使用有限狀態機來實現CM模塊的設計。針對CM狀態機進行仿真的時序波形如圖6所示。

圖6 CM模塊狀態機仿真時序圖

3 測試及分析

本文算法部分采用Xilinx公司的Virtex-5系列FPGA進行驗證,運用AES算法對DRTM中的重要數據進行加密。通過對密鑰、明文和密文進行測試,圖7為仿真結果。

針對建立的DRTM的測試從以下幾個方面進行:(1) DRTM是否可以正常運行;(2)模擬各種類型的攻擊,測試DRTM抵御攻擊的能力;(3)添加有DRTM模塊的可信驗證平臺比未安裝的優勢在哪里。通過搭建測試平臺,分別模擬針對TPM命令、標準庫、引導程序、內核與根文件的攻擊,對應這些攻擊的日志返回值分別為:0x00、0x01、0x02、0x03和0x04,如果正常啟動則返回0xaa。

測試流程包括:打開TPM命令,將原文的第二個字節改為不同的值;將修改后的命令文件加載到NAND Flash中,然后重啟系統;下載不含 CM模塊的程序到FPGA內,然后重啟系統;將未修改的 TPM命令文件和完整的FPGA程序下載到對應芯片中,然后重啟系統。

通過測試,添加DRTM模塊的平臺啟動后有著較好的抵御攻擊的能力,這種能力主要體現在:在保證平臺安全啟動的同時,將動態度量延伸到程序加載之后對進程的度量,這就實現了實時的動態可信度量分析。

圖7 AES加密算法仿真時序圖

4 結束語

通過模擬攻擊實驗可以發現,添加有DRTM系列模塊的可信驗證平臺有著很好的抵御攻擊的能力;可信計算驗證平臺的啟動時間比普通平臺慢3 s左右,這個時間不會對平臺的使用者產生明顯的影響。本系統在保證平臺安全啟動的同時,將動態度量延伸到程序加載之后的階段,達到了預期目標。

[1]HOFMANN O,DUNN A,KIM S.Ensuring operating system kernel integrity with OSck[C].Proceeding of the 16th International Conference on Architectural Sup-port for Programming Languages and Operating Systems,2011:164-177.

[2]Feng Dengguo,Qin Yu.A property-based attestation protocol for TCM[J].Science China(Information Sciences),2010 (3):243-255.

[3]AZAB A M,Peng Ning,SEZER E C.HIMA:a hypervisorbased integrity measurement agent[C].Proceedings of the 2009 Annual Computer Security Application Conference,2010:1356-1360.

[4]Xu Ziyao,He Yeping,Deng Lingli.An integrity assurance mechanism for run-time programs[C].Lecture Notes in Computer Science,2009:45-53.

[5]詹靜,張煥國,徐卜偉,等.基于狀態機理論的可信平臺模塊測試研究[J].武漢大學學報(信息學版),2008,33(10):1067-1069.

[6]蘇培培,劉寶明.基于國產處理器的可信系統研究與實現[J].電子技術應用,2012,38(1):136-138.

[7]倪樂,戴紫彬,楊同杰,等.可重構雙基雙域模乘器設計與實現[J].電子應用技術,2012,38(10):136-139.

Dynamic trusted measurement research with hardware security mechanisms

Zhou Hua,Liu Qiao
(School of Electronic and Information,Guizhou University,Guiyang 550025,China)

In this paper,based on the theory of trusted computing,a trust chain building method with DRTM is proposed, which is described by the based TPM1.2 specification from the TCG organization and uses the dynamic reconfigurable FPGA.A verification platform is established through combining the ARM-based embedded systems and FPGA,which is used to test and verify the proposed design in this paper.The test proves that the DRTM design based on reconfigurable FPGA is a useful way to build dynamic trust chain for TPM.

trusted computing;DRTM;FPGA dynamic reconfigurable

TP391.9

A

0258-7998(2015)01-0115-03

10.16157/j.cnki.0258-7998.2014052001846

貴州省科學技術基金項目(黔科合 J字【2011】2194號)

2014-07-02)

周驊(1978-),男,博士研究生,副教授,主要研究方向:EDA、集成電路設計。

劉橋(1955-),通信作者,男,博士生導師,教授,主要研究方向:EDA、新型電子器件,E-mail:liuqiao1955@163.com。

猜你喜歡
度量進程重構
鮑文慧《度量空間之一》
視頻壓縮感知采樣率自適應的幀間片匹配重構
模糊度量空間的強嵌入
長城敘事的重構
債券市場對外開放的進程與展望
迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
改革開放進程中的國際收支統計
北方大陸 重構未來
北京的重構與再造
地質異常的奇異性度量與隱伏源致礦異常識別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合