本帖最后由 eechina 于 2017-12-1 10:06 編輯 Arm公司供稿 1. 導言 物聯網(IoT)轉型的進程正如火如荼,并有可能改變企業和消費者體驗;ヂ摼W的這個新階段能否取得成功,很大程度上取決于數十億各種互聯設備的信任和安全性能。企業需要依靠來自邊緣計算的數據才能做出商業決策,而消費者需要確保他們的互聯家居和數字生活不會被黑客攻擊。近期的攻擊和安全研究表明,在極端情況下,設計不佳的連接設備有可能被攻陷并導致互聯網基礎架構的關鍵部件被破壞,甚至影響到我們的安全。因此,我們需要能夠應對這些威脅并且適用于各種成本點的設備安全。平臺安全架構(PSA)的使命就是克服這一挑戰。它能夠服務于任何設計合理的 Arm 處理器,包括低成本微控制器。 安全并非可有可無 Arm宣布將推出平臺安全架構(PSA)和配套的開源軟件計劃Trusted Firmware-M。該項目能夠提供由硬件支持的可擴展安全性,可應用于成本從低到高的各類設備。其目的是通過共享的最佳實踐方法提高整個生態系統的安全性。為此,我們需要轉變安全經濟學,降低實施強大安全措施的風險、成本、低層次碎片化和復雜性。 基于微控制器(MCU)的設備數量急速增長將導致: 數十億種物聯網設備和嵌入式連接設備設計,全部基于各種 Arm 解決方案 種類繁雜的使用案例和安全健壯性要求 來自多家供應商的系統組件集成:硬件、軟件和固件 各種組件的多樣化實施 不同項目之間可能無法復用的集成工作 本白皮書概述了全新架構——PSA。這種架構將為日益增加的基于MCU的連接設備奠定基于硬件和固件的安全基礎。PSA不限定CPU架構,但以基于MCU的設備為優先服務對象,同時也可應用于全面可信執行環境(TEE)太過龐大、太過復雜的其他平臺。 運行 Linux 等復雜操作系統、Arm TrustZone® 等現有基于硬件的安全產品以及可信執行環境(TEE)的 Arm 應用處理器(即Cortex-A系列)也同樣適用。 1.1 行業挑戰 行業面臨如下挑戰: 1. 在設備的整個生命周期內實施安全可能代價不菲 2. 安全設備很難實現規;芾 3. 行業對傳感器和執行器接收和發送的數據缺乏信心,因此無法全面發掘物聯網的經濟效益 1.2 Arm 對更安全物聯網的愿景 Arm的安全愿景側重于三個主要領域: 1. 轉變安全經濟學 設備的整個生命周期都應當提供用戶負擔得起的安全性。 2. 實現規;踩 物聯網的云運營商需要相應的設施來安全、有效地管理海量設備,無論何種設備類型和芯片類型。 3. 整個價值鏈的安全 物聯網的一個主要優點就在于它生成和交換的數據,以及從這些數據中分析提取的信息。企業必須能夠判斷數據的可靠性,進而實現整個生態系統共享的經濟效益。 1.3 IP支持 Arm現有的安全產品和技術能夠幫助移動和上網本市場的硅芯片合作伙伴提高安全性和質量并加快產品的上市速度。Arm現有的安全產品包括: Armv8-A等包含TrustZone的Cortex-A系列 Arm可信固件(針對Cortex-A系列),一種開源參考實施,包括可信 啟動和TEE加載組件 將TrustZone引入微控制器市場的Armv8-M架構 Arm SecurCore,防篡改處理器系列 TrustZone CryptoCell,提供平臺級安全服務的安全模塊 TrustZone CryptoIsland,高度集成式安全子系統,旨在提供片上智能卡級別的安全性 Arm Mbed IoT Device Platform,提供相應的操作系統、云服務、工具和開發者生態系統,以實現基于標準的商業物聯網解決方案的規模化開發和部署。 接下來我們將介紹平臺安全架構,為制造更安全連接設備提供方法。 2. 平臺安全架構 2.1 目標 平臺安全架構(PSA)是一個由威脅模型、安全分析以及硬件和固件規范組成的整體。它與開源參考實施共同幫助您在最低的安全層面為所有互聯設備實現統一的安全設計。PSA吸收并整合了整個行業的最佳實踐。它的服務對象是整個物聯網生態系統,從芯片設計師和設備開發者到云和網絡基礎架構提供商以及軟件供應商。 PSA 提供了一種無需自行開發所有元件就能構建安全系統的方法。Arm是這個生態系統的領導者,其目標是保護整個互聯世界。 下列目標概述了確保數十億設備安全的框架: 簡化按照安全標準評估物聯網設備的過程 促進重復利用、提高互操作性和最大程度減少API碎片,進而降低生態系統合作伙伴開發軟件的成本和復雜性 利用PSA提供的原始資源實現設備安全模型,進而降低SoC設計者的成本和復雜性 為了實現上述目標,下列要求必須得到滿足: 為認證/評估基于Arm的SoC或設備建立基礎 定義核心安全功能 定義沙箱安全模型 為第三方軟件提供商實施的安全功能定義框架 定義基礎物聯網安全硬件平臺 為物聯網提供健壯的開源參考實施(類似于上網本和移動市場的Arm可信固件) 2.2 構建模塊 PSA 由三個部分組成: 1. 威脅模型和安全分析,來自各種典型的物聯網使用案例 2. 架構的固件和硬件規范 3. 固件架構規范的開源參考實施 PSA的基礎是設備的威脅模型,它們將安全要求延伸至其他各大構件,如圖 1所示。威脅模型與CPU架構無關,而另外兩大構件的作用是為統一的實施提供支持。 三大構件之間的關系如圖 1 所示。 ![]() 圖 1 – PSA 的組成 2.3 威脅模型與安全分析 設計安全系統時,我們需要結合關鍵問題進行風險分析并建立威脅模型。這些關鍵問題包括: 我們要保護的資產 潛在的威脅 潛在攻擊的范圍和強度 潛在攻擊者的類型以及攻擊方式 通過這些研究可以確定安全目標,隨后制定減輕此類威脅的安全功能要求。 Arm 對相關的物聯網使用案例和情境進行了分析。通過分析得出普遍適用的安全原則,然后用它來指導架構規范文件的制定。 Arm 使用英語語言保護范圍(PP)方法來為評估目標(TOE)制定一系列安全功能要求(SFR)。每一個輪廓都考慮了功能描述、TOE 和必要的安全要求。這些文件要讓并非安全專家的工程師能夠使用。 各種PSA架構規范描述的硬件和軟件安全構件提供了滿足威脅模型所凸顯的安全要求所需的原語。 圖 2 顯示了高層次分析示例。 ![]() 圖 2 – 一個儀表的安全分析示例 2.4 架構規范文件 PSA架構規范包括一系列彼此關聯的文件,如下所列: 1. 設備安全模型 – 基礎的信任模型和模式 2. 可信設備初始化 – 初始安全設備編程和配置要求 3. 可信基礎系統架構 [TBSA-M] – v8-M的硬件平臺要求 4. 可信啟動與固件更新 5. PSA固件框架M [PSA FF] – 受限物聯網平臺安全處理環境(SPE)的固件接口定義 6. PSA可信功能 – SPE內標準可信設備的定義 2.4.1 設備安全模型 設備安全模型(DSM)定義了在生態系統內設計和部署 PSA兼容可信設備的總體安全架構。它是其他PSA規范的頂層文件,為它們規定了通用語言、高階魯棒性規則和模型。 DSM的基礎是威脅模型和安全分析針對使用案例提出的建議。雖然DSM與使用案例無關,但其最初側重于幾個選定的物聯網使用案例。 DSM 包括三個主要方面: 1. 信任根和相關安全服務 2. 根秘密及其存儲、保護和初始化 3. 設備生命周期及其對信任根的影響 2.4.2 可信設備初始化 只有在根秘密和設備固件在安全生產過程的背景下初始化時,安全和信任模型才有效。 生產過程延伸到設備管理,以便向服務提供商和設備所有者分配設備屬性和固件更新等。 這是一份資料性文件,它指出并討論了對基礎架構和通用框架的一般需求,以促進設備安全架構中的這些過程并以及它們對信任根的依賴性。配置實際的工廠供應和設備管理架構應當由行業利益相關方負責,或者使用類似 Arm Mbed Cloud 的設備來完成。 2.4.3 可信基礎系統架構(TBSA) Armv8-M的Arm可信基礎系統架構((TBSA-M)是一系列SoC硬件要求。它適用于基于 Armv8-M的設計,有助于研發更安全的設備。TBSA-M文件也能為計劃使用Armv7-M架構實施安全設計的硅芯片制造商提供參考。 TBSA-M包含圍繞Armv8-M處理單元(PE)進行系統設計時適用的最佳實踐安全原則。這些原則為設計和集成下列植根于硬件的功能特點提供支持: 信任根 受保護的密鑰庫 可信和不可信軟件組件的隔離 安全的固件更新機制 生命周期管理機制和安全的調試 高熵隨機數發生器;它對可靠的密碼必不可少 密碼編譯加速器,其作用是為適當的安全功能保持實時功能性 固件框架(PSA-FF)實現最好能在TBSA-M兼容設計的頂層進行,以便實現安全關鍵功能性和數據與應用固件數據隔離的安全處理環境。這樣可以提高設備的可信度,即便出現可能被利用的軟件漏洞。 2.4.4 可信啟動與固件更新 可信啟動和固件更新規定了確保MCU啟動的完整性所必須滿足的系統和固件技術要求。規范包括以下內容: 經過驗證的啟動過程以建立安全運行時服務 安全的固件更新代理 固件更新的認證和授權說明,包含密碼證書和設備密鑰 有助于實現健壯性的建議和最佳實踐說明 規范的范圍與A系列客戶端設備的可信主板引導要求(TBBR)類似。 2.4.5 固件框架(PSA-FF) 固件框架(FF)基于設備安全模型的要求,規定了用于在受限物聯網設備中隔離可信功能的標準接口和框架。框架提供: 為可信和不可信固件描述隔離運行環境(分區)的架構 描述各個分區的功能和資源的標準模型 用于向其他分區請求服務的安全 IPC 接口 描述分區如何彼此進行互動的模型,以及硬件和固件框架實施本身 該規范能夠實現安全固件功能性的開發,可復用于符合固件框架實施的不同設備。 圖 3 顯示了這個框架的概況。 ![]() 圖 3 – PSA 固件框架概況 2.4.5.1 安全分區與隔離 平臺安全架構固件框架(PSA-FF)定義了三個許可的固件運行隔離層級。這樣可以允許在高度受限的設備中減少隔離。與此同時,還能在擁有充足的資源的平臺上增加安全性和魯棒性,并且為安全功能提供一致的固件接口。 PSA-FF將系統內的執行劃分為兩個分區——非安全處理環境(NSPE)和安全處理環境(SPE)。NSPE包含應用固件、操作系統內核和庫,通?刂浦蟛糠州斎/輸出外圍設備。SPE包含安全固件和硬件資源,與 NSPE固件和非安全硬件資源隔離。 PSA-FF將SPE進一步劃分為安全分區管理器(SPM)和安全分區。安全分區為安全功能提供執行環境。SPM運用隔離邏輯來分隔不同的分區,由平臺硬件使用主側和/或從側過濾器執行。例如,安全屬性單元(SAU)和存儲保護單元(MPU)可以在新的 Armv8-M平臺中使用。其他平臺可以使用其他機制來提供類似的分區隔離。 2.4.5.2 安全IPC 固件框架定義了基于安全會話的IPC機制,可以讓彼此隔離的分區中的固件進行互動。具體說來,IPC框架讓一個分區內的固件可以通過標準接口向另一分區內的固件請求服務。API要求由分區之間的框架來復制消息,進而消除直接共享內存帶來的脆弱性風險。 2.4.5.3 安全功能 PSA-FF 將安全性功能顯示為一系列安全功能。每一項安全功能都是安全分區中實施的一系列相關安全操作。每一個安全分區能夠支持多項安全功能。 不同的芯片合作伙伴可以為標準安全功能(SF)提供他們自己的插件實現。固件框架通過預定義的API和調用語義將SF實施抽離。芯片和其他合作伙伴也可以定義他們自己的安全功能實現,以便提供針對平臺的服務或更高水平的安全服務。 有關固件框架的更多詳情見 PSA 固件框架-M [PSA-FF] 規范。 2.4.6 可信功能 有些安全功能提供信任根服務(例如身份認證),或者是信任根的使能(例如加密操作);這些安全功能被稱為“可信功能”。可信功能的標準接口將由PSA定義,例如: 安全認證 安全存儲/數據封裝 加密操作 RNG 和安全時間服務 安全的固件更新 2.5 Trusted Firmware-M(TF-M)參考實現 Trusted Firmware-M是一個開源計劃,其作用是為基于M系列平臺的物聯網設備提供 PSA 固件規范的參考實現。TF-M 將公開托管在 GitHub 上,與目前針對 Cortex-A 驅動的移動和翻蓋設備的 A 計劃 Arm Trusted Firmware 類似。其他生態系統合作伙伴可能提供其他實現。 TF-M將在 Armv8-M主線(Cortex M33)上處理PSA固件運行隔離層級1,并將為更高層級的隔離類型提供更多支持。其他內核將在今后進行處理。 初始版本旨在提供: SSE-200的受限PSA運行隔離層級1的實施(Arm Musca-A1 測試芯片主板) 操作系統支持 - 初始版本主要針對Mbed操作系統 - RTX 被用于原型創建工作,發布時將提供有限支持 啟動加載程序,為安全和非安全鏡像提供認證啟動 基于cmake和GNU工具鏈的跨平臺構建系統 從一開始就支持的GCC和ARMCLANG編譯器 固件更新例子 2.6 生態系統使能 下面是開發中的生態系統使能支持工具: Arm Cortex-M原型系統(MPS2和MPS3)以及Arm Musca-A1測試芯片主板,用于實現開發 Trusted Firmware-M:Armv8-M 平臺安全架構的開源參考實施 Mbed操作系統:基于MCU的物聯網設備的開源平臺操作系統,針對所有Arm Cortex-M目標提供PSA的優化實施 Arm KEIL開發系統,用于安全和非安全的軟件開發、調試和驗證 ![]() 圖 4 – 工具支持 3. 安全評估與兼容性 兼容性有兩根軸: 1. 功能性 2. 魯棒性 功能性兼容指的是硬件和固件規范得到滿足,例如使用了正確的硬件組件并實現了預期的API功能。僅靠功能性兼容并不能得出滿足設備總體安全性要求的結論,還需要魯棒性這根軸。 Arm將為功能性硬件要求提供驗證套件。Arm也可能為固件規范提供驗證套件。 威脅模型和安全分析構成魯棒性兼容的基礎。Arm正積極與合作伙伴共同確定評估價值鏈安全魯棒性的最佳方法,從硅芯片制造商到管理設備的物聯網云公司。 不只是Arm的物聯網安全性產品,所有根據PSA開發的產品也都將受益于Arm技術的基線安全魯棒性。 4. 總結 平臺安全架構(PSA)轉變了連接設備的安全經濟學。 PSA將行業最佳實踐匯總成一整套架構文件、安全分析和要求,并提供開源參考固件實現。 Arm的持續投入將在整個生態系統內實現解決方案的持續發展、改進和采用。我們將推出多種與PSA協同的硬件安全解決方案,以提供必要的安全魯棒性。例如,PSA將與多種Arm微控制器和系統IP協同工作,包括 Arm TrustZone CryptoCell。 通過減少低級別安全碎片,Arm旨在建立服務于所有人的安全生態系統,包括芯片合作伙伴、OEM、平臺所有者、服務提供商、消費者和更廣大的開發者群體。我們邀請 Arm 生態系統在PSA和Trusted Firmware-M的基礎上開展并擴大我們的工作。 我們計劃在2017年第四季度為NDA合作伙伴提供開源計劃的有限訪問權限。全面訪問將在2018年初開放。 |