即使一個經(jīng)驗豐富的工程師,對于設(shè)備的完整性、數(shù)據(jù)保護(hù)和設(shè)備管理, DIY安全也不會得到保證,近來物聯(lián)網(wǎng)設(shè)備的應(yīng)用讓這一觀點變得痛苦而清晰。2017年底,有超過50億的藍(lán)牙設(shè)備被發(fā)現(xiàn)容易受到 BlueBorne 惡意軟件的攻擊。 打開藍(lán)牙設(shè)備, 黑客可以注入惡意代碼, 在某些情況下, 可以攔截進(jìn)出 Windows PC 的網(wǎng)絡(luò)流量, 并隨意修改。
這不是一個孤立的事件, 搜索一下就會發(fā)現(xiàn)幾十起類似的攻擊事件。
由于制造商讓物聯(lián)網(wǎng)設(shè)備容易受到默認(rèn)密碼和不必要開放端口的影響, 這些設(shè)備可以被用來攻擊整個物聯(lián)網(wǎng)堆棧。 這就是物聯(lián)網(wǎng)安全攻擊如此嚴(yán)重的原因: 犯罪者不僅可以竊取數(shù)據(jù)和關(guān)閉服務(wù), 而且會對設(shè)備和用戶造成損害。
當(dāng)然, 設(shè)計者可以下載一些開源傳輸和加密代碼, 并將其連接到應(yīng)用程序中,但這也不可避免地導(dǎo)致了黑客能夠找到相關(guān)的安全漏洞。
盡管現(xiàn)有的商業(yè)安全平臺并沒有完全消除安全風(fēng)險, 但它們確實會減少安全風(fēng)險。 為了實現(xiàn)最佳的安全性, 這些解決方案必須無縫地集成到一個平臺中, 而不是在一個設(shè)計完工的時候進(jìn)行加鎖。
物聯(lián)網(wǎng)安全與傳統(tǒng)安全
物聯(lián)網(wǎng)安全和傳統(tǒng)的安全措施之間有一些關(guān)鍵的區(qū)別。 傳統(tǒng)的安全性假定它可以控制對孤立網(wǎng)絡(luò)的設(shè)備和數(shù)據(jù)的訪問, 這兩種網(wǎng)絡(luò)都存在于已定義的物理環(huán)境中。
保護(hù)這些設(shè)備和數(shù)據(jù)的解決方案在端點上需要相當(dāng)大的計算能力, 例如防病毒軟件、防火墻和入侵檢測 / 防御系統(tǒng)(IDS / IPS)。 如果需要安全更新, 那么就很容易下載和安裝設(shè)備上的最新補(bǔ)丁。
另一方面, 物聯(lián)網(wǎng)安全更像是荒野。 設(shè)備通常生活在相對開放的網(wǎng)絡(luò)上, 通常是在物理上沒有保護(hù)的區(qū)域。 尤其是對于電池驅(qū)動的便攜式設(shè)備而言,計算能力更加有限,發(fā)布軟件更新的能力也是如此。 物聯(lián)網(wǎng)系統(tǒng)的終端可能很少或者根本沒有安全軟件的空間。
因此, 物聯(lián)網(wǎng)安全必須在邊緣設(shè)備進(jìn)行通信之前進(jìn)行身份驗證, 并保護(hù)從終端設(shè)備到云端的數(shù)據(jù)。 這意味著安全必須在設(shè)備裝載之前被植入, 而不是一旦設(shè)備到達(dá)工作現(xiàn)場就會啟動。
內(nèi)部的缺點, DIY 安全
為了更好地了解物聯(lián)網(wǎng)安全的艱巨性, 可以考慮一下典型的系統(tǒng)架構(gòu):
設(shè)備側(cè): 由物聯(lián)網(wǎng)設(shè)備、應(yīng)用程序、數(shù)據(jù)和連接到網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)
網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān): 包括網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)、路由軟件和其他應(yīng)用程序, 以及與設(shè)備端和云的通信
云: 包括服務(wù)器基礎(chǔ)設(shè)施、存儲數(shù)據(jù)、本機(jī)應(yīng)用程序, 也許包括對硬件安全模塊(HSMs)的訪問, 以及向網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)或設(shè)備的雙向通信機(jī)制
為了在內(nèi)部開發(fā)物聯(lián)網(wǎng)安全的解決方案, 解決這些領(lǐng)域的每一個問題, 設(shè)計團(tuán)隊必須在應(yīng)用范圍、時間和成本之間進(jìn)行權(quán)衡。 構(gòu)建此類解決方案的組件通常依賴于內(nèi)部開發(fā)和開源社區(qū), 如 ssl / tls、 OpenSSH、 OpenVAS、 AES、 TrueCrypt 等等。
不幸的是, 在許多情況下, 這些組件是在物聯(lián)網(wǎng)存在多年前就已經(jīng)開發(fā)出來的。 他們通常不認(rèn)為物聯(lián)網(wǎng)超越了防火墻, 而且在許多情況下超越了所有的保護(hù), 因為物聯(lián)網(wǎng)設(shè)備來自野外的電線桿和其他結(jié)構(gòu)等等。 這為黑客攻擊創(chuàng)造了許多不可預(yù)見的機(jī)會(圖1)。
圖1. SSL的注多漏洞。 來源:Centri Technology
對于由多個設(shè)備、服務(wù)和軟件組成的物聯(lián)網(wǎng)系統(tǒng)選擇一個安全解決方案不是一件容易的事。 首先, 它可能導(dǎo)致一個缺乏集成的龐大安全解決方案組合。 每個點必須單獨管理, 這增加了工程支持的負(fù)擔(dān)。
單點的解決方案也難以彼此共享數(shù)據(jù), 導(dǎo)致對安全性的看法分散, 威脅檢測受到限制。 增加的復(fù)雜性還會產(chǎn)生矛盾, 因為新的應(yīng)用程序和服務(wù)必須與一系列專業(yè)技術(shù)兼容, 每一種都有自己的 API、策略和需求。
錯誤的安全選擇對敏捷性和上市時間的影響可能很大。 創(chuàng)建緊密集成的物聯(lián)網(wǎng)安全解決方案可能以年為單位,而不是以普通的工作時間來衡量的。
綜合安全辦法
Centri物聯(lián)網(wǎng)高級安全平臺的目標(biāo)是設(shè)計者從一開始就希望整合安全(圖2)。 該平臺允許開發(fā)者將基于標(biāo)準(zhǔn)的加密和高級密碼集成到物聯(lián)網(wǎng)解決方案堆棧中, 包括從芯片到云的安全通信, 數(shù)據(jù)處理的保護(hù), 以及數(shù)據(jù)取證的管理控制臺。
安全通信端點: 允許開發(fā)人員在物聯(lián)網(wǎng)應(yīng)用程序中使用輕量級的安全通信庫或設(shè)備軟件堆棧中的代理客戶端在物聯(lián)網(wǎng)應(yīng)用程序中加入設(shè)備端安全性。 它與安全通信服務(wù)一起使用, 以確保數(shù)據(jù)在云中移動;
數(shù)據(jù)保護(hù)工具: 輕量級的數(shù)據(jù)保護(hù)庫可以從物聯(lián)網(wǎng)應(yīng)用程序中調(diào)用, 使用一個 API 來加密數(shù)據(jù), 然后才能進(jìn)入設(shè)備或者是存儲
安全通信服務(wù): 這個工具運行在現(xiàn)有的應(yīng)用服務(wù)器上, 為云基礎(chǔ)設(shè)施提供安全性
圖2 Centri IoTAS 提供端到端的保護(hù)。 來源:Centri Technology
特別地, CENTRI 安全通信庫和安全通信服務(wù)有助于促進(jìn)物聯(lián)網(wǎng)設(shè)備和云基礎(chǔ)設(shè)施之間的即時加密。 這減少了復(fù)雜證書管理方案的復(fù)雜性, 并消除了使用第三方證書授權(quán)(CA)解決方案的必要性。 該系統(tǒng)還采用一種無保險庫密鑰管理技術(shù), 在數(shù)據(jù)中嵌入加密的密鑰信息。 因此, 不需要 HSMs 或第三方密鑰存儲機(jī)制。
智能緩存和數(shù)據(jù)壓縮技術(shù)有助于將安全開銷降低到只使用1% CPU , 使平臺能夠適合資源有限的物聯(lián)網(wǎng)設(shè)備。 Centri IoTAS 的每個組件允許有經(jīng)驗的開發(fā)人員在一天內(nèi)將這些技術(shù)集成到應(yīng)用程序代碼中。
許多第三方商業(yè)安全解決方案比 DIY 替代品提供了更大的保護(hù), 在設(shè)計的后期階段, DIY也會增加大量的成本和管理開銷。 一個更好的選擇是盡早在端和云端安裝安全解決方案。 這既降低了設(shè)備攻擊和數(shù)據(jù)泄露的風(fēng)險, 也減少了進(jìn)入市場的時間。
既然物聯(lián)網(wǎng)安全是個棘手的問題, 僅保證個人設(shè)備的安全是不夠的, 還必須保護(hù)設(shè)備在現(xiàn)場使用嵌入式和 IT 系統(tǒng)的連接。鑒于物聯(lián)網(wǎng)安全的內(nèi)嵌性,使得區(qū)塊鏈在該領(lǐng)域的應(yīng)用成為可能,但是這種技術(shù)很難在已有系統(tǒng)中實現(xiàn)。 為了解決這個問題, 像 SPARKL 這樣的公司已經(jīng)創(chuàng)建了解決方案, 即便是該網(wǎng)絡(luò)包含不可信的設(shè)備,仍允許新的區(qū)塊鏈設(shè)備與現(xiàn)有的端到端安全設(shè)備進(jìn)行交互操作。
從比特幣到 區(qū)塊鏈
了解區(qū)塊鏈往往是從比特幣開始的, 比特幣是一種數(shù)字密碼貨幣, 它依賴于塊環(huán)鏈來維護(hù)以前的交易記錄。區(qū)塊鏈這個術(shù)語在狹義和廣義上都被使用。 狹義地說, 它指的是比特幣用于創(chuàng)建、維護(hù)和保護(hù)自己交易記錄的具體實現(xiàn)。
更廣泛地說, 區(qū)塊鏈指的是利用分布式分類賬來確保和維護(hù)任何利益攸關(guān)方或授權(quán)個人均可使用的交易分類賬。 有時“相互分配的分類賬”(MDL)與區(qū)塊鏈互換使用, 但這兩個術(shù)語并不完全相同。 每個區(qū)塊鏈都是一個分布的分類賬, 也就是說, 每個區(qū)塊鏈鏈都是一個獨立的、透明的、永久的數(shù)據(jù)庫, 可以同時存在于多個地點, 但并不是所有的 MDL都是區(qū)塊鏈。
在最簡單的層面上, 區(qū)塊鏈?zhǔn)且粋€持續(xù)的交易分類賬。 每組事務(wù)(稱為塊)都是安全加密的, 其與以前事務(wù)的鏈接都被驗證。
想象一下一連串的塊, 每一個都鏈接到前一個區(qū)塊, 這個“區(qū)塊鏈”的名字就變得清晰起來: 它是對事務(wù)記錄如何存儲和驗證的文字描述, 用時間戳信息和用密碼加密的方式將數(shù)據(jù)記錄到每個塊中。 因為每個新塊的哈希部分是基于其前面所有塊的哈希, 所以只有在大多數(shù)參與者同意的情況下, 才允許修改或修改區(qū)塊鏈, 而且只有在大多數(shù)參與者同意的情況下, 才允許修改記錄(如果允許的話)。
區(qū)塊鏈的早期物聯(lián)網(wǎng)應(yīng)用
英特爾在一年前宣布了自己的塊環(huán)鏈平臺, 已經(jīng)建立了一些示范, 說明區(qū)塊鏈和物聯(lián)網(wǎng)如何在海鮮通過供應(yīng)鏈中用于跟蹤的(圖1)。
供應(yīng)商或買方通過其銷售網(wǎng)絡(luò)對產(chǎn)品進(jìn)行監(jiān)測, 大大提高了其快速、明確地確定任何受污染食物來源的能力, 或查明在任何特定時間點誰擁有產(chǎn)品的保管權(quán)。 如果出現(xiàn)產(chǎn)品召回或污染問題, 以塊環(huán)鏈為基礎(chǔ)的分類賬將使公司能夠確定哪些產(chǎn)品是從哪些商店出售的, 并且可以接觸到購買這些產(chǎn)品的客戶。
區(qū)塊鏈技術(shù)也被評估為一種確保物聯(lián)網(wǎng)安全的方法, 通過賦予實體產(chǎn)品一個獨特的身份, 以確保每個特定設(shè)備的真實性。 目前, 物聯(lián)網(wǎng)設(shè)備是由集中的服務(wù)器控制的, 這使得它們?nèi)菀资艿焦簟?區(qū)塊鏈技術(shù)的分散性可以減輕目前物聯(lián)網(wǎng)設(shè)備存在的風(fēng)險, 并有助于確保仍在開發(fā)中的產(chǎn)品。
物聯(lián)網(wǎng)區(qū)塊鏈的部署問題
塊環(huán)鏈技術(shù)有可能解決物聯(lián)網(wǎng)世界中的安全問題, 但只能在正確實施的情況下才能成功。 開發(fā)者必須了解客戶的需求, 客戶之前為滿足這些需求而采取了哪些解決方案, 以前的解決方案成功或失敗的程度, 以及在任何給定環(huán)境中的各種利益相關(guān)者。
例如, 當(dāng)部署一個物聯(lián)網(wǎng)傳感器網(wǎng)絡(luò)以監(jiān)測倉庫溫度時, 誰需要訪問該日志以確保環(huán)境保持在適當(dāng)?shù)臏囟龋?如果超過了溫度閾值, 誰應(yīng)該接收警報, 物聯(lián)網(wǎng)解決方案是否能夠調(diào)整房間的溫度, 或者應(yīng)該限于發(fā)出警告?
區(qū)塊鏈技術(shù)并不是靈丹妙藥,如果這個問題沒有得到很好的闡述和限制, 它不能自動地提供一個問題的解決方案。
一些遺留的嵌入式系統(tǒng)需要能夠與基于區(qū)塊鏈的物聯(lián)網(wǎng)產(chǎn)品進(jìn)行交互, 而另一些系統(tǒng)可能需要升級或更換。 開發(fā)者將不得不應(yīng)對從一個集中的服務(wù)器基礎(chǔ)設(shè)施轉(zhuǎn)變?yōu)橐粋€分布式模型, 這種模型能夠處理來自幾十個, 幾百個, 甚至上千個設(shè)備的接入。 如果要使這些實現(xiàn)能夠成功, 就需要靈活且可伸縮的解決方案。
看一下現(xiàn)有的參考實現(xiàn), SPARKL 以其獨特的能力, 將遺留系統(tǒng)與人工智能、區(qū)塊鏈支持的策略和復(fù)雜的控制系統(tǒng)聯(lián)系了起來。
什么是 SPARKL?
SPARKL由兩個關(guān)鍵組件組成: 測序引擎和 Clear Box 配置系統(tǒng)。 Clear Box 被設(shè)計成可以同時與多個系統(tǒng)交互操作, 并提供了一個單一的訪問點, 開發(fā)人員需要系統(tǒng)工作的所有信息, 即使這些系統(tǒng)通常不相互通信。
Clear Box 具有靈活性, 可以同時支持多個區(qū)塊鏈實現(xiàn), 也可以調(diào)用第三方服務(wù)或應(yīng)用程序(圖2)。 它還允許對許可設(shè)置進(jìn)行細(xì)粒度的設(shè)置, 以確保只有被清除的用戶才能訪問某些數(shù)據(jù)集。
這種靈活性解決了在物聯(lián)網(wǎng)設(shè)備和區(qū)塊鏈技術(shù)在部署時的一個主要問題, 減少物聯(lián)網(wǎng)與遺留系統(tǒng)結(jié)合起來的難度。 試圖實現(xiàn)一個全新的控制系統(tǒng), 其中包含一套統(tǒng)一的硬件和軟件解決方案, 這些解決方案能夠解決每一個單一用例, Clear Box 和 SPARKL 測序引擎可以通過原有的解決方案進(jìn)行通信, 從這些多重源收集數(shù)據(jù), 并執(zhí)行終端用戶定義的任何指令。 Clear Box 是定義策略或行為的解決方案, SPARKL 排序引擎則在整個系統(tǒng)中驅(qū)動這些策略和行為。
Sparkl 已經(jīng)發(fā)布了一個PoV , 展示了區(qū)塊鏈鏈技術(shù)及其自身服務(wù)如何可以用來為再保險市場建立智能合約。 Sparkl 與多個分布式分類賬項目兼容, 包括 BigchainDB、 HyperLedger 和英特爾 Sawtooth Lake, 后者用于再保險編制。
Sawtooth Lake 也是一個模塊化分布式平臺, 旨在滿足多樣性和可伸縮性, 支持廣泛的共識模型。 在這方面, 協(xié)商一致指的是在相互不信任的制度之間達(dá)成協(xié)議的進(jìn)程。目標(biāo)是通過透明的方式記錄交易,制定一套可以解釋參與者之間不同的信任關(guān)系、遺留系統(tǒng)和非遺留系統(tǒng)之間的接口、支持全面的自動化工作流程以及以所有各方都能看到的方式。 為了有效發(fā)揮作用, 必須能夠評估復(fù)雜的條件, 應(yīng)用于任何政策限制, 計算和處理溢價支付, 并使交易分類賬與上述每一個步驟進(jìn)行適當(dāng)?shù)母隆?/p>
這個過程的結(jié)果不是在基礎(chǔ)設(shè)施上貼一個創(chuàng)可貼,如果執(zhí)行得當(dāng), SPARKL 可以用來連接遺留系統(tǒng)和前沿系統(tǒng), 創(chuàng)建新的基于塊環(huán)鏈的智能合約和策略, 使合同執(zhí)行能夠自動化, 同時為所有利益相關(guān)這提供保存記錄和監(jiān)管所需的文件。
評論