淺析物聯網設備面臨的安全問題
眾所周知,物聯網(IoT)設備預計將無處不在。這些由半導體驅動的設備將推動每一個可想象的過程實現智能化。從簡單的開燈到門診護理或工廠控制等更復雜的過程,通過傳感、處理和云連接,物聯網設備將大幅提高工作效率。應用場景多種多樣,它們的發展前景和影響力也將不可估量。
保護物聯網設備的想法可能令人望而生畏。初步研究很快揭示了有關密碼學、威脅、安全目標和其他幾個主題的大量知識。面對鋪天蓋地的信息,物聯網設備設計人員通常會問的第一個問題是:“我如何判斷所需安全性要達到哪種水平?”,緊接著是“我該從哪里入手?”
Arm提供了平臺安全架構(PSA),幫助設計人員快速入門。通過利用PSA的一整套威脅模型和安全性分析、硬件和固件架構規范以及可信固件M參考實現,物聯網設計師能夠快速且輕松地實現安全設計。
通過使用雙Arm Cortex®-M內核,結合可配置的內存和外設保護單元,賽普拉斯PSoC 6 MCU實現了PSA定義的最高保護級別。本文將PSA網絡攝像頭威脅模型和安全性分析(TMSA)應用于PSoC 6 MCU,演示如何針對網絡攝像頭應用進行安全性評估。任何攻擊的目標都是獲取物聯網設備的數據并以某種方式加以利用。如圖1所示,分析過程的第一步是識別物聯網設備處理的數據資產及其安全屬性。
接下來的步驟是識別針對這些資產的威脅,定義抵御這些威脅的安全目標,并確定需求以滿足安全目標。通過滿足這些要求,基于微控制器的設計可為安全目標提供支持,并最終保留資產的安全屬性。最后,應該對設計進行評估,以判定設計是否達到安全目標。通常情況下,這類評估會利用應用于設計的威脅模型來評估設備的攻擊防御能力。
完整性要求數據資產在使用或傳輸時保持不變。完整性通常與建立引用的數據(如啟動固件)相關聯。啟動固件確保MCU配置為應用可執行的已知初始狀態。對啟動固件進行更改可能會影響該初始狀態,并存在操作或安全風險。
真實性要求只有受信任的參與者才能建立數據資產的當前狀態。當與完整性相結合時,真實性便能夠建立信任,因此它是安全物聯網設備的關鍵基石。在先前的啟動固件示例中,數字簽名可用于在升級固件時對真實性和完整性進行評估,以確保僅使用可信固件。全面識別物聯網設備中的數據資產至關重要,因為每個后續步驟都依賴于此步驟。舉例來說,網絡攝像頭將具備以下數據資產:
威脅旨在破壞數據資產的安全屬性并將其用于未經授權的目的。為了識別威脅,必須對物聯網設備中數據的使用進行評估。例如,證書可用于訪問物聯網設備的網絡。如果證書的機密性受到損害,則未經授權的參與者就可以使用它們來訪問網絡。這種攻擊稱為冒充攻擊。通過系統地評估每種數據,可以創建潛在威脅列表。
通過識別威脅,可以定義安全目標。安全目標是在應用級別定義的,本質上提供了實現需求。一些安全目標可以作為可信應用(TA)實現,它們在安全的MCU提供的隔離執行環境中執行。隔離執行環境全面保護TA及其使用/處理的數據。物聯網設備應用本身在不安全的執行環境中運行,并通過使用處理器間通信(IPC)通道的API與隔離執行環境中的TA進行通信。TA則利用硬件中的可用資源(如加密加速器和安全內存)來為目標提供支持。
訪問控制:物聯網設備對試圖訪問數據資產的所有參與者(人或機器)進行身份驗證。防止在未經授權的情況下訪問數據。防御欺騙和惡意軟件威脅,即攻擊者對固件進行修改或安裝過時的缺陷版本。安全存儲:物聯網設備維護數據資產的機密性(根據需要)和完整性。防御篡改威脅。固件真實性:物聯網設備在啟動和升級之前對固件的真實性進行驗證。防御惡意軟件威脅。
通信:物聯網設備對遠程服務器進行身份驗證,提供機密性(根據需要),并維護交換數據的完整性。防御中間人攻擊(MitM)威脅。安全狀態:即使固件完整性和真實性驗證失敗,仍確保設備保持安全狀態。防御惡意軟件和篡改威脅。
在這一方面,分析提供了數據資產、威脅和安全目標的邏輯連接模型。根據這張圖,可以編譯出安全MCU所需的功能或特性列表。當然,這個列表也可以用作特定物聯網設備應用解決方案的實現標準。請注意,安全目標的要求可能會根據物聯網設備的生命周期階段(設計、制造、庫存、最終使用和終止)而變化,也應予以考慮。