戴爾科技中國研發集團 林蓁蓁
隨著物聯網技術和產業持續升溫,其中隱藏的安全問題逐漸成為大眾關注的焦點。它持續影響著社會整體運行的各個環節,從擁有隱私數據的個人用戶,到車企、鋼鐵生產等使用物聯網的工業界,甚至監控城市運行的政府職能部門,都將依賴於可信、安全運行的物聯網。如何為未來打造一個有效防攻擊的物聯網平臺,成為擺在科學和技術專家面前的重大課題。
今天我們就來聊聊如何構建未來物聯網的安全架構
作者:中國研發集團 林蓁蓁
-
在物聯網領域,戴爾科技集團提出了IoT solution,它結合VMware和Dell EMC各自在虛擬化和存儲領域多年的深耕,無疑是一個範例和繼續開拓的基石。
[1]上圖是一個集成了存儲、安全、網絡、以及管理與編排的方案,採用了NSX-T、固件在線安全升級的技術,並充分利用ECS/Isilon的安全策略對用戶權限進行管控,同時在數據層保障其傳輸,最大限度確保IoT領域整個數據周期的安全。
在此基礎上,考慮物聯網傳感器分布的廣泛性和分散性,以及一些用戶場景下終端設備對數據要求的實時性等要求,基於以上方案所採用的最新產品和技術,一種去中心化和全局節點相結合的物聯網架構應運而生。
邊緣節點靠近用戶,它可與所轄範圍內的各終端組成去中心化網絡,數據和指令在網絡各成員間快速共享;多個邊緣節點也可以協同合作,進一步組成自治網絡。邊緣去中心化網絡利用其在地域和分片處理上的優勢,在不影響數據安全性和完整性的前提下,提供高吞吐量和低延遲的數據服務,滿足用戶需求。上層的全局節點可以是雲服務提供商,也可以是用戶的數據中心,它們可提供數據永久化保存的介質,也可參與或監管各邊緣網絡的工作,這為傳統存儲提供了新的商業模式。
在這樣的物聯網結構下,系統的安全有賴於平臺自身技術的安全性,也離不開應用層的合理設計,因此下文分別從平臺安全和應用安全兩方面探討現有的安全技術,並在最後一個環節對尚未成熟商用的新技術進行簡要介紹。
平臺安全去中心化網絡中廣泛使用分布式哈希表(DHT),它存儲系統所需的鍵值對,並提供查找和路由功能。所有的鍵值對和節點ID都以hash方式編碼,hash碼形成環狀結構,鍵值對存儲於hash距離最近的節點上。DHT能實現自治,使各節點能自發地組成網絡而不需要中央節點參與;它有很強的容錯性,在節點出錯或掉線的情況下仍能正常工作;它方便擴展,滿足節點數目的變化需求。
在物聯網中,多個互不信任的數據提供和需求方加入系統,各個節點頻繁加入或退出邊緣網絡,對DHT的安全性提出了挑戰。現有多種措施保障DHT的全局查找和路由安全,預防惡意節點的各類攻擊。
單一的惡意節點具有多個身份標識,從而控制系統中的大部分節點,實現用多數票,擊退網絡上的真實節點。以此為基礎,可以實現各種具體攻擊,如汙染路由表,篡改鍵值對等。
為防範此類攻擊,可以引入中心化的認證機構驗證節點的身份,或用硬體的物理特性作為身份的唯一標識,如MAC或序列號等。也有研究引入社交網絡的概念,節點組成或加入小型社交網絡,彼此驗證身份。區塊鏈中使用的工作量證明方法,需要強大的運算資源,通過對硬體資源的要求限制節點使用多重身份。
攻擊者控制了某特定節點的大部分相鄰節點,使該節點從網絡上消失,得不到正確的網絡視圖,惡意節點能完全控制其對信息的訪問。其中一種攻擊手段是惡意節點不停向受害節點發送請求或自身IP位址,受害節點將其路由表刷新至只有惡意節點而並不自知。在電子支付場景中,當受害者從真實網絡隔離開後,攻擊者可以向其和網絡其餘節點同時發送兩條不同的交易信息,且都能得到認可,達到雙重支付的目的,獲取非法利益。
有應對措施可以有效減少此類攻擊。如在節點的路由表裡只儲存經CA認證過的、特定節點的信息;或用兩張路由表,在路由時權衡特定可信節點和網絡當前連接狀況;或控制與其他節點的通信次數,避免連通信息被惡意節點獨佔等。此外,還可以對節點的ID位置進行統一配置,杜絕了惡意節點包圍受害節點的情況,其中一種方法是cuckoorule。
[2]
Cuckoorule規定,網絡中有一個可信組建分配節點IP。在一個節點加入網絡中後,其周圍一定範圍內的節點將會被移走,它們的ID由可信組件重新計算,保證它們均勻且獨立地分散在哈希環上,使惡意節點無法控制自己的位置,對受害者進行集中攻擊。
上述措施防範了日蝕攻擊,但由於增加了路由複雜性,限制了網絡處理能力,或引入了信用機制,對性能會造成一定影響。系統的安全性總是和性能損失權衡之後的結果。
在實現女巫攻擊或日蝕攻擊之後,惡意節點已經入侵系統,主要實施兩類破壞行動。
存儲攻擊:提供對數據請求的錯誤響應。否認數據存在,或返回虛假數據。
路由攻擊:破壞路由動作。惡意節點拒絕其它節點的查找請求,或把請求重定向到錯誤或其它惡意節點上,或返回虛假的數據信息。
為應對存儲攻擊,網絡可將數據複製多份,以一定策略存儲於網絡不同位置;也可對於請求得到的數據進行驗證,或在網絡上發起對數據合法性的多數投票。為應對路由攻擊,各節點的路由策略可以是同時向網絡上的多個相鄰節點發起路由請求,或在全網範圍內的各處查找。
總之,DHT網絡的安全依賴於節點ID在哈希環上的均勻分布,多個數據副本,以及多重路由規則的保障。其中的大部分要素在現有的去中心化架構系統中都已經引入,如IPFS和區塊鏈等。去中心化的物聯網系統都可借鑑。
應用安全在安全的平臺之上,可以構建各類物聯網應用。應用涉及各個業務層面,包括物聯網設備的身份驗證和管理、固件升級策略、設備安全性驗證、以及數據的訪問控制等。再向上層可以構建更大的物聯網系統,它需要在各子網間進行協同及數據交換,並考慮其中的安全性問題。區塊鏈作為去中心化系統的工具,可用於保障物聯網安全。
例如,在固件升級方面,由固件發布者將新固件的hash存儲到區塊鏈中,在IoT設備將新固件下載後,可以獲取並對比hash值的正確性,確保不會更新至惡意固件。此外,每個IoT設備的固件更新和驗證情況也可以記錄在區塊鏈上,便於固件安全性的追蹤和監測。
此外,去中心化存儲系統IPFS可以和區塊鏈結合,實現對訪問權限的安全控制。每個IPFS存儲節點都和區塊鏈通信,將讀寫數據塊的動作通過智能合約驗證其合法性。智能合約根據對應的數據塊ID進行驗證,只有動作被交易驗證通過,數據的存儲才能正常進行。去中心化的區塊鏈保證了訪問權限的控制不易遭受單點攻擊以及訪問記錄的不可篡改性。
[3]在智能家居行業,基於區塊鏈的物聯網系統能提供
很高的安全性。可以把它設計成由本地網絡、覆蓋網絡及雲存儲組成的三層架構。該結構可以有效阻擋包括DoS攻擊,篡改攻擊,丟包攻擊等多種攻擊方式。本地網絡層部署了一個小型區塊鏈,記錄了設備的加入和退出情況,並維護訪問控制列表,用於存儲和管理所屬網絡上的各種物聯網設備。覆蓋網絡連接多個相同所有者的本地網絡,可共享存儲;覆蓋網絡間相互通信,並記錄在相應的區塊鏈上。在傳感器數據存儲階段,雲存儲驗證相應數據的區塊ID和數據hash,以此驗證傳感器身份,再允許數據寫入。數據讀取階段,也有相應的區塊鏈交易流程保證數據的真實和正確性。
在應用層上,利用去中心化的特性,有平臺之上的多種應用層方法,可從傳感器設備,各參與節點,到數據系統本身,進一步增強物聯網系統的安全性。
可信的多方參與環境物聯網由各類異構硬體組成,它們的數據處理能力大相逕庭。如何在保障數據和隱私安全的前提下,在系統中實現計算資源合理調配和充分利用,也是關注的熱點。例如,終端需要的人工智慧分析結果,能否在不洩露客戶信息的條件下,由邊緣或雲端執行完成,且終端對返回的結果完全可信。此處涉及密碼學領域的同態加密和零知識證明技術。
同態加密在數據不解密的條件下,對密文數據進行計算,結果解密之後和用明文進行同樣計算得到的結果相同。根據支持密文運算的種類和次數,同態加密可分為部分同態,類同態和全同態加密。部分同態支持單一類型的密文域同態運算,如計算方法為僅有加法或乘法;類同態支持有限次數的加和乘計算;全同態可支持任意冪次的加和乘計算。
該技術適用於解決雲計算場景下的數據安全問題。用戶將加密的數據和計算方法傳到雲端,雲端對加密數據計算後回傳,由用戶完成解密結果的運算,全過程中雲端不會得到用戶數據。它有許多潛在的應用場景,如多方計算下,各方用共同的公鑰加密數據後在網絡上進行傳輸和交換,聚合數據後算出最終結果,再用各自的私鑰解密。在不了解對方數據的條件下,得到計算結果。
基於同態加密的廣泛應用前景,工業界也在進行商業化嘗試。MIT開發了Enigma項目,基於區塊鏈技術,部署了鏈下同態加密,加強數據隱私保護。
微軟開源了SEAL(Simple Encrypted Arithmetic Library)工具,用於提供同態加密方法。Intel的nGraph神經網絡後端也引入了對SEAL的支持。但同態加密方法本身的性能還不適合商用場景。以下是業界基於SEAL做的其中一個測試。基於此,一些加速方案也在研發中,例如使用GPU和FPGA進行同態加密的硬體提速。
[5]可以看出,同態加密雖然前景廣闊,但還在探索實際商用之路。基於其性能瓶頸,在物聯網領域,目前只能考慮應用於處理需求頻率較低的隱私數據。
零知識證明用於在證明者能夠在不向驗證者提供任何有用的信息的情況下,使驗證者相信某個論斷是正確的。它是一種基於概率的驗證方式,分為交互式和非交互式兩種,後者利用hash函數挑選每次驗證的條件,可以在雙方離線的狀態下進行。零知識證明可以證明複雜度為NP的聲明。它能有效保證數據本身的安全性,同時驗證者的計算量小,適用於硬體異構的物聯網場景。
目前Zcash採用了零知識證明方案實現了一套私有區塊鏈,它在交易雙方及交易細節都私有的前提下,保證了鏈上所有交易的合法性。此外,一些雲服務提供商實現了用戶密碼的零知識證明,前者不保留任何用戶密碼信息,由用戶向前者證明私有密碼的合法性,進一步確保了用戶使用雲平臺的數據安全。
儘管零知識證明是保障用戶數據安全的又一利器,但相關文獻和實驗也表明目前完成證明需要花費的時間較長,還無法用於物聯網這類需要實時處理大量數據的場合。
總之,可信的多方參與環境目前還處於實驗室階段,但它未來對於雲計算和物聯網場景下的安全措施將產生深遠影響。
結語在去中心化平臺和應用方面,業界已經有各項成熟有效的安全策略可以借鑑,在多方參與環境方面,學術界和工業界正在緊密合作,未來可期。為了構建面向未來的物聯網架構,在利用現有各類安全手段的基礎上,需要著力實現去中心化平臺、應用及多方參與環境三方的高效解決方案,打造安全、可擴展的下一代物聯網平臺。
快快點擊下方「閱讀原文」與其他技術愛好者一起互動吧!