999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向物聯網應用的SoC安全檢查架構設計

2021-02-05 03:03:12閆華鈺
計算機工程 2021年2期
關鍵詞:引擎策略

閆華鈺,陳 嵐,佟 鑫,李 瑩

(1.中國科學院微電子研究所,北京 100029;2.中國科學院大學,北京 100049)

0 概述

物聯網技術的不斷發展可實現自動駕駛、智能家居和可穿戴等設備的互聯,為人們提供更加便捷的生活方式。麥肯錫2019年度研究報告指出,2015年有250億部聯網設備,預計到2025年將超過500億部[1]。物聯網設備通常由一個或多個SoC組成,一般包含系統感知和用戶隱私等關鍵信息。近年來,以RISC-V為代表的開源硬件的提出突破了傳統硬件架構授權的限制,進一步促進了物聯網設備的創新和發展,但由于開源硬件缺少安全保護機制,使其硬件安全隱患更為突出,如硬件木馬可對加密核進行攻擊以獲取密鑰,或對外設接口進行攻擊,造成外設接口的功能被破壞[2],尤其是利用運行時條件觸發的系統級攻擊,很難通過傳統測試方法進行檢測和防御。

目前,雖然已有一些電路硬件安全檢測方法,但其主要集中在設計制造過程中[3-4],缺乏有效的電路運行時安全檢查方法。片上在線安全檢查是指在芯片設計時加入安全檢查功能,使其能夠在部署實現后對芯片進行運行時安全檢查,并在發現安全問題時及時響應,這對于SoC全周期安全具有重要意義。本文面向物聯網設備應用,針對片上資源和系統級攻擊的特點,設計系統級安全策略及可遷移、可擴展和內容可配置的檢查架構,并基于RISC-V的SoC環境驗證所設計檢查架構的有效性。

1 SoC安全檢查方法

傳統運行時檢測方法包括內建自測試方法和信息流追蹤方法。內建自測試方法通過掃描鏈將測試向量傳輸至檢查模塊驗證模塊功能[5],如將AES中的關鍵路徑配置為環形振蕩器,通過檢測振蕩頻率檢查是否有硬件木馬植入[6]。該方法需對邏輯完全了解,且存在測試向量狀態空間爆炸等問題。信息流追蹤方法通過追蹤檢查功耗、延時、電流等特定信息通路中是否存在安全問題,如利用采集電路中的電流信息[7]與黃金電路邊界作對比以區分異常電路,但該方法增加了大量的額外邏輯開銷和延遲開銷,并且上述方法均不能實現檢查結構的可擴展及內容的可配置,一旦部署就不可更改。

BASAK等人提出一種采用形式化驗證方法檢測硬件威脅的SoC安全架構,可在不了解電路內部邏輯的情況下進行安全檢查[8]。該架構由策略引擎和包裝器組成,策略引擎執行安全策略,根據包裝器報告的行為對IP進行檢查。最初的策略引擎設計采用微處理器,之后為降低資源開銷將策略引擎以狀態機的形式實現,策略引擎基于FPGA,這保證了策略更新的需求[9]。但該架構未與應用場景相結合,且其設計的架構并非專門針對系統級檢查,也沒有關于策略可配置性的描述。本文設計以此為啟發,對系統級安全策略進行深入研究。

2 系統級安全策略

在物聯網應用中,系統芯片經常需要對關鍵信息進行加密傳輸,因此保護關鍵信息在生成和傳輸過程中的安全性至關重要。結合物聯網應用場景,對SoC資源進行分類分析,并研究相應的攻擊與系統級安全策略,進而設計片上安全檢查架構和流程。

2.1 攻擊分類

保護芯片關鍵信息的難點在于攻擊者有多種攻擊方式,根據芯片關鍵信息的獲取方式和難易程度,將攻擊分為以下6類:

1)普通惡意軟件攻擊:主要包括緩沖區溢出攻擊[10]、代碼注入攻擊、BIOS感染攻擊和面向返回的編程攻擊等,在應用軟件層面實施攻擊,獲取或破壞關鍵信息。

2)系統惡意軟件攻擊:主要包含利用系統漏洞進行攻擊和系統本身執行惡意行為,在系統軟件層面實施攻擊,獲取或破壞關鍵信息。

3)側信道攻擊:利用側信道信息推測機密信息,例如差分功耗分析攻擊[11]、差分電磁分析攻擊[12]和時間攻擊。

