自主可控開(kāi)源 RISC-V助力IoT設備提升安全等級
物聯(lián)網(wǎng)也稱(chēng)為IoT,這種技術(shù)可使全球數十億物理設備通過(guò)互聯(lián)網(wǎng)聯(lián)通,所有這些設備都收集和共享大量數據。由于連接設備的數量眾多,因此物聯(lián)網(wǎng)已成為全球數十億人生活中不可或缺的一部分。許多人認為,物聯(lián)網(wǎng)是21世紀最重要的技術(shù),因為它幾乎影響了從醫療到運輸的各行各業(yè)。但是,隨著(zhù)我們周?chē)澜绲穆?lián)系越來(lái)越緊密,保護這些設備的安全性變得至關(guān)重要。
本文引用地址:http://dyxdggzs.com/article/202006/414402.htm有限的硬件功能限制了整體固件的發(fā)展,大多數物聯(lián)網(wǎng)設備的核心存在安全性缺陷?;贛CU的設備通常不提供辨識可信和不可信軟件的方法。第三方二進(jìn)制文件、開(kāi)源庫、legacy code、應用程序、驅動(dòng)程序和操作系統共享硬件資源的訪(fǎng)問(wèn)權限,因為它們以相同的級別運行。所以設備的安全性就看鏈中最薄弱的環(huán)節,而利用單個(gè)固件中任何組件的漏洞就足以危害整個(gè)設備。
TEE就是一種方法來(lái)確保設備或系統的數據和程序的機密性(confidentiality),完整性(integrity)和可用性(availability)(簡(jiǎn)稱(chēng)“CIA”)。傳統的TEE技術(shù)能夠在各種硬件組件中“切出”一個(gè)安全區域(通常稱(chēng)為“安全區”(secure world)),這種功能已經(jīng)在市場(chǎng)上存在了一段時(shí)間。然而由于兩個(gè)主要缺點(diǎn),這種特定的TEE技術(shù)從未在移動(dòng)市場(chǎng)之外得到廣泛應用。首先,底層硬件模塊基于專(zhuān)有IP,這導致了跨廠(chǎng)商和平臺將產(chǎn)生高昂成本。其次,硅IP供應商通常是以硬件為中心的方法使軟件實(shí)現復雜化,甚至很難在不同的微體系結構中實(shí)現。此外,由于系統層面發(fā)現了微體系結構組件中的關(guān)鍵漏洞,在過(guò)去的幾年中,對這種繁復的硬件方法已經(jīng)逐步被淘汰。
而RISC-V指令集體系結構(ISA)的簡(jiǎn)潔設計克服了這些限制,因為它將大多數TEE硬件要求定義為標準規范。這使得TEE硬件模塊可在任何RISC-V實(shí)現中立而無(wú)需專(zhuān)有IP。這些硬件塊包括特權執行擴展和物理內存保護(PMP)primitive。這些RISC-V primitive的開(kāi)放式設計使ISA的TEE實(shí)現在硅實(shí)現中具有非常好的可擴展性,涵蓋了從微型32位單核MCU到64位多核Linux的復雜系統。
作為向現實(shí)世界物聯(lián)網(wǎng)應用邁進(jìn)的一步,Hex Five Security(RISC-V International的長(cháng)期成員)已開(kāi)發(fā)了MultiZone Security IoT Stack,可免費下載RISC-V IoT安全棧。Hex Five的MultiZone Security TEE協(xié)調了底層RISC-V硬件安全塊,并在多個(gè)相等安全,輕量級線(xiàn)程之間提供了硬件強制,軟件定義的分隔,這些線(xiàn)程映射到稱(chēng)為“區域(Zones)”的硬件資源。在區域中運行的程序本質(zhì)上是安全的,因為它們是在非特權用戶(hù)模式下執行的。通過(guò)觸發(fā)故障的RISC-V物理內存保護(PMP)單元,可以防止訪(fǎng)問(wèn)未明確映射到區域的硬件資源-ram / rom /外圍設備。除MultiZone TEE外,Hex Five Secure IoT Stack還包括其他三個(gè)開(kāi)源組件:FreeRTOS,WolfSSL加密庫和picoTCP IP堆棧。該應用程序包含四個(gè)通過(guò)靜態(tài)策略定義的單獨Zone。每個(gè)區域在物理上是分開(kāi)的,并且與其他區域以及MultiZone運行時(shí)不共享硬件資源。每個(gè)區域都是密封的,并提供了安全關(guān)鍵的實(shí)時(shí)調度程序和安全的通信層。
1.Zone 1運行FreeRTOS,其三項任務(wù)包括:提供用戶(hù)控制臺的CLI應用程序,控制機械臂運動(dòng)的實(shí)時(shí)應用程序以及顯示單獨的實(shí)時(shí)線(xiàn)程管理按鈕中斷和LED的心跳應用程序。
2.Zone 2運行TCP / IP堆棧,提供到云的TLS 1.3連接。這樣可以將遠程攻擊面與實(shí)時(shí)操作系統以及Root of Trust隔離。
3.Zone 3運行Root of Trust和WolfSSL庫。它提供保護TLS鏈接所需的加密密鑰。機密信息(加密密鑰,密碼,受保護的文件等)永遠不會(huì )離開(kāi)此區域,只能通過(guò)MultiZone安全消息進(jìn)行訪(fǎng)問(wèn)。
4.Zone 4運行一個(gè)裸機UART終端,以驗證分離策略的執行情況并評估MultiZone TEE的性能。
硬件準備:Digilent Arty A7 35T
為了在原本隔離的區域之間實(shí)現通信,它們的API封裝在通過(guò)TEE提供的安全通信基礎結構路由的請求/響應消息中。此技術(shù)允許與現在作為微服務(wù)公開(kāi)的第三方軟件功能進(jìn)行快速而強大的集成。
嵌入式應用程序需要分層的安全性方法。通過(guò)隔離實(shí)現安全性至關(guān)重要,因為它可以將關(guān)鍵功能與不受信任的大型代碼庫軟件引入的攻擊面相隔離。專(zhuān)有、過(guò)于復雜,重硬件的TEE時(shí)代已經(jīng)過(guò)去,因為這種傳統方法已被證明不足以滿(mǎn)足現代IoT應用程序的成本和敏捷性要求。Hex Five的MultiZone Security提供了一種快速安全的方法來(lái)為RISC-V應用程序增加安全性和分離性。MultiZone基于RISC-V標準,可以對現有設計進(jìn)行改造:您可以利用高安全性隔離而無(wú)需重新設計硬件和軟件,從而消除了管理混合硬件/軟件安全方案所帶來(lái)的復雜性。
作者簡(jiǎn)介
Sandro Pinto是Hex Five Security Inc.的研發(fā)部主管,葡萄牙米尼奧大學(xué)(University of Minho)的研究科學(xué)家兼教授。Sandro是一名硬件安全向導,是Trusted Execution Environment技術(shù)的世界級專(zhuān)家,并且是多篇面向安全的研究論文的作者。Sandro擁有電子和計算機工程專(zhuān)業(yè)的博士學(xué)位,具有深厚的學(xué)術(shù)背景,并擁有多年的行業(yè)經(jīng)驗,專(zhuān)注于嵌入式,網(wǎng)絡(luò )物理和基于IoT的系統的操作系統,虛擬化和安全性。
MultiZone支持多種硬件目標。為了對框架進(jìn)行完整的評估,建議使用由Hex Five Security開(kāi)發(fā)的開(kāi)源軟核X300。它是最初由加州大學(xué)伯克利分校開(kāi)發(fā)的E300 SoC(Rocket rv32)的增強版本——完全免費用于商業(yè)和非商業(yè)用途。與E300一樣,X300可以編程到Xilinx Artix-7 35T Arty FPGA上。對參考設計感興趣?詳情及資源下載請前往:http://www.digilent.com.cn/community/714.html
本文源自Sandro Pinto 開(kāi)源硬件創(chuàng )客坊,轉載目的在于傳遞更多信息,版權歸原作者所有。
評論