淺談消費者物聯網設備中的安全策略
前言
消費者物聯網,旨在為消費者提供智能服務,提高生活質量和便利性的物聯網領域。物聯網設備是消費者物聯網的基本組成單元,對于消費者物聯網中存在的安全問題,消費者物聯網設備的安全尤其不可忽視。消費者物聯網設備在其整個生命周期中,有出廠、制造商初始化、用戶使用、設備停用這四種狀態(其中出廠狀態可能存在來自硬件底層的安全威脅,但這不在本文的考慮范圍之內,本文默認在出廠狀態時是處于一種安全的狀態),如圖1所示。本文主要面向于參與消費者物聯網開發和制造的讀者,淺談物聯網設備的制造商初始化、用戶使用和設備停用這三種狀態中應對潛在安全風險的策略。
圖1 物聯網設備生命周期
設備在制造商初始化狀態下的安全策略
物聯網設備是非標準計算設備,具有連接網絡、傳輸數據、計算處理等功能。物聯網設備的生命周期與普通的計算設備類似,比如臺式電腦或者筆記本電腦,在廠家剛出場還未配置操作系統的時候就是一些硬件的簡單組合,不能執行任何一個電腦應該具有的功能,只有當電腦經其售賣制造商完成操作系統配置后,才是一臺真正意義上日常生活中使用的電腦。而其中制造商為電腦配置初始純凈的操作系統的過程,就對應于物聯網設備在正式投入市場之前的制造商初始化階段。
在商家初始化階段,不同的物聯網設備會根據其投入市場后的用途,被制造商進行各式各樣的初始化工作,本文就制造商初始化中各種設備都會涉及的安全策略進行簡要闡述,如圖2所示。
圖2 物聯網設備在制造商初始化的安全策略
1.物聯網設備的安裝和維護要容易
消費者物聯網設備的安裝和維護應涉及用戶的最低決策,并應遵循在實踐應用中的最佳可用性。如用戶使用向導設置設備,其中顯示配置選項的子集,并已指定常用默認值,且默認情況下已打開相應的安全選項。
制造商應向用戶提供關于如何檢查其設備是否安全安裝的指導。通過適當解決用戶界面中的復雜性和糟糕設計,可以減少或有時消除由用戶混淆或錯誤配置引起的安全問題。為用戶提供關于如何安全配置設備的明確指導也可以減少他們面臨的威脅。在一般情況下,安全設置設備的平均開銷高于檢查設備是否安全設置的平均開銷。從過程的角度來看,安全設置的檢查在很大程度上可以由制造商通過與設備遠程通信的自動化過程進行。這種自動化過程的一部分可能包括驗證設備建立安全通信通道的能力。
2.及時開發和部署安全更新
及時開發和部署安全更新是制造商為保護其客戶和更廣泛的技術生態系統所能采取的最重要行動之一。保持所有軟件的更新和良好的維護是一個在實踐中得到證實的保障安全的最佳方法之一。
物聯網設備中的所有軟件組件都應可以安全地更新,具有一個良好的設備和廠商之間軟件組件的版本信息通信,這是一個成功的設備組件管理所必備的。但并不是設備上所有軟件都有必要不斷更新。如設備磁盤的首塊引導加載程序只被寫入一次,從那時起是不可變的;在帶有多個微控制器的設備上,有些微控制器可能無法更新。
當設備不是受限設備時,它應具有用于安全地安裝更新的更新機制。“可安全更新”是指有足夠的措施防止攻擊者濫用更新機制。措施包括使用正版軟件更新服務器;受完整性保護的通信通道;驗證軟件更新的真實性和完整性。人們認識到,軟件更新機制和“安裝”的構成有很大的差異。為了防止降級攻擊(downgrade attacks),可以使用基于版本檢查的防回滾策略。更新機制可以從設備直接從遠程服務器下載更新,從移動應用程序傳輸或通過USB或其他物理接口傳輸。如果攻擊者破壞了這種機制,就會允許在設備上安裝惡意版本的軟件。
軟件更新應該使用自動機制。如果自動更新失敗,那么在某些情況下,用戶可能不再能夠使用設備。檢測機制,如監視、雙庫閃存(dual-bankflash)和恢復分區的使用,可以確保設備返回到已知的良好版本或工廠狀態。管理這一點可能很復雜,特別是當有并行的相關服務更新、設備更新和其他服務更新需要處理時。因此,清晰的管理和部署計劃對制造商是有好處的,對于消費者來說,關于更新支持的當前狀態是透明的。
在許多情況下,發布軟件更新涉及到對其他組織的多種依賴,比如生產子組件的制造商。然而,這不是拒絕更新的理由。對于制造商來說,在開發和部署安全更新時考慮整個軟件供應鏈是很有用的。通常建議不要將安全更新與更復雜的軟件更新捆綁在一起,例如特性更新。引入新功能的特性更新可能觸發額外的需求,并延遲對設備的更新。
如果設備支持自動更新,那么要求更新可以自選是否啟用,以便用戶可以啟用、禁用或推遲安裝安全更新和更新通知。從消費者權利和所有權的角度來看,用戶能夠控制是否接收更新是很重要的。用戶選擇不更新有很好的理由,包括安全性。此外,如果部署了一個更新,隨后發現導致問題,制造商可以要求用戶不要升級他們的軟件,以使這些設備不受影響。
設備在用戶使用狀態下的安全策略
用戶即消費者,是消費者物聯網設備的最終使用者,保障用戶在使用過程的舒適感和信息的安全性至關重要,也是消費者物聯網的最終目的。當設備處于用戶使用階段時,物聯網設備已經過了出廠和制造商初始化兩個步驟,這一階段的設備會在具有制造商初始化數據的基礎上進一步加入用戶數據和設備使用過程中產生的數據,因此存在安全隱患的方面有設備通信問題、設備組件更新問題、系統中斷問題和個人數據安全問題,如圖3所示。
圖3 物聯網設備在使用中的安全策略
1.設備通信
消費者物聯網設備應使用具有最佳實踐的密碼技術進行安全通信。安全控制的適當性和具有最佳實踐的密碼技術的實行取決于許多因素,包括使用環境。隨著安全性的不斷發展,由于任何此類建議都有迅速過時的風險,很難給出關于加密或其他安全措施的規定性建議。消費者物聯網設備應使用經審查或評估的實施方案來提供網絡和安全功能,特別是在密碼領域。如開發和測試社區中的分布式軟件庫、經認證的軟件模塊和硬件設備加密服務提供商(如安全元素和信任執行環境)都經過審查或評估。
密碼算法和原語應可更新。對于無法更新的設備,設備的預期壽命不得超過設備使用的密碼算法的建議使用壽命(包括密鑰大小),這一點很重要。
只有在網絡接口上進行身份驗證后,才能在初始化狀態下通過網絡接口訪問設備功能。有一些設備可以提供公共的、開放的數據,無需身份驗證即可訪問,以提供對所有設備的開放訪問。該設備可能通過網絡服務中的漏洞受到危害。合適的身份驗證機制可以防止未經授權的訪問,并有助于設備的縱深防御。
2.設備組件更新
消費者物聯網設備應使用安全引導機制驗證其軟件是否完整且更新正確。設備應在初始化后定期檢查安全更新是否可用。一個設備每天在隨機時間檢查可用的更新,用戶可以通過初始化設備的接口看到更新的存在。對于某些產品,由相關的服務而不是設備執行此類檢查可能更合適。
如果檢測到軟件發生未經授權的更改,設備應向用戶和/或管理員發出警報,并且不應連接到比執行預警功能所需的網絡更寬的網絡。從未經授權的更改中遠程恢復的能力可能依賴于已知的良好狀態,例如本地存儲已知的良好版本以實現設備的安全恢復和更新。這將避免拒絕服務和昂貴的召回或維護訪問,同時管理攻擊者破壞更新或其他網絡通信機制接管設備的風險。如果消費者物聯網設備檢測到其軟件發生未經授權的更改,它將能夠通知正確的利益相關者。在某些情況下,設備可以處于管理模式。
設備需要對軟件更新的真實性和完整性進行驗證。確認更新是否有效的常見方法是驗證其完整性和真實性。這可以在設備上完成;然而,受限的設備可能有功耗限制,這使得執行加密操作的成本很高。在這種情況下,可以由另一個受信任的設備執行驗證。經過驗證的更新將通過安全通道發送到設備。先在中心執行更新驗證,然后再在設備上執行更新驗證,可以降低泄露的風險。
對于設備來說,在檢測到無效和潛在的惡意更新時采取行動是一種良好的實踐。除了拒絕更新之外,它還可以向適當的服務機構報告事件或通知用戶。此外,還可以采用緩和控制來防止攻擊者繞過或誤用更新機制。作為更新機制的一部分,盡可能少地向攻擊者提供信息,會降低攻擊者利用信息的能力。比如當設備檢測到一個更新不能成功交付或應用(通過完整性或身份驗證檢查失敗),設備可以通過不向更新進程的發起者提供任何關于失敗的信息來減少信息泄漏。同時,設備可以生成一個日志條目,并通過安全通道將日志條目的通知傳遞給受信任的對等體(例如設備管理員),這樣設備的所有者或管理員就可以知道事件的發生,并做出適當的響應。
軟件更新的應用程序將擾亂設備的基本功能時,設備應通知用戶。如一個通知包括關于緊急情況和大約預期停機時間的信息。對于用戶來說,設備在更新期間繼續運行是至關重要的。這就是為什么上面的條款建議在更新可能破壞功能時通知用戶。特別是,實現安全相關功能的設備在更新的情況下不會完全關閉;期望有最低限度的系統功能能力。對于某些類型的設備和系統來說,如果沒有得到正確的考慮或管理,對功能的破壞可能成為一個嚴重的安全問題。
3.系統中斷
物聯網服務在消費者生活的各個方面(包括與人身安全相關的功能)采用物聯網設備的增加時保持和運行。重要的是要注意,安全相關法規可以適用,但關鍵是要避免使停機成為對用戶造成影響的原因,并設計能夠提供一定程度的彈性以應對這些挑戰的產品和服務。
消費者物聯網設備和服務應內置彈性,考慮到數據網絡和電源中斷的可能性。在網絡接入中斷的情況下,消費者物聯網設備應保持運行和本地功能,并應在斷電恢復的情況下干凈地恢復。如智能家居在斷電后與互聯網失去連接?;謴途W絡連接時,家庭中的設備會在隨機延遲后重新連接,以最小化網絡占用率。
4.個人數據安全
設備和服務之間傳輸的個人數據,尤其是相關服務的機密性,應采用實踐中最佳的加密技術加以保護。同時設備和相關服務之間交流的敏感個人數據的機密性應受到保護,并采用適合技術和用途的加密技術。
“敏感個人數據”是指其披露極有可能對個人造成傷害的數據。被視為“敏感個人數據”的內容因產品和用例的差異而不同,例如:家庭安全攝像頭的視頻流、支付信息、通信數據的內容和時間戳位置數據。執行安全和數據保護影響評估可以幫助制造商做出適當的選擇。
設備在停用狀態下的安全策略
物聯網設備在使用過程中損壞或因硬件升級而替換時,意味著該設備在本次使用的生命周期走向了終結,即物聯網設備將處于停用狀態。處于停用狀態下物聯網設備將不再被使用,不再為消費者提供服務,設備需要返廠或返回售賣制造商,這時就需要物聯網設備可以方便刪除用戶數據,以防止用戶個人信息泄露,保證用戶個人數據安全。
物聯網設備應為消費者提供設備上的功能,以便以簡單的方式從相關服務中刪除個人數據。旨在用于所有權轉移、消費者希望刪除個人數據、消費者希望從設備中刪除服務或消費者希望處置設備的情況。
物聯網設備應向用戶提供明確的確認,即個人數據已從服務、設備和應用程序中刪除。消費者物聯網設備通常會改變所有權,并最終被回收或處置??梢蕴峁┰试S消費者保持控制并從服務、設備和應用程序中刪除個人數據的機制。當消費者希望完全刪除其個人數據時,他們還希望備份副本被追溯刪除。從設備或服務中刪除個人數據通常不是簡單地通過將設備重置回其出廠默認狀態來實現的。在許多用例中,消費者不是設備的所有者,但希望從設備和所有相關服務(如云服務或移動應用程序)中刪除他們自己的個人數據。
例子:用戶可以在租用的公寓內臨時使用消費物聯網產品。對產品進行出廠重置可能會刪除配置設置或禁用設備,從而損害公寓所有者和未來用戶的利益。出廠重置(從物聯網設備中刪除所有數據)不是以諸如刪除共享使用上下文中單個用戶的個人數據的簡單方式來執行。
小結
在本篇文章中,主要以消費者物聯網設備生命周期為主線,從制造商初始化、用戶使用和設備停用這三個階段,對其應采用的安全策略給出了一些個人見解,作簡要闡述和簡單分析,涉及到用戶易用性、設備組件更新和個人數據保護等方面。希望可以給物聯網設備的開發和制造者提供一些參考和幫助。
參考文獻
[1]DIN EN 303645-2021,CYBER - Cyber Security for Consumer Internet of Things: Baseline Requirements (Endorsement of the English version EN 303 645 V2.1.1 (2020-06) as a German standard)[S].