4)普通硬件攻擊:利用設備的調試端口或外設端口進行攻擊[13],從而獲取機密信息,破壞系統功能,對設備造成破壞。

5)逆向工程:主要包括芯片級反向工程和IP核功能重構,攻擊者利用逆向手段獲取機密信息、破壞電路功能和注入惡意功能等。

6)惡意硬件注入攻擊:在電路中植入惡意的硬件電路或固件代碼,達到破壞原始電路功能、降低性能、泄露機密信息或造成拒絕服務等目的[14],主要包括硬件木馬攻擊、固件惡意代碼攻擊和硬件后門攻擊等,其中以硬件木馬攻擊為主。

本文主要研究對于惡意硬件注入攻擊的檢查策略和檢查架構。

2.2 安全策略

安全策略根據CIA原則可分為機密性、完整性和可用性策略[15]。根據對惡意硬件注入攻擊的詳細分析,相應的系統級策略類型可分為訪問控制、信息流、生存約束、時效約束和通信策略,下面分類列舉出目前已有的系統級安全策略:

1)訪問控制類:在啟動期間,任何IP都不能訪問加密引擎的內部寄存器,該策略保護加密引擎在系統啟動期間的機密數據不被泄露,屬于機密性策略;當CPU處于高安全模式時,I/O設備無法更改受保護的內存數據,該策略保護內存數據不被篡改,屬于完整性策略。

2)信息流類:在系統運行時,除加密引擎外,其他IP不能訪問存儲密鑰種子的固件。該策略保護密鑰種子不被泄露,屬于機密性策略。

3)生存約束類:加密引擎在使用過程中不能出現功能完整性破壞。該策略保護加密引擎的功能正確,不被破壞,屬于完整性策略。

4)時效約束類:IP上的固件經過更新,證書需要重新認證。該策略保護更新后的IP固件得到認證,屬于可用性策略。

5)通信類:從IP A到IP B傳輸的私密信息不能被第三方IP訪問。該策略保護數據在不同IP間傳輸的安全,屬于機密性策略。

3 SoC安全檢查架構設計

如圖1所示,本文設計的系統級策略檢查架構包括策略引擎和包裝器,策略引擎和包裝器采用輕量級設計且可配置和升級。策略檢查架構不依賴于SoC的原有架構,采用通用性設計,方便遷移到其他系統中。

圖1 策略檢查架構示意圖Fig.1 Schematic diagram of the policy check architecture

3.1 策略引擎

策略引擎是執行安全策略的核心,以狀態機的形式進行安全策略檢查,并根據包裝器提供的信號判斷待檢查模塊的狀態,當條件允許時進行安全檢查,并反饋被檢查模塊是否存在安全問題。策略引擎內的策略狀態機根據需要進行配置,可在FPGA等可編程硬件上實現以滿足更新需求。

3.2 包裝器

包裝器包裹在IP模塊的外圍,將IP的狀態信息傳遞給策略引擎。包裝器根據策略引擎的檢查狀態,靈活地選擇將IP的接口分配給系統總線或者策略引擎檢查總線,協助策略引擎實現對IP模塊的檢查。

4 驗證系統設計

4.1 實驗SoC搭建

為驗證本文設計架構的可行性,在PULPino系統[16]中嵌入檢查架構。PULPino是一款設計精簡的RISC-V[17]架構開源SoC平臺。首先根據驗證需要,在PULPino系統中添加AES、內存和AXI中斷控制器3個功能IP,形成可用于IoT感知設備的SoC。圖2中白色模塊為PULPino SoC原始組成部分,斜對角線模塊為添加的功能IP,深灰色的SPC模塊即為策略引擎,各個IP上包裹的淺灰色模塊即為包裝器,它們之間通過單獨的連線連接。當SPC檢查出錯誤發生時,會將相應的錯誤代碼寫入錯誤寄存器并發送中斷信號。CPU通過執行中斷程序讀取錯誤寄存器中的值并將錯誤代碼輸出。

圖2 在PULPino SoC上的策略檢查架構Fig.2 Policy check architecture on the PULPino SoC

4.2 面向物聯網應用的安全策略檢查流程

