零信任安全模型中的網絡和物聯網安全
在網絡和物聯網安全方面,您永遠不會太小心。隨著越來越多的不同設備連接到企業和工業基礎設施,安全總比后悔好。
對于網絡管理員來說,它不再只是保護筆記本電腦和 PC,而是管理由各種連接硬件(包括移動和低成本物聯網設備)組成的網絡。但是,當每個設備都按照自己的規則運行時,您怎么可能保持網絡安全呢?答案是(相對)簡單:不要相信任何人!
這就是“零信任架構”概念的用武之地,這是一個基于默認情況下不信任設備的安全概念,僅僅因為它是您網絡的一部分。相反,每個設備都需要為它想要建立的每個連接進行身份驗證。考慮到任何可能的連接至少涉及兩方,此處所需的身份驗證稱為相互身份驗證。
有使用相互身份驗證的不同通信協議,例如SSH和TLS。但是這些協議的共同點是身份驗證基于唯一的設備證書。如果沒有這樣的證書,設備就無法對自身進行身份驗證。
設備如何獲得證書?
這一切都始于設備擁有自己唯一的公私密鑰。要生成證書,第一步是與證書頒發機構 (CA)共享這對公鑰。CA 將通過向它發送質詢來驗證公鑰是否屬于該設備。只有擁有相應私鑰的設備才能成功應對此挑戰。現在 CA 知道公鑰屬于設備,它會為它創建一個證書。
創建后,證書可以發送到設備,設備現在可以在未來的網絡身份驗證協議中使用它,這些網絡將創建證書的特定 CA 視為可信來源。這使得“零信任”一詞有點誤導。即使您不信任這些設備,您也需要信任一些東西。在這種情況下,信任基于證書和提供證書的機構。
但是還有另一個重要的方面需要考慮:私鑰。私鑰是構建所有安全性的基礎。這是將證書與設備聯系起來的原因,因為任何想要檢查證書真實性的人都可以通過挑戰私鑰來做到這一點。并且由于此私鑰非常重要,因此應始終將其安全地存儲在設備內。
攻擊者永遠無法讀取、更改或復制此私鑰,因為這會危及設備所連接的整個網絡的安全性。保持私鑰私有應該是任何設備的最高優先級。并且網絡需要信任,設備才能這樣做。
私鑰如何安全地存儲在設備上?
有幾種方法可以做到這一點,首先是安全硬件的傳統使用,如安全元件或可信平臺模塊。這些都是需要添加到設備中的安全芯片,負責創建和安全存儲密鑰。對于昂貴的設備(如手機和筆記本電腦)來說,這是一種可接受的解決方案,但通常不能解決所有安全問題,因為有限的各方可以訪問它。然而,對于低成本物聯網設備,在材料清單中添加安全芯片會增加太多成本。
一種更實惠的解決方案是將密鑰對存儲在設備無論如何都需要的芯片之一的內存中,例如微控制器。在這種情況下,密鑰對可以在制造過程中從外部提供,也可以在內部生成(如果芯片具有內部隨機數生成器)。此選項的主要缺點是物聯網設備的芯片不是為安全存儲密鑰而設計的。這意味著存在私鑰被有權訪問設備的堅定攻擊者破壞的嚴重風險。最重要的是,當從外部注入密鑰時,注入這些密鑰的一方是另一個需要信任以保密秘密的實體。
對于這些用于生成和存儲密鑰的傳統方法,還有另一種替代方法,它基于物理不可克隆功能 (PUF)。
PUF 在芯片制造過程中使用深亞微米變化來創建設備唯一標識符。這意味著 PUF 可以從芯片硅生成加密密鑰(如我們需要的密鑰對)。這些密鑰對于每個芯片都是唯一的,它們永遠不必存儲在內存中,它們在每次需要時都簡單地(重新)生成。這消除了對外部供應密鑰以及使用專用硬件來保護存儲的密鑰的需要。
這就是為什么 PUF 的部署迅速獲得關注的原因,特別是對于低成本的物聯網設備。使用 PUF 來創建和保護生成設備證書所需的密鑰提供了零信任架構所需的信任類型。
結論
現在我們已經看到了安全連接網絡中設備所需的所有不同的構建塊。
這一切都始于設備級別,通過選擇正確的方式為設備提供作為其唯一證書基礎的密鑰,零信任架構的基礎得以建立。選擇的方法會因個別設備的硬件而異。
不同的方法提供不同級別的安全性,但它們都有一個共同點,即他們需要灌輸適當級別的信任,以便將私鑰保密。當設備配備了公鑰-私鑰對時,CA 可以通過為設備生成證書來提供下一個問題。一旦設備擁有此唯一證書,就可以進行相互身份驗證,允許以安全方式進入建立在零信任架構上的網絡。
將加密密鑰的存儲方式所提供的保證與需要放在CA中的信任結合起來,可以說,至少在這種情況下,沒有信任就沒有 "零信任"。