構(gòu)建物聯(lián)網(wǎng)%20(IoT)%20解決方案有很多方面。安全性可能是任何計(jì)算機(jī)系統(tǒng)最重要的方面,但對(duì)于物聯(lián)網(wǎng)尤其重要。每隔一段時(shí)間就會(huì)有關(guān)于物聯(lián)網(wǎng)解決方案遭到破壞的新聞報(bào)道;例如,連接互聯(lián)網(wǎng)的攝像頭被入侵以創(chuàng)建執(zhí)行拒絕服務(wù)攻擊的僵尸網(wǎng)絡(luò),或者連接互聯(lián)網(wǎng)的汽車以危險(xiǎn)的方式被入侵。無論特定的物聯(lián)網(wǎng)解決方案用于什么,物聯(lián)網(wǎng)解決方案的整體安全性都是一個(gè)極其重要的細(xì)節(jié),從設(shè)計(jì)開始一直到實(shí)施,以及部署到生產(chǎn),都要牢記這一點(diǎn)。
設(shè)計(jì)任何物聯(lián)網(wǎng) (IoT) 解決方案時(shí)要牢記的安全方面之一是系統(tǒng)不同部分(物理和軟件)之間的信任邊界。
物聯(lián)網(wǎng)組件
在設(shè)計(jì)物聯(lián)網(wǎng) (IoT) 架構(gòu)時(shí),解決方案將包含多個(gè)不同的組件。這些組件中的每一個(gè)都有不同的用途,它們都提供了設(shè)計(jì)和構(gòu)建物聯(lián)網(wǎng)解決方案的構(gòu)建塊。這些是物聯(lián)網(wǎng)解決方案的主要組成部分:
設(shè)備
現(xiàn)場(chǎng)網(wǎng)關(guān)
云網(wǎng)關(guān)
服務(wù)
設(shè)備
設(shè)備是連接到傳感器和其他組件的單個(gè)物聯(lián)網(wǎng)設(shè)備。這些設(shè)備提供了物聯(lián)網(wǎng)的“物”部分。
現(xiàn)場(chǎng)網(wǎng)關(guān)
現(xiàn)場(chǎng)網(wǎng)關(guān)是一種設(shè)備或軟件組件,用作云與一個(gè)或多個(gè)設(shè)備和/或其他現(xiàn)場(chǎng)網(wǎng)關(guān)之間的連接點(diǎn)。這些可用于通過在本地或本地網(wǎng)絡(luò)和云上運(yùn)行的組件之間提供單個(gè)連接點(diǎn)來提供額外的安全性?,F(xiàn)場(chǎng)網(wǎng)關(guān)可以提供多種不同的功能,包括事件/消息通信聚合、消息或協(xié)議轉(zhuǎn)換,或解決方案中的多種其他功能。稱為邊緣網(wǎng)關(guān)的設(shè)備也是一種現(xiàn)場(chǎng)網(wǎng)關(guān)。邊緣網(wǎng)關(guān)或邊緣設(shè)備通過添加在本地運(yùn)行云功能的能力,更靠近其他設(shè)備,以降低實(shí)時(shí)處理循環(huán)中的延遲,從而提供更高級(jí)的功能??梢韵峦频竭吘壴O(shè)備的一些云功能是機(jī)器學(xué)習(xí)、事件流處理或其他云功能。
云網(wǎng)關(guān)
云網(wǎng)關(guān)與現(xiàn)場(chǎng)網(wǎng)關(guān)非常相似,但是,它們不是在本地或其他設(shè)備本地運(yùn)行,而是在云中運(yùn)行。云網(wǎng)關(guān)可以通過在云端而不是本地運(yùn)行來提供與現(xiàn)場(chǎng)網(wǎng)關(guān)類似的功能。
服務(wù)
服務(wù)組件是 IoT 系統(tǒng)后端的其他組件的存儲(chǔ)桶,例如 REST API、數(shù)據(jù)庫(kù)或其他一些組件。這些服務(wù)可以在云中運(yùn)行,或者以本地或混合方式在本地運(yùn)行;基本上在整個(gè)物聯(lián)網(wǎng)解決方案中需要它們的地方。
物聯(lián)網(wǎng)解決方案信任區(qū)和邊界
所有物聯(lián)網(wǎng)解決方案都是使用各種組件構(gòu)建的(如上所列)。在物聯(lián)網(wǎng)解決方案的整體安全架構(gòu)中,不同的組件將被隔離到不同的信任區(qū)和邊界中。這些不同的區(qū)域和邊界提供基于物理和軟件的隔離級(jí)別,以分離解決方案的各個(gè)組件以進(jìn)行保護(hù)。以下是信任區(qū)域和邊界用于保護(hù)物聯(lián)網(wǎng)解決方案的不同組件免受以下影響的一些不同事物的部分列表:
身份欺騙
事件數(shù)據(jù)篡改
信息披露
分布式拒絕服務(wù) (DDOS) 攻擊
提升特權(quán)漏洞
為了提供對(duì)信任區(qū)和邊界的分段保護(hù),物聯(lián)網(wǎng) (IoT) 解決方案的不同方面通過安全保護(hù)相互分離,以更安全的方式將每個(gè)方面與其他方面隔離開來。下面的物聯(lián)網(wǎng) (IoT) 信任區(qū)和邊界圖是一個(gè)很好的模型,可以開始使用它來可視化不同的信任區(qū)和它們之間的邊界。以下是設(shè)計(jì)任何物聯(lián)網(wǎng)安全架構(gòu)時(shí)要牢記的主要信任區(qū):
本地區(qū)域
設(shè)備區(qū)
現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)
云網(wǎng)關(guān)專區(qū)
網(wǎng)關(guān)和服務(wù)區(qū)
遠(yuǎn)程用戶區(qū)
物聯(lián)網(wǎng)信任區(qū)和邊界圖
信任區(qū)域之間的邊界要遵循的一般規(guī)則是在每個(gè)區(qū)域之間有一個(gè)邊界。這將通過在每個(gè)區(qū)域與其他區(qū)域之間創(chuàng)建一定程度的隔離來幫助保護(hù)每個(gè)區(qū)域。當(dāng)向云工作時(shí),它還有助于為每個(gè)較高區(qū)域添加安全性,以驗(yàn)證從其下方較低區(qū)域到本地區(qū)域或本地組件的通信的安全性。如我們所見,該圖列出了大多數(shù)區(qū)域之間的邊界,除了設(shè)備區(qū)域和現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)域的分隔。這樣做的原因是設(shè)備區(qū)中的設(shè)備將直接與現(xiàn)場(chǎng)網(wǎng)關(guān)通信,因此它們可以聚合事件數(shù)據(jù)和/或提供其他網(wǎng)關(guān)功能。此圖未在此處放置信任邊界,但仍然可以在此處添加更大級(jí)別的分離,例如此處的信任邊界,如果 IoT 解決方案需要,或者只是想提高安全性以使事情更多比其他方式更安全。最后,如何設(shè)計(jì) IoT 架構(gòu)以及該解決方案的安全信任區(qū)域和邊界實(shí)際上取決于您。
本地區(qū)域
本地區(qū)域是任何本地用戶所在的區(qū)域。這可能是存在客戶端計(jì)算機(jī)的本地或本地網(wǎng)絡(luò),甚至是靠近設(shè)備和現(xiàn)場(chǎng)網(wǎng)關(guān)的物理空間。保護(hù)這個(gè)區(qū)域包括用戶可以連接到系統(tǒng)并與系統(tǒng)交互的物理和虛擬空間。從虛擬的角度來看,保護(hù)本地區(qū)域?qū)ūWo(hù)最終用戶連接和使用的計(jì)算機(jī)系統(tǒng)。這也意味著在“最小權(quán)限”模型中授予用戶特定的訪問權(quán)限,他們可以訪問執(zhí)行他們的工作/職責(zé),但不能超過必要的權(quán)限。從物理的角度來看,保護(hù)本地區(qū)域?qū)⑸婕案鞣N必要的物理安全措施。這可能意味著只需用鑰匙或生物識(shí)別技術(shù)鎖定門,以便訪問本地區(qū)域的物理區(qū)域。
設(shè)備區(qū)
設(shè)備區(qū)是物聯(lián)網(wǎng)設(shè)備所在的區(qū)域。這包括設(shè)備周圍的物理空間,以及設(shè)備連接到的本地網(wǎng)絡(luò)(或本地網(wǎng)絡(luò))。本地網(wǎng)絡(luò)為設(shè)備提供數(shù)字連接以與系統(tǒng)的其余部分進(jìn)行通信,并且可能包括 Internet 連接。由于連接和訪問設(shè)備的物理和虛擬范圍,設(shè)備的安全架構(gòu)需要物理和數(shù)字保護(hù)措施。從虛擬的角度來看,保護(hù)設(shè)備區(qū)域?qū)ūWo(hù)它們連接到的本地網(wǎng)絡(luò)上的設(shè)備;包括可能集成在設(shè)備中的有線和無線連接。這包括使用加密密鑰進(jìn)行通信,例如使用 SSL/TLS進(jìn)行安全通信,以及其他加密和驗(yàn)證技術(shù)。從物理的角度來看,保護(hù)設(shè)備區(qū)將包括通過將設(shè)備鎖定在安全盒中來保護(hù)設(shè)備,或者保護(hù)對(duì)設(shè)備所在房間或設(shè)施的訪問。請(qǐng)記住,每個(gè)設(shè)備可能位于不同的位置,因此每個(gè)設(shè)備可能需要自己的安全設(shè)計(jì),該設(shè)計(jì)不同于系統(tǒng)中使用的其他設(shè)備。
現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)
現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)域是系統(tǒng)中使用的任何現(xiàn)場(chǎng)網(wǎng)關(guān)所在的位置。這可能意味著包含在與其他設(shè)備相同的信任邊界內(nèi),或者甚至將現(xiàn)場(chǎng)網(wǎng)關(guān)放置在單獨(dú)的專用信任邊界中。由于許多不同的設(shè)備可能位于物理上不同的設(shè)施或位置,因此可能在這些不同的物理設(shè)施或位置中使用多個(gè)現(xiàn)場(chǎng)網(wǎng)關(guān)。因此,您的整體 IoT 安全架構(gòu)中實(shí)際上可能存在多個(gè)現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)域,以適應(yīng)連接到 IoT 設(shè)備和 IoT 解決方案的云組件并促進(jìn)它們之間的通信。從虛擬的角度來看,保護(hù)現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)域?qū)ㄒ灶愃朴诒Wo(hù)物聯(lián)網(wǎng)設(shè)備有線或無線連接的方式保護(hù)現(xiàn)場(chǎng)網(wǎng)關(guān)設(shè)備。這將包括 SSL/TLS 加密通信,或與現(xiàn)場(chǎng)網(wǎng)關(guān)設(shè)備通信的其他設(shè)備和組件的一些其他安全驗(yàn)證。從物理的角度來看,保護(hù)現(xiàn)場(chǎng)網(wǎng)關(guān)區(qū)域?qū)ㄒ耘c保護(hù)設(shè)備區(qū)域內(nèi)的物聯(lián)網(wǎng)設(shè)備類似的方式保護(hù)現(xiàn)場(chǎng)網(wǎng)關(guān)設(shè)備。這可能意味著將設(shè)備鎖定在安全盒中,或確保對(duì)網(wǎng)關(guān)所在的房間或設(shè)施的訪問安全。請(qǐng)記住,這可能需要部署不同現(xiàn)場(chǎng)網(wǎng)關(guān)的多個(gè)不同設(shè)施或位置的安全性。
云網(wǎng)關(guān)專區(qū)
Cloud Gateway 區(qū)域是消息代理或消息隊(duì)列所在的位置。物聯(lián)網(wǎng)解決方案的消息代理將促進(jìn)各種物聯(lián)網(wǎng)設(shè)備與系統(tǒng)的后端、服務(wù)組件之間的通信。Cloud Gateway 不是特定的數(shù)據(jù)庫(kù)、存儲(chǔ)或處理服務(wù)。云網(wǎng)關(guān)提供通信以從后端服務(wù)和解決方案中的設(shè)備獲取數(shù)據(jù)。Cloud Gateway Zone 可以位于公共云中;例如微軟 Azure 或亞馬遜 AWS。但是,云網(wǎng)關(guān)區(qū)域也可以位于與 IoT 解決方案中的任何其他設(shè)備不同的網(wǎng)絡(luò)和位置。在這種情況下,“云”一詞用于指代提供操作措施以防止有針對(duì)性的物理訪問該區(qū)域的做法。在當(dāng)今的 IoT 環(huán)境中,這通常意味著 IoT 解決方案將使用駐留在 Microsoft Azure、Amazon AWS 或其他云提供商中的云組件構(gòu)建,但重要的是要記住這可能意味著本地、本地環(huán)境或其他一些混合環(huán)境也是如此。保護(hù) Cloud Gateway Zone 的虛擬連接通常是計(jì)劃使用此特定區(qū)域的主要安全表面區(qū)域。特別是如果架構(gòu)依賴于云提供商(如 Microsoft Azure 或 Amazon AWS)來提供基于云的 IoT 消息代理服務(wù)。需要在該區(qū)域內(nèi)實(shí)施適當(dāng)?shù)耐ㄐ偶用芎驮O(shè)備身份驗(yàn)證。每個(gè)特定的 IoT 消息代理服務(wù)都將有自己的要求和有關(guān)如何配置其安全性的文檔。從物理角度來看,保護(hù) Cloud Gateway Zone 的工作已被卸載到云提供商,例如 Microsoft Azure 或 Amazon AWS。但是,如果云組件托管在本地本地環(huán)境或其他混合環(huán)境中,則需要將保護(hù)物理數(shù)據(jù)中心或其他設(shè)備的常用物理安全措施納入物聯(lián)網(wǎng)安全架構(gòu)。
網(wǎng)關(guān)和服務(wù)區(qū)
網(wǎng)關(guān)和服務(wù)區(qū)是所有其他后端服務(wù)所在的地方。這將包括數(shù)據(jù)庫(kù)、REST API、與本地系統(tǒng)的混合連接以及系統(tǒng)的任何其他后端組件。一般來說,將有多個(gè)網(wǎng)關(guān)和服務(wù)區(qū),具體取決于整個(gè)后端架構(gòu)在云提供商和本地網(wǎng)絡(luò)之間的分布方式。此外,這將主要包含服務(wù),但可能包括額外的消息代理/網(wǎng)關(guān),以構(gòu)建給定物聯(lián)網(wǎng)和業(yè)務(wù)場(chǎng)景所需的系統(tǒng)架構(gòu)。網(wǎng)關(guān)和服務(wù)區(qū)域的安全性將根據(jù)集成到系統(tǒng)中的不同服務(wù)、組件和本地系統(tǒng)而有所不同。每個(gè)組件都可以實(shí)現(xiàn)自己的安全性。因此,在所謂的網(wǎng)關(guān)和服務(wù)區(qū)域的上下文中可能存在一個(gè)甚至多個(gè)安全邊界。
遠(yuǎn)程用戶區(qū)
遠(yuǎn)程用戶區(qū)域是一種通用存儲(chǔ)桶,包含解決方案的各個(gè)部分,為用戶甚至第三方合作伙伴提供某種類型的遠(yuǎn)程或外部訪問。這還可能包括物聯(lián)網(wǎng)解決方案與集成的任何第三方服務(wù)之間的集成,以提供作為整體物聯(lián)網(wǎng)架構(gòu)一部分的附加功能。遠(yuǎn)程用戶區(qū)域的安全性比其他區(qū)域的預(yù)定義要少。遠(yuǎn)程用戶連接可能包括使用遠(yuǎn)程桌面 (RDP) 連接到 Windows VM、使用 SSL/TLS 訪問某種最終用戶 Web 應(yīng)用程序,或使用其他安全訪問方法訪問第三方。實(shí)際上,遠(yuǎn)程用戶區(qū)提供了用于通信和集成到可能需要集成到 IoT 解決方案中的任何其他系統(tǒng)的后端區(qū)域。這可能包括那些第三方 API 或服務(wù)、最終用戶訪問 Web 應(yīng)用程序或其他一些數(shù)據(jù)聯(lián)合方案。
結(jié)論
在任何軟件解決方案中,威脅建模和將安全設(shè)計(jì)為特征的過程都很重要。雖然,它在物聯(lián)網(wǎng) (IoT) 解決方案中變得尤為重要,因?yàn)檫B接了更多單獨(dú)的組件;每個(gè)都有自己的物理和數(shù)字攻擊面來保護(hù)。因此,將 IoT 信任區(qū)和邊界納入 IoT 解決方案架構(gòu)非常重要,以確保將適當(dāng)?shù)母綦x和安全性納入整個(gè)系統(tǒng)設(shè)計(jì)。從規(guī)劃之初就將信任區(qū)和邊界的安全性納入物聯(lián)網(wǎng)解決方案架構(gòu)也非常重要,因?yàn)槿绻麤]有正確考慮和實(shí)施,安全性錯(cuò)誤可能會(huì)對(duì)系統(tǒng)設(shè)計(jì)和業(yè)務(wù)運(yùn)營(yíng)造成災(zāi)難性后果。黑客和安全漏洞對(duì)任何軟件系統(tǒng)都構(gòu)成重大風(fēng)險(xiǎn),但物聯(lián)網(wǎng)帶來了一些獨(dú)特的挑戰(zhàn),使其難以保護(hù)。這就是為什么在整個(gè)設(shè)計(jì)過程中牢記安全性非常重要的原因。希望本文有助于提高人們對(duì)組織如何更好地思考如何將安全性設(shè)計(jì)為物聯(lián)網(wǎng)解決方案功能的認(rèn)識(shí)。
英文原作者:克里斯·皮奇曼