在SoC上的資源主要分為IP核、存儲和接口,系統在執行任務時需要各類資源之間相互配合,因此對SoC進行片上安全檢查就是對片上的資源進行安全檢查。如圖3所示,在物聯網應用中典型場景為感知設備對采集數據進行加密后傳輸,下面針對該過程分析SoC中可能存在的系統級攻擊和配置執行的安全策略。

在SoC中對數據進行加密傳輸需加密核、內存和外設接口這3類資源配合完成。若在這些資源中存在硬件木馬,將其在運行時觸發激活后對數據進行篡改,則將破壞整個任務流,甚至某些特定環節木馬可修改特定位置數據,最終破解加密信息。因此,在物聯網應用場景中的安全要素為加密后的采集數據,需對該任務流中涉及該要素的加密核、內存和外設接口進行相關安全檢查。

圖3 安全策略、系統資源和任務流的關系Fig.3 Relationship between security policies,system resources and task flows

4.2.1 硬件木馬設計

由于現有Trust-Hub等硬件木馬基準庫中沒有適用的運行時硬件木馬基準電路,因此參考文獻[2,18]中的高隱蔽性木馬結構,并添加運行時觸發條件,設計驗證實驗中的攻擊模型。所設計的硬件木馬由觸發電路和負載組成,在運行時通過特定的數據條件觸發,激活后破壞電路的正常功能。

1)AES硬件木馬。觸發電路為升降計數器[2],在AES中進行特定模式的計算,并且當輸入的明文長度大于所設置的閾值時開始計數,當不滿足條件木馬計數器時清零計數器。在計數到閾值后,使能木馬負載,同時清零計數器。木馬負載是位于AES輪加密單元中的異或門,當木馬激活后,控制異或門翻轉特定位置的加密結果。

2)內存硬件木馬。觸發電路為條件計數器,當輸入內存的數據同時滿足地址觸發條件和數據觸發條件時,計數器開始計數[18]。在計數到閾值后,使能木馬負載,同時清零計數器。木馬負載位于內存寫入電路,由篡改電路和選擇器組成,當木馬激活后,選擇被篡改的數據存入內存。

3)UART硬件木馬。觸發電路為條件計數器,當UART接收到來自總線的數據是輸出數據并且滿足數據條件時,計數器開始計數。在計數到閾值后,使能木馬負載,同時清零計數器。木馬負載位于UART輸出緩存寫入電路,由篡改電路和選擇器組成,當木馬激活后,選擇被篡改的數據存入輸出緩存。

本文設計的AES、內存和UART中的硬件木馬均為運行時觸發木馬,但3種木馬觸發的數據條件不同,木馬負載根據各模塊的特點,作用的位置不同。

4.2.2 安全策略檢查流程

針對上文提到的攻擊和安全要素,本文制定了具體執行的4條安全策略。4條策略分別對加密核、內存和外設接口進行安全檢查,整體構成了對SoC場景下任務流的安全檢查。4條策略的檢查流程如圖4所示。

策略1加密核在系統啟動時不能出現功能完整性破壞,如圖4(a)所示,具體過程為:

1)CPU在boot完成后先進入等待程序,這時策略引擎檢測到CPU boot完成進入檢查狀態,開始對AES進行功能完整性檢查。

2)策略引擎內部存儲明文、密鑰和密文對,策略引擎進入檢查狀態,將明文、密鑰數據發送給加密核,并將加密核計算的密文取回。

3)策略引擎根據存儲的正確密文驗證取回的密文,若驗證結果正確,通知CPU結束等待,進入正常狀態;若驗證結果失敗,策略引擎會將錯誤以錯誤代碼的形式寫入錯誤記錄寄存器,并向CPU發送中斷信號,CPU結束等待執行中斷程序,讀取錯誤寄存器相應位置的值,并將其輸出顯示。

策略2加密核在使用過程中不能出現功能完整性破壞,如圖4(b)所示,具體過程為:

1)加密核包裝器檢測到加密核處于空閑狀態,將其報告給策略引擎。

2)策略引擎內部存儲明文、密鑰和密文對,當策略引擎發現加密核處于空閑狀態時,策略引擎進入檢查狀態,將明文、密鑰數據發送給加密核,并將加密核計算的密文取回。

3)策略引擎根據存儲的正確密文驗證取回的密文,若驗證結果正確,則根據設定的檢查頻率進行延時等待,在滿足檢查條件時開始下一次檢查;若驗證結果失敗,策略引擎會將錯誤以錯誤代碼的形式寫入錯誤記錄寄存器,并向CPU發送中斷信號,CPU執行中斷程序,讀取錯誤寄存器相應位置的值,并將其輸出顯示。

