物聯(lián)網(wǎng)設備面臨的安全威脅分析
眾所周知,物聯(lián)網(wǎng)(IoT)設備預計將無(wú)處不在。這些由半導體驅動(dòng)的設備將推動(dòng)每一個(gè)可想象的過(guò)程實(shí)現智能化。從簡(jiǎn)單的開(kāi)燈到門(mén)診護理或工廠(chǎng)控制等更復雜的過(guò)程,通過(guò)傳感、處理和云連接,物聯(lián)網(wǎng)設備將大幅提高工作效率。應用場(chǎng)景多種多樣,它們的發(fā)展前景和影響力也將不可估量。
介紹
然而,互聯(lián)設備的日益“智能化”也帶來(lái)了安全挑戰。例如,傳統的照明控制相對原始,它是一個(gè)帶有物理開(kāi)關(guān)的電源電路。要對開(kāi)關(guān)進(jìn)行操作則需要物理上接觸并操作開(kāi)關(guān)。要避免未經(jīng)授權的使用,只需要對開(kāi)關(guān)進(jìn)行簡(jiǎn)單的物理保護?,F在考慮將照明控制看作是物聯(lián)網(wǎng)設備的智能化身。光傳感器、距離傳感器、邏輯控制(通常在微控制器中實(shí)現)以及云應用無(wú)線(xiàn)連接取代了傳統的物理開(kāi)關(guān)。在智能化過(guò)程中,照明開(kāi)關(guān)被轉換成一個(gè)通過(guò)網(wǎng)絡(luò )與應用服務(wù)器一起工作的嵌入式客戶(hù)端。保護智能照明開(kāi)關(guān)因此變得更加復雜。這種復雜性的提高將給所有物聯(lián)網(wǎng)設備設計人員帶來(lái)挑戰。好消息是,帶有安全保護的微控制器能夠顯著(zhù)提高物聯(lián)網(wǎng)設備的安全性,加快設計周期。
本文中的案例研究介紹了如何確定網(wǎng)絡(luò )攝像頭物聯(lián)網(wǎng)設備的安全要求。顧名思義,這種設備已經(jīng)實(shí)現互聯(lián),并廣泛應用于眾多應用,從簡(jiǎn)單的家庭網(wǎng)絡(luò )攝像頭到復雜的工業(yè)系統,不一而足。通過(guò)定義對網(wǎng)絡(luò )攝像頭的相關(guān)威脅并確定防御這些威脅的安全目標,從而制定了該設備的安全要求。本文介紹了基于A(yíng)rm?技術(shù)的賽普拉斯PSoC? 6 MCU,是能夠滿(mǎn)足上述要求的可用解決方案。該方法同樣適用于其他物聯(lián)網(wǎng)設備。
識別數據資產(chǎn) → 識別威脅 → 定義安全目標 → 滿(mǎn)足需求
圖1:設計安全的物聯(lián)網(wǎng)設備時(shí)的分析過(guò)程
物聯(lián)網(wǎng)設備安全性分析
保護物聯(lián)網(wǎng)設備的想法可能令人望而生畏。初步研究很快揭示了有關(guān)密碼學(xué)、威脅、安全目標和其他幾個(gè)主題的大量知識。面對鋪天蓋地的信息,物聯(lián)網(wǎng)設備設計人員通常會(huì )問(wèn)的第一個(gè)問(wèn)題是:“我如何判斷所需安全性要達到哪種水平?”,緊接著(zhù)是“我該從哪里入手?”
Arm提供了平臺安全架構(PSA),幫助設計人員快速入門(mén)。通過(guò)利用PSA的一整套威脅模型和安全性分析、硬件和固件架構規范以及可信固件M參考實(shí)現,物聯(lián)網(wǎng)設計師能夠快速且輕松地實(shí)現安全設計。
通過(guò)使用雙Arm Cortex?-M內核,結合可配置的內存和外設保護單元,賽普拉斯PSoC 6 MCU實(shí)現了PSA定義的最高保護級別。本文將PSA網(wǎng)絡(luò )攝像頭威脅模型和安全性分析(TMSA)應用于PSoC 6 MCU,演示如何針對網(wǎng)絡(luò )攝像頭應用進(jìn)行安全性評估。
任何攻擊的目標都是獲取物聯(lián)網(wǎng)設備的數據并以某種方式加以利用。如圖1所示,分析過(guò)程的第一步是識別物聯(lián)網(wǎng)設備處理的數據資產(chǎn)及其安全屬性。
接下來(lái)的步驟是識別針對這些資產(chǎn)的威脅,定義抵御這些威脅的安全目標,并確定需求以滿(mǎn)足安全目標。通過(guò)滿(mǎn)足這些要求,基于微控制器的設計可為安全目標提供支持,并最終保留資產(chǎn)的安全屬性。最后,應該對設計進(jìn)行評估,以判定設計是否達到安全目標。通常情況下,這類(lèi)評估會(huì )利用應用于設計的威脅模型來(lái)評估設備的攻擊防御能力。
數據資產(chǎn)
每個(gè)物聯(lián)網(wǎng)設備的價(jià)值都建立在數據之上,以及如何對這些數據進(jìn)行管理。數據資產(chǎn)在嵌入式系統中有多種表現形式。例如,固件定義設備的行為。其他示例包括用于控制設備的唯一ID、密碼和加密密鑰。此外,還有物聯(lián)網(wǎng)設備生成的數據,例如來(lái)自網(wǎng)絡(luò )攝像頭的圖像數據或來(lái)自傳感器的環(huán)境數據。無(wú)論其形式如何,每種數據資產(chǎn)都具有各自的安全屬性。安全屬性是系統所依賴(lài)的數據資產(chǎn)的固有特性,是系統信任該數據資產(chǎn)的基礎。機密性、完整性和真實(shí)性是三種常見(jiàn)的安全屬性。
機密性
機密性指的是主動(dòng)或被動(dòng)保密或私有的狀態(tài)。
機密性要求只有授權人員才能夠讀取數據資產(chǎn)。換言之,它是機密或私有的。密碼是具有機密性安全屬性的數據資產(chǎn)的常見(jiàn)示例。其他示例可能包括物聯(lián)網(wǎng)設備生成的個(gè)人數據,如心率數據或位置信息。
完整性
完整性指的是完整且不可分割的狀態(tài)。
完整性要求數據資產(chǎn)在使用或傳輸時(shí)保持不變。完整性通常與建立引用的數據(如啟動(dòng)固件)相關(guān)聯(lián)。啟動(dòng)固件確保MCU配置為應用可執行的已知初始狀態(tài)。對啟動(dòng)固件進(jìn)行更改可能會(huì )影響該初始狀態(tài),并存在操作或安全風(fēng)險。
真實(shí)性
真實(shí)的性質(zhì)(毫無(wú)爭議的來(lái)源;不是副本;真實(shí)的)
真實(shí)性要求只有受信任的參與者才能建立數據資產(chǎn)的當前狀態(tài)。當與完整性相結合時(shí),真實(shí)性便能夠建立信任,因此它是安全物聯(lián)網(wǎng)設備的關(guān)鍵基石。在先前的啟動(dòng)固件示例中,數字簽名可用于在升級固件時(shí)對真實(shí)性和完整性進(jìn)行評估,以確保僅使用可信固件。
全面識別物聯(lián)網(wǎng)設備中的數據資產(chǎn)至關(guān)重要,因為每個(gè)后續步驟都依賴(lài)于此步驟。舉例來(lái)說(shuō),網(wǎng)絡(luò )攝像頭將具備以下數據資產(chǎn):
攝像頭 ID | 設備的 唯一標識符 |
固件 | 定義硬件的 操作方式 |
固件 證書(shū) | 用于安全啟動(dòng) |
證書(shū) | 用于加密操作的數據 |
日志 | 歷史數據 |
圖像 | 由攝像頭捕獲并 通過(guò)網(wǎng)絡(luò )發(fā)送的數據 |
配置 | 用于配置的數據, 包括網(wǎng)絡(luò )配置 |
每種數據資產(chǎn)都將具備與其相關(guān)聯(lián)的安全屬性。
數據 資產(chǎn) | 安全 屬性 |
攝像頭 ID | 完整性 |
固件 | 機密性(可選)、 完整性、真實(shí)性 |
固件 證書(shū) | 完整性 |
證書(shū) | 機密性、完整性 |
日志 | 完整性 |
圖像 | 機密性、完整性 |
配置 | 機密性(可選)、 完整性 |
威脅
威脅旨在破壞數據資產(chǎn)的安全屬性并將其用于未經(jīng)授權的目的。為了識別威脅,必須對物聯(lián)網(wǎng)設備中數據的使用進(jìn)行評估。例如,證書(shū)可用于訪(fǎng)問(wèn)物聯(lián)網(wǎng)設備的網(wǎng)絡(luò )。如果證書(shū)的機密性受到損害,則未經(jīng)授權的參與者就可以使用它們來(lái)訪(fǎng)問(wèn)網(wǎng)絡(luò )。這種攻擊稱(chēng)為冒充攻擊。通過(guò)系統地評估每種數據,可以創(chuàng )建潛在威脅列表。
此外,網(wǎng)絡(luò )攝像頭可能面臨以下對其數據資產(chǎn)的威脅:
威脅 | 目標數據資產(chǎn) | 安全屬性 |
冒充攻擊 | 證書(shū) | 機密性、完整性 |
中間人攻擊 | 證書(shū) | -- |
鏡像 | ||
配置 | 機密性、完整性 | |
機密性 | 完整性、機密性、完整性 | |
固件濫用 | 固件 | |
篡改 | 攝像頭 ID | 完整性 |
固件 | 機密性、完整性 | |
真實(shí)性 | ||
完整性 | ||
證書(shū) | 機密性、完整性 | |
日志 | 完整性 | |
鏡像 | 機密性、完整性 | |
配置 |
安全目標
通過(guò)識別威脅,可以定義安全目標。安全目標是在應用級別定義的,本質(zhì)上提供了實(shí)現需求。一些安全目標可以作為可信應用(TA)實(shí)現,它們在安全的MCU提供的隔離執行環(huán)境中執行。隔離執行環(huán)境全面保護TA及其使用/處理的數據。物聯(lián)網(wǎng)設備應用本身在不安全的執行環(huán)境中運行,并通過(guò)使用處理器間通信(IPC)通道的API與隔離執行環(huán)境中的TA進(jìn)行通信。TA則利用硬件中的可用資源(如加密加速器和安全內存)來(lái)為目標提供支持。
繼續此示例,前面確定的威脅可以通過(guò)以下安全目標進(jìn)行防御:
安全 目標 | 威脅 | |||
冒充 攻擊 | 中間人 攻擊 | 固件 濫用 | 篡改 | |
訪(fǎng)問(wèn) 控制 | X | X | ||
安全 存儲 | X | |||
固件 真實(shí)性 | X | |||
通信 | X | |||
安全 狀態(tài) | X | X |
評論