保護(hù)物聯(lián)網(wǎng) (IoT) 設(shè)備是每個(gè)人的首要任務(wù),至少看起來是這樣。無論你在哪里看,都有一個(gè)關(guān)于更多受損設(shè)備的新故事,再次提醒每個(gè)人問題的嚴(yán)重性。似乎也有很多關(guān)于如何正確保護(hù)此類設(shè)備的困惑。顯然,PC時(shí)代的實(shí)踐無法實(shí)現(xiàn)。物聯(lián)網(wǎng)設(shè)備沒有防病毒(AV)軟件解決方案,除非該設(shè)備具有強(qiáng)大的處理器和足夠的內(nèi)存,當(dāng)然,絕大多數(shù)設(shè)備都沒有。在后PC時(shí)代,安全實(shí)踐也必須發(fā)展。
后PC時(shí)代的安全必須是設(shè)備的基礎(chǔ),并且必須設(shè)計(jì)進(jìn)去。它需要以隔離和保護(hù)關(guān)鍵信息,數(shù)據(jù)和代碼的方式完成。它還應(yīng)該在設(shè)計(jì)和實(shí)現(xiàn)時(shí)考慮到設(shè)備將所在的系統(tǒng)。
但究竟什么是基本安全性?
基礎(chǔ)安全性不是一些抽象的概念。相反,它涉及特定技術(shù)和過程的實(shí)現(xiàn),例如硬件信任根、安全啟動(dòng)、硬件加密、對(duì)其他設(shè)備和應(yīng)用程序進(jìn)行身份驗(yàn)證的能力以及受信任的修正。其中,安全啟動(dòng)過程可能是最關(guān)鍵的。
安全啟動(dòng):基礎(chǔ)知識(shí)和優(yōu)勢(shì)
實(shí)施安全啟動(dòng)過程對(duì)于設(shè)備在其整個(gè)生命周期中的完整性至關(guān)重要,原因很簡(jiǎn)單,即受損的啟動(dòng)過程允許黑客注入惡意軟件或完全替換固件,從而使整個(gè)連接的系統(tǒng)容易受到攻擊。安全啟動(dòng)過程還通過提供必要的信任度使其他安全功能成為可能。實(shí)際上,安全啟動(dòng)過程對(duì)于在整個(gè)系統(tǒng)中擴(kuò)展信任根至關(guān)重要。
最簡(jiǎn)單的方法是,安全啟動(dòng)過程可防止在設(shè)備通電時(shí)執(zhí)行未經(jīng)授權(quán)的代碼,并防止嵌入式啟動(dòng)代碼和軟件 IP 的暴露。安全啟動(dòng)過程可以通過許多不同的方式完成,包括使用數(shù)字簽名的二進(jìn)制文件、安全和受信任的啟動(dòng)加載程序、啟動(dòng)文件加密和安全微處理器。
雖然大多數(shù)安全啟動(dòng)聲明都以數(shù)字簽名的啟動(dòng)文件為中心,但除非這些簽名可以使用某種不可變的信任根進(jìn)行驗(yàn)證,否則它并不安全。在這里,我們不打算深入探討安全啟動(dòng)的機(jī)制,而是布局設(shè)備設(shè)計(jì)人員在實(shí)現(xiàn)安全啟動(dòng)過程時(shí)必須考慮的注意事項(xiàng)。這些包括:
保護(hù)知識(shí)產(chǎn)權(quán) – 不保護(hù)公司知識(shí)產(chǎn)權(quán)(代碼)的安全啟動(dòng)過程不會(huì)帶來真正的業(yè)務(wù)利益。但是,如果實(shí)施得當(dāng),可以保護(hù)專有算法等軟件IP免受黑客攻擊。
可信修復(fù) –在設(shè)備發(fā)生故障或受損的情況下進(jìn)行安全修復(fù)的能力是一項(xiàng)關(guān)鍵能力,它依賴于具有安全啟動(dòng)過程,該過程檢查使用信任根啟動(dòng)的固件映像的有效性。
安全固件更新 –驗(yàn)證旨在替換現(xiàn)有固件映像的傳入有效負(fù)載對(duì)于在整個(gè)系統(tǒng)生命周期內(nèi)保持設(shè)備完整性至關(guān)重要。在應(yīng)用之前,必須驗(yàn)證有效負(fù)載的源和有效負(fù)載本身,并且通過正確實(shí)現(xiàn)的安全啟動(dòng)過程,驗(yàn)證失敗會(huì)導(dǎo)致安全回滾到已知的已驗(yàn)證映像。
與云資源的安全連接 –安全啟動(dòng)過程可確保設(shè)備在每次嘗試通過使用嵌入式密鑰和證書進(jìn)行連接時(shí)都通過云進(jìn)行身份驗(yàn)證。
使用信任區(qū)和 TEE 實(shí)現(xiàn)安全啟動(dòng)
ARM 的信任區(qū)技術(shù)特別適合支持安全啟動(dòng)過程。如果應(yīng)用程序使用配備 ARM TrustZone 的設(shè)備(從最近發(fā)布的 Cortex-M23 和 -M33 微控制器 (MCU) 到 Cortex-A 級(jí)應(yīng)用程序處理器),則該設(shè)備包含兩個(gè)操作系統(tǒng) (OS) – 可信執(zhí)行環(huán)境 (TEE),它是一個(gè)安全操作系統(tǒng),用于管理對(duì)設(shè)備安全安全隔區(qū)的訪問,以及執(zhí)行主要應(yīng)用程序的豐富操作系統(tǒng)或豐富執(zhí)行環(huán)境 (REE)。
TEE 在安全啟動(dòng)過程中起著關(guān)鍵作用,因?yàn)?TEE 在初始 ROM 啟動(dòng)之后但在 REE 之前啟動(dòng)。實(shí)際上,TEE 可以將 REE 作為引導(dǎo)序列的一部分進(jìn)行引導(dǎo),這樣做可以驗(yàn)證 REE 映像,以便在必要時(shí)采取補(bǔ)救措施。
ARM 提供了許多資源,這些資源說明了信任區(qū)在物聯(lián)網(wǎng)中的實(shí)用性。自從 ARM 最近通過一系列擴(kuò)展將該技術(shù)提供給基于 MCU 的設(shè)備以來,對(duì)信任區(qū)的興趣穩(wěn)步增加(有關(guān)此內(nèi)容的更多信息,請(qǐng)參閱文章“使用適用于 v8-M 的 ARM 信任區(qū)保護(hù)邊緣”)。
安全啟動(dòng):策略,而不是復(fù)選框
總而言之,安全啟動(dòng)對(duì)于在設(shè)備的整個(gè)生命周期內(nèi)保持設(shè)備完整性至關(guān)重要。重要的是,設(shè)備架構(gòu)師和應(yīng)用程序設(shè)計(jì)人員在定義安全啟動(dòng)過程之前會(huì)列出所有安全注意事項(xiàng)。畢竟,安全性是一種策略,而不是一個(gè)復(fù)選框。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19048瀏覽量
228542 -
ARM
+關(guān)注
關(guān)注
134文章
9009瀏覽量
366149 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2899文章
43822瀏覽量
369352
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論