策略3在運行時內存中的數據存取不能遭受篡改,如圖4(c)所示,具體過程為:

1)內存包裝器檢測到內存處于空閑狀態,將其報告給策略引擎。

2)策略引擎進入檢查狀態,采用March C[19-20]算法對內存進行檢查。

3)若檢查結果通過,則根據設定的檢查頻率進行延時等待,在滿足檢查條件時開始下一次檢查;若檢查結果不通過,策略引擎會將錯誤以錯誤代碼的形式寫入錯誤記錄寄存器,同時向CPU發送中斷信號,CPU執行中斷程序,讀取錯誤寄存器相應位置的值,將其輸出顯示并進一步禁用內存。

策略4外設接口傳輸的數據不能遭受篡改,如圖4(d)所示,具體過程為:

1)外設接口為UART,UART包裝器檢測到UART處于空閑狀態,將其報告給策略引擎。

2)策略引擎進入檢查狀態,將檢查數據發送到UART,為驗證UART傳輸數據是否正確,UART的輸入串口接到輸出串口,將發送出的數據回收進行驗證。

圖4 安全策略檢查流程Fig.4 Procedure of security policy check

3)若檢查結果通過,則根據設定的檢查頻率進行延時等待,在滿足檢查條件時開始下一次檢查;若檢查結果不通過,策略引擎會將錯誤以錯誤代碼的形式寫入錯誤記錄寄存器,同時向CPU發送中斷信號,CPU執行中斷程序,讀取錯誤寄存器相應位置的值,將其輸出顯示并進一步禁用UART。

在各檢查流程中,檢查頻率預先設置快速、中速和慢速3個頻次,根據實際應用條件和需要配置檢查頻率的大小。

5 實驗結果與分析

為驗證實驗結果,在AES、內存和UART中分別植入了所設計的運行時觸發惡意硬件木馬,并根據運行時安全策略分別實現對應的策略檢查器。如圖5所示,策略檢查器以狀態機的方式運行,各策略檢查狀態機之間并行運行,分別對各模塊進行檢查,在整體上完成了對SoC中數據加密傳輸過程的系統級安全檢查。錯誤記錄寄存器中包含3個32位寄存器,分別記錄3個檢查狀態機的檢查結果,相應的地址和功能定義如表1所示。

圖5 安全策略檢查電路整體架構Fig.5 Overall architecture of the security policy check circuit

表1 錯誤記錄寄存器功能說明Table 1 Function description of error record registers

AES運行時檢查狀態機如圖6所示,由于AES在接收明文和密鑰數據時就進入busy狀態,因此在加密完成后AES會輸出中斷信號,需CPU或SPC發送清中斷信號才會恢復到等待(idle)狀態,否則AES會停留在忙碌(busy)狀態,不能再次工作。根據狀態跳轉圖進行AES檢查狀態機模塊的Verilog代碼編寫,在ModelSim[21]中將AES檢查狀態機和植入了木馬的AES進行聯合仿真驗證,結果如圖7所示,檢查頻率配置為慢速,經過兩輪檢查發現問題,實驗結果表示AES檢查狀態機可以實現檢查功能。內存和UART檢查狀態機的狀態跳轉圖如圖8、圖9所示,仿真結果與圖7類似,不再詳細介紹。將AES、內存和UART的策略檢查器添加到PULPino系統中進行仿真驗證,下面以AES檢查為例,展示檢查效果。策略檢查器的仿真波形如圖10所示,策略檢查器發現錯誤后發送中斷信號,CPU執行中斷響應程序,讀取錯誤寄存器的值并輸出顯示,如圖11所示。實驗結果顯示策略檢查器可以在PULPino系統中正確實現檢查功能,證明了本文所設計的系統級策略檢查架構的正確性與有效性。

圖6 AES運行時檢查狀態機Fig.6 AES runtime check state machine

圖7 AES策略檢查狀態機仿真波形Fig.7 Simulation waveforms of AES policy check state machine

圖8 內存運行時檢查狀態機Fig.8 Memory runtime check state machine

圖9 UART運行時檢查狀態機Fig.9 UART runtime check state machine

圖10 策略檢查器在PULPino系統中的仿真波形Fig.10 Simulation waveforms of the policy checker in the PULPino system

圖11 CPU運行中斷程序結果Fig.11 Results of CPU running interrupt program

6 結束語

本文分析物聯網應用場景下可能面臨的系統級安全威脅,對系統級安全策略進行分類設計,構建SoC安全檢查架構,根據場景需求進行系統級安全策略配置,通過運行策略執行任務方式進行運行時安全檢查。以典型數據加密傳輸場景為例,為路徑中的攻擊設計4條安全策略,并在基于RISC-V的SoC中進行策略檢查架構的實現。仿真結果顯示,運行時策略檢查狀態機可檢查出加密核、內存和UART接口的功能完整性問題并發送錯誤中斷信號,驗證了本文設計的SoC安全策略檢查架構的正確性與有效性,并且本文研究對建立物聯網SoC,尤其是采用開源硬件系統的運行時安全評估體系具有一定的理論意義和實用價值。后續將進一步優化策略檢查電路的設計,搭建基于FPGA的系統原型,并分析安全檢查架構對系統性能以及資源功耗開銷的影響。

猜你喜歡
引擎策略
以學促干 挺膺擔當 激活砥礪前行的紅色引擎
基于“選—練—評”一體化的二輪復習策略
求初相φ的常見策略
例談未知角三角函數值的求解策略
我說你做講策略
三生 三大引擎齊發力
高中數學復習的具體策略
數學大世界(2018年1期)2018-04-12 05:39:14
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Cocos2d引擎的PuzzleGame開發
主站蜘蛛池模板: 国产玖玖玖精品视频| 91免费在线看| 精品久久777| 天天色综网| 一级毛片在线播放免费| 毛片在线看网站| 国产剧情一区二区| 亚洲精品手机在线| 精品91自产拍在线| 色悠久久久久久久综合网伊人| a级毛片一区二区免费视频| 99视频免费观看| 亚洲国产精品久久久久秋霞影院| 国产成人一区| 亚洲国模精品一区| 91亚洲免费视频| 国产精品自在自线免费观看| 国产农村1级毛片| 少妇极品熟妇人妻专区视频| 一边摸一边做爽的视频17国产 | 日韩无码黄色网站| 女同国产精品一区二区| 亚洲性视频网站| 久久综合AV免费观看| 99久久精品国产综合婷婷| 久久精品午夜视频| 亚洲国产成人无码AV在线影院L | 亚欧成人无码AV在线播放| 不卡无码网| 国内精品小视频福利网址| 婷婷色在线视频| 成年免费在线观看| 国产亚卅精品无码| 亚洲日本中文字幕乱码中文| 国产福利在线观看精品| 免费在线a视频| 试看120秒男女啪啪免费| 日韩 欧美 国产 精品 综合| 国产大片喷水在线在线视频| 亚洲国产成人综合精品2020| 91久久国产成人免费观看| 免费在线不卡视频| 婷婷激情亚洲| 亚洲欧洲国产成人综合不卡| 国产成熟女人性满足视频| 欧美日韩另类在线| 亚洲欧美另类久久久精品播放的| 亚洲乱码精品久久久久..| 狠狠色噜噜狠狠狠狠色综合久| 性色一区| 青青青国产视频| 最近最新中文字幕免费的一页| 高清国产在线| 亚洲人成影院午夜网站| 午夜三级在线| 亚洲综合第一页| 69视频国产| 丁香婷婷激情综合激情| 亚洲日本韩在线观看| 亚洲国产精品不卡在线| 一区二区自拍| 国产精品亚洲а∨天堂免下载| 99热国产在线精品99| 国产精品欧美亚洲韩国日本不卡| 国产又大又粗又猛又爽的视频| 国产综合精品一区二区| 国产一级特黄aa级特黄裸毛片| 婷婷五月在线视频| 老司国产精品视频91| 日韩无码真实干出血视频| 欧美国产日产一区二区| 波多野结衣久久精品| 99久久无色码中文字幕| 国产麻豆福利av在线播放 | 欧美亚洲国产一区| 欧美成人免费一区在线播放| 亚洲成人播放| 国产精品国产三级国产专业不| 情侣午夜国产在线一区无码| 日韩AV手机在线观看蜜芽| 久久semm亚洲国产| 欧日韩在线不卡视频|