一
概 述
隨著下一代移動網絡(NGMNs)、物聯(lián)網(IoTs)、邊緣計算、霧計算和云計算的相繼部署,全球信息服務基礎設施正在經歷有史以來最大的變革。這將徹底改變人們的生活和工作,同時對于產品和服務的供給模式、人機交互方式等諸多方面也將帶來顛覆性的影響。長期以來,全球的用戶和機構都嚴重依賴關鍵信息基礎設施,因此基礎設施的信息安全和服務可信度成為了關鍵的問題。智能設備的普及及其自身的物理脆弱性加劇了研究人員的擔憂。如今,日益嚴重的網絡攻擊也進一步證實了威脅的存在。然而,產品和服務供應商對這些漏洞和攻擊卻常常無法及時做出響應,危及到企業(yè)的網絡信息安全。
開放霧計算聯(lián)盟(OpenFog Consortium)相信,通過在信息提供者和消費者之間插入無處不在的、可信的、按需的計算服務,可以大大降低安全風險,確保服務的可用性和及時響應性。在本文中,開放霧計算安全工作組(SWG)將對開放霧計算體系架構的安全前景進行概述,并闡述開放霧計算的功能需求和技術方法。同時,將介紹開放霧計算安全的目標、挑戰(zhàn)及功能需求和方法。
二
開放霧計算參考體系架構
2017年2月,OpenFog Consortium發(fā)布了開放霧計算參考體系架構,該體系架構是一個水平的、系統(tǒng)級架構,它沿著云到物(cloud-to-thing)統(tǒng)一體在任何位置分配用于計算、存儲、控制和聯(lián)網的資源與服務,同時,支持多個行業(yè)的垂直和應用領域,使服務與應用能夠更接近數據的生成來源,在網絡邊緣通過云計算,從事物本身并跨多個協(xié)議層進行擴展。此次發(fā)布的參考體系架構基于八項被稱為“支柱”的核心技術原則,代表了系統(tǒng)需要包含的被定義為“OpenFog”的關鍵屬性。這些支柱分別是安全性、可擴展性、開放性、自主性、RAS(可靠性、可用性和可維護性)、敏捷性、層次性和可編程性,如圖1 所示。該參考體系架構滿足了用于云到霧統(tǒng)一體的可互操作、端到端數據連接解決方案的需求。2018年6月,開放霧計算參考體系架構已被IEEE標準協(xié)會(IEEE-SA)采納為正式標準。
圖1 開放霧計算參考體系架構的八個支柱模型
這種可伸縮的計算體系架構建立在霧節(jié)點的基礎上,霧節(jié)點是通信和計算實體,一方面支持硬件虛擬化和可信計算,另一方面支持安全通信和服務提供。在終端設備之間的通信路徑上可以部署多層霧節(jié)點,包括遺留的設備、物聯(lián)網傳感器/執(zhí)行器、移動設備和云服務器。在每一層中,每個霧節(jié)點之間可以互相通信和協(xié)作以傳播信息和計算服務,同時支持負載平衡、容錯和對網絡異常、安全攻擊的協(xié)調響應。
部署在設備—霧—云(Device-Fog-Cloud)統(tǒng)一體中的霧節(jié)點可以執(zhí)行不同的任務,這取決于它們的通信帶寬和處理能力,以及它們與終端設備和云服務器之間的距離(以跳數或延遲計算)。直接連接到終端設備的霧節(jié)點主要用作數據集中器、壓縮器和預處理。上層霧節(jié)點通常會被賦予更多的能力,并被賦予數據分析和建模任務。另一方面,反應性實時計算和網絡物理控制往往發(fā)生在接近終端設備的霧節(jié)點上,而數據到知識的轉換可能在離云更近的地方進行。
三
開放霧計算的安全目標及存在問題
使用開放霧計算體系架構的系統(tǒng),需要為這些系統(tǒng)配備安全性能,目的有兩個:(1)使開放霧計算系統(tǒng)能夠作為設備—霧—云統(tǒng)一體的一部分進行運作,這個統(tǒng)一體具有響應性、可用性和可生存性,并且是可以信賴的;(2)通過霧節(jié)點為那些不具備自我保護能力或資源的設備和子系統(tǒng)提供信息安全和可信計算服務。
開放霧計算中的安全問題存在以下三個問題:(1)開放霧計算作為一種新的普適計算范式時,存在脆弱性;(2)在物理環(huán)境下會暴露多個運行中的霧節(jié)點;(3)霧節(jié)點需要與各種類型的物聯(lián)網設備實現互操作。
?。ㄒ唬╅_放環(huán)境下運行的風險
1.物理暴露
與云服務器不同,許多霧節(jié)點可能會暴露在物理環(huán)境中,因此很容易受到物理攻擊。為了確保端到端的安全性,必須保護霧節(jié)點及其外部輸入/輸出免受硬件篡改或電磁竊聽。保護霧節(jié)點所需的物理安全級別必須通過物理風險評估工作來確定。
2.開放安全邊界
在實際的應用中,由一個服務供應商所部署的霧節(jié)點可以為來自其他供應商的客戶端提供服務。這些客戶端可能具有不同的安全實踐,并且在自我保護方面的能力可能更弱。這些沒有明確定義安全邊界的開放操作場景為開放霧計算安全帶來了一些最大的風險。如何允許這些服務共享信息和資源,同時確保開放霧計算系統(tǒng)的總體安全性仍然是研究人員面臨的主要挑戰(zhàn)。通過在互操作性和服務域的層次結構上強制執(zhí)行安全策略,可以克服這一挑戰(zhàn)。
3.遠程管理
對大多數物聯(lián)網設備和霧節(jié)點,管理員將對其進行遠程管理。遠程管理能夠幫助管理員以最經濟的方式控制設備;當然,這種方法也大大增加了漏洞存在的可能,為對手提供了發(fā)起各種網絡攻擊的機會,同時,也增大了偵察和響應攻擊的難度。開放霧計算安全管理工作組(OpenFog Security and Manageability Workgroups)正在與產業(yè)界合作開發(fā)一個基于域的非集中式服務管理上層結構,以提供安全的遠程管理服務。
(二)物聯(lián)網—霧(IoT-Fog)互操作中存在的障礙
1.遺留的過時設備
在系統(tǒng)升級期間,原有的老舊應用程序通常都會對現有的計算和存儲設備進行重用,以便保護現有的工作系統(tǒng)并節(jié)省成本。但這種做法通常會帶來安全問題,因為這些遺留設備在設計之初并沒有考慮到開放霧計算的安全需求。因此,在將遺留設備集成到開放霧計算系統(tǒng)之前,必須對它們進行適當的性能完善。最優(yōu)做法是將加固后的霧節(jié)點部署為遺留設備和開放霧計算系統(tǒng)之間的中間介質。
2.異構協(xié)議和操作流程
異構性是開放霧計算架構的本質,因此,確保開放霧計算實體之間的端到端通信安全是至關重要的,這些實體具有不同的性能和功能。開放霧計算將根據通用的區(qū)域性實踐,采用加密功能和安全通信協(xié)議的標準化集合。為了使霧節(jié)點能夠與各種遺留設備實現互操作,將開發(fā)協(xié)議抽象層和IP適配層。
3.設備間的資源約束
現有的設備可能還沒有準備好迎接霧計算的到來,無法充分保護自身系統(tǒng)。例如,許多物聯(lián)網設備無法實現強大的加密功能,容易受到欺騙和重放攻擊。霧節(jié)點如何在不損害端到端安全性,甚至更好地為這些設備提供安全服務的情況下,與這些設備進行交互,仍然是一個巨大的挑戰(zhàn)。
?。ㄈ┍Wo新的計算范式
1.多租戶技術
未來,大多數霧節(jié)點都將支持多租戶技術,其中一個軟件實例可以服務于多個租戶和用戶組。多租戶技術要求在各個實例在運行過程中進行環(huán)境之間的邏輯隔離,這樣每個實例就可以獨立執(zhí)行功能,而無需考慮其他實例,除非需要數據、資源的共享。為了實現這一點,霧節(jié)點必須配備可信的計算基礎和安全策略實施引擎,以便它們能夠實現屬于不同組織或應用程序域的租戶的流程隔離、訪問控制、資源管理和服務質量(QoS)要求。
2.多層物聯(lián)網—霧—云(IoT-Fog-Cloud)混合技術
雖然多租戶技術在一個霧節(jié)點中引入了復雜性,但是在設備—霧—云統(tǒng)一體中部署的分布式多層霧節(jié)點為開放霧計算系統(tǒng)創(chuàng)建了另一個復雜性維度。霧節(jié)點中所呈現出來的用戶進程能夠在可信執(zhí)行環(huán)境中運行,并通過動態(tài)的網格關系實現彼此的交互。在這一過程中,不僅數據在通過多層霧節(jié)點從設備傳播到云的過程中可能會經歷更加復雜的處理;還可以在同一層的霧節(jié)點之間實現共享和聚合。為了確保正確的數據和流程管理,必須將邏輯域結構與正確的策略管理結合起來。
四
開放霧計算體系架構的安全特性
許多開放霧計算應用可能需要將霧節(jié)點部署在公開的物理環(huán)境中,與不太可信的邊緣節(jié)點和設備進行互操作,并在嚴格的操作約束條件下提供關鍵任務服務。這些要求意味著開放霧計算系統(tǒng)必須提供比傳統(tǒng)信息安全更多的信息,并提供具有響應性、可用性、安全性和可靠性保證的信息服務。
?。ㄒ唬┩庠诎踩c內在安全
安全保障必須根據霧節(jié)點的外部屬性(如采用標準化的加密函數和安全協(xié)議)和內部屬性(如實現這些函數和協(xié)議的保障級別)來指定。這些內部屬性將確保信任鏈建立在信任根(RoTs)之上,并傳播到霧節(jié)點的可信計算基(TCB)中。外在和內在的屬性都應當能夠識別潛在威脅,并對系統(tǒng)實施必要的保護措施。
(二)保護范圍
開放霧計算系統(tǒng)的保護范圍必須包括一個或多個相互連接的霧節(jié)點,以及設備—霧—云統(tǒng)一體中的所有實體,這些實體霧節(jié)點中直接或間接的進行交互。使用場景可能包括霧節(jié)點之間和霧節(jié)點內部的交互,以及節(jié)點到設備和節(jié)點到云的交互。在過渡設備部署時,可能還需要考慮霧節(jié)點和遺留設備之間的交互。連接/互操作域(CIDs)和服務/應用域(SADs)的相關規(guī)范可以在信息傳遞和服務支持層面進一步細化保護范圍。
?。ㄈ┩{模型
由霧節(jié)點保護的資產不僅包括軟件、數據和元數據,同時也包括計算、網絡和存儲資源與服務。由于霧節(jié)點存在物理暴露和安全邊界的開放性,因此可能會面臨物理安全、通信安全、計算安全等多方面的威脅。這些威脅必須根據不同使用場景下潛在影響的嚴重程度進行排序,還應考慮故意或意外損壞/故障。
?。ㄋ模┠繕撕涂山桓冻晒?/p>
開放霧計算安全工作組的任務是指導開放霧計算系統(tǒng)開發(fā)人員采用合適的系統(tǒng)保護策略,以抵御與應用相關的威脅。幫助開發(fā)開放霧計算安全評估框架也是開放霧計算安全工作組的目標。為此,工作組開始采用通用的標準方法處理霧節(jié)點的安全需求。目前正在開發(fā)霧節(jié)點的保護框架(PP),并將在年底前完成。
霧節(jié)點的安全保障需求將在保護框架制定完成后進行詳細說明。這些需求將轉化為目標產品的安全評估標準。然后,區(qū)域試驗臺和評估中心便可以執(zhí)行安全保障評估流程。
五
開放霧計算的安全方法
以節(jié)點為中心的的開放霧計算安全方法由四個不同的方面組成:霧節(jié)點的物理安全,設備—霧—云統(tǒng)一體中的端到端安全,對出現在統(tǒng)一體中的硬件/軟件實體實行安全監(jiān)控和管理和霧節(jié)點中用戶執(zhí)行進程的可信度。本文將對上述四種方法中的前三種進行簡單闡述,讀者可以參考開放霧計算智能對象任務小組正在開展的工作,了解確保可靠性的需求和方法。
?。ㄒ唬┪锢戆踩?/p>
霧節(jié)點所需的物理安全級別取決于外部人員訪問其物理組件(物理暴露)的容易程度,以及如果這些組件受到威脅將會帶來什么后果(使用臨界性)。這些物理風險評估可能需要部署四種類型的防篡改機制,包括抵御、證據、偵查和響應,以阻止或減輕針對設備的潛在物理攻擊和網絡攻擊。
當防篡改機制建立后,應當允許進行合法的維護。為此,霧節(jié)點應該具有一種特定的、安全的維護模式。授權人員在維護過程中可以暫時禁用防篡改機制,并在維護工作完成后重新啟用該機制。
?。ǘ┒说蕉税踩?/p>
通過對節(jié)點、網絡和數據安全進行保護,為位于設備—霧—云統(tǒng)一體中的所有信息、服務和應用提供端到端安全。
1.節(jié)點安全
安全的開放霧計算系統(tǒng)的開發(fā)應該從其霧節(jié)點的安全實現開始,這些節(jié)點應該瞄準在安全硬件中實現的強信任根(RoTs),或者由硬件支持的安全機制所保護的強信任根。同時,還應當借助策略執(zhí)行引擎(PEnPs)管理用戶進程之間的信息流,這些用戶進程是根據多個租戶的要求來執(zhí)行的。配備可信計算基(TCBs)的霧節(jié)點能夠將信任鏈從RoTs擴展到用戶進程,并通過硬件虛擬化和可信引導實例化可信執(zhí)行環(huán)境(TEEs)。
研究人員可以使用多種技術實現與開放霧計算兼容的可信計算基,從專用或集成硬件信任根的使用到支持內存保護和安全操作模式的可信計算基固件實現。遵循TCG TPM 2.0規(guī)范的硬件可信平臺模塊(TPMs)是硬件解決方案的示例,ARM TrustZone?是專門針對供應商的固件解決方案。由于集成的硬件信任根通常具有有限的受保護存儲或密碼處理能力,因此可能必須使用虛擬硬件可信平臺模塊才能支持潛在的可信執(zhí)行環(huán)境實例化。
2.網絡安全
開放霧計算網絡安全包括通信安全和信息安全服務。
2.1 通信安全
X.800建議(recommendation X.800)是國際電話電報咨詢委員會(CCITT)關于開放系統(tǒng)互連安全體系架構的建議,它為開放系統(tǒng)互連的安全通信提供一種概念性和功能性的框架,以及在OSI環(huán)境下解決網絡安全問題的一致性途徑。霧節(jié)點應遵循X.800建議中所提供的通信安全服務,包括:
?。?)機密性:對數據提供保護,使之不向非授權者泄露。
?。?)完整性:抵御積極威脅,保證數據沒有遭受未經授權方式作的改動或破壞。
?。?)身份驗證:在對等實體間進行通信時,必須執(zhí)行身份驗證服務,確保自己與期望的對等實體建立聯(lián)系。
(4)來源和交易的不可否認性(用于遠程認證):使發(fā)送者/接收者既不能否認發(fā)送/接收過報文,也不能否認發(fā)送/接收過原始內容。
在所有霧到云(Fog-to-Cloud)和霧到霧(Fog-to-Fog)的通信之間都應當提供這些服務,并使用標準化的安全傳輸協(xié)議。霧通信應受傳輸層安全(TLS)和數據報傳輸層安全(DTLS)協(xié)議的保護,目前這些協(xié)議已經成為事實上的標準。設備協(xié)議抽象層可用于支持所有IP的適應邊緣,管理員會在霧節(jié)點上部署通信代理用于實施協(xié)議,目的是為了保護從節(jié)點到設備(Node-to-Device)的通信過程中有線/無線通信的機密性和完整性。
2.2 信息安全服務
配備可信計算基和強大安全機制的霧節(jié)點是通過網絡功能虛擬化(NFV)和軟件定義網絡(SDN)來提供信息安全服務的理想平臺。系統(tǒng)管理員應該按照互操作性和服務領域規(guī)范部署一些服務,如深度包檢查、應用層代理、IDS/IPS等,并根據基于域的安全服務策略進行操作。
3.數據安全
數據、元數據和程序以三種狀態(tài)之一存在于設備—霧—云統(tǒng)一體中:(1)正在使用的數據,即處理過程中駐留在系統(tǒng)內存中的數據;(2)靜止數據,即駐留在非易失性存儲器上的數據;(3)動態(tài)數據,即通過網絡基礎設施實現交換的數據。應該對這些狀態(tài)中存儲的資料給予適當保護。
3.1 正在使用的數據
數據和程序在處理期間駐留在內存層次結構中。包括關鍵材料、個人/公司的專屬數據甚至程序代碼在內的多種信息都可能被視為機密材料受到保護,在未經授權的情況下無法進行閱讀或修改。內存管理單元可用于阻止來自地址空間和物理/虛擬設備的未授權訪問??尚殴芾沓绦蚩梢酝ㄟ^抽象和虛擬化的硬件平臺形式提供額外的保護,從而限制單個虛擬機的執(zhí)行環(huán)境。
3.2 靜止數據
駐留在非易失性存儲中的信息必須接受基本的機密性和完整性保護。通常有三種機制可用于保護靜止數據:不區(qū)分的全存儲加密;判別式的文件和數據庫加密;強制的和任意的訪問控制。必須對用戶進程發(fā)起的所有數據訪問強制執(zhí)行基于角色/屬性/能力的訪問控制。不區(qū)分或判別式的加密也應用于保護駐留在易受物理安全攻擊的非易失性存儲上的信息。必須使用安全憑證和訪問控制策略管理來實施適當的保護。
3.3 動態(tài)數據
在設備—霧—云統(tǒng)一體中交換的信息必須通過網絡安全措施加以保護。此外,在可信執(zhí)行環(huán)境中執(zhí)行的用戶進程可以選擇使用服務/進程的專屬密鑰加密其數據。這些額外的數據儲存保護可以進一步加強資料的私密性。
(三)安全監(jiān)控與管理
新的威脅、漏洞,甚至是環(huán)境中的簡單變化都可能導致新攻擊載體的出現。因此,開放霧計算的安全監(jiān)控與管理(SMM)必須賦予開放霧計算系統(tǒng)快速有效地響應安全環(huán)境變化的能力。
安全管理利用策略來定義開放霧計算系統(tǒng)的運行方式,而安全監(jiān)控則報告系統(tǒng)的實際運行方式。安全管理策略交付系統(tǒng)應該是自動化的,以便向大量的霧節(jié)點實時提供和執(zhí)行安全策略。
安全監(jiān)控的實現是為了以可信的方式收集信息并進行安全分析,其基本要求是在霧節(jié)點上啟用日志和遙感勘測(telemetry)功能,telemetry技術是一項遠程的從物理設備或虛擬設備上高速采集數據的技術,能夠提供更實時更高效的數據采集功能。系統(tǒng)管理員必須仔細考慮日志和遙感勘測事件的機密性與完整性。安全事件應該在安全信息和事件管理(SIEM)系統(tǒng)或類似的中央或分布式關聯(lián)引擎中進行聚合與關聯(lián)分析。然后,通過態(tài)勢感知和上下文感知來觸發(fā)基于規(guī)則和行為分析的通知,以確保威脅檢測的最大可能性。
安全監(jiān)控與管理服務之間的安全通信應與特定安全域中的數據平面及控制平面通信隔離。安全監(jiān)控與管理服務應該是這個安全域的一部分,霧計算系統(tǒng)中任何未經授權的實體都不能在這個域中通信。
最后,將安全監(jiān)控與管理服務中的多種功能結合使用可以支持自主的安全操作。監(jiān)控系統(tǒng)中基于人工或機器安全分析生成的安全事件和警報應觸發(fā)安全管理系統(tǒng)對受影響的霧節(jié)點進行手動或自動的策略更新,以實現響應式安全自動化。通過更新尚未受到網絡攻擊的霧節(jié)點中的策略,可以借助一個主動的安全自動化系統(tǒng)來阻止威脅在系統(tǒng)中的傳播。
1.身份和證書管理
開放霧計算系統(tǒng)應當對用戶、終端設備、霧節(jié)點、云服務器以及可信執(zhí)行環(huán)境(TEEs)中相關的身份和關系信息,以及在這些實體中實例化的服務和應用程序進行管理。開放霧計算中身份管理系統(tǒng)的主要特點包括:
(1)實體注冊:為了加強端到端的安全性,在將任何實體添加到開放霧計算系統(tǒng)之前,管理員必須確保它們的真實性。一旦一個實體在開放霧計算系統(tǒng)中進行注冊,那么它必須提供一個加密的證書。一種常用的技術是使用公鑰密碼來驗證實體的數字身份。
(2)代理服務:資源有限的設備可能無法執(zhí)行強大的身份驗證和訪問控制,在這一情況下,這些功能應當委托給與它們相關的霧節(jié)點,把這些霧節(jié)點作為設備的代理。
?。?)安全證書存儲:霧節(jié)點的數字身份和證書,尤其是私鑰,必須進行安全存儲。當霧節(jié)點部署在可能受到網絡攻擊的危險環(huán)境中時,這一點尤為重要。
?。?)間歇性連接:身份驗證和訪問控制等身份管理服務必須時刻保證功能正常,即使在與后端身份服務沒有主動連接的情況下,也不能出現功能故障。應當通過霧節(jié)點之間的協(xié)作使這些服務無處不在。
(5)可伸縮性:身份管理基礎設施必須是可伸縮和分散的,因為開放霧計算系統(tǒng)可以通過增加霧節(jié)點和終端設備的數量實現體量的擴展。
2.域和策略管理
開放霧計算定義了兩種類型的邏輯域,即連接/互操作域(CID)和服務/應用域(SAD),以便在開放霧計算體系架構上強加一個可操作的超結構。每一種類型的域都應該與體系架構中的數據/服務抽象層相關聯(lián)。此外,每個域應該有自己的操作和安全策略。這些策略必須由這些域中的霧節(jié)點來執(zhí)行。
連接/互操作域是設備—霧—云統(tǒng)一體中開放霧計算實體的粗粒度集合,可以通過信息交換、程序遷移和重用實現互操作。連接/互操作域應該建立在開放霧計算體系結構的數據交換層上,其中霧節(jié)點是數據交換層的基本實體。每一個連接/互操作域都應當具有互操作性,同時執(zhí)行相應的安全策略。
另一方面,服務/應用域則是在受信任執(zhí)行環(huán)境集合中執(zhí)行的數據/服務資源的細粒度集合,用于支持特定的應用程序。服務/應用域的實例化發(fā)生在開放霧計算體系架構中的服務提供層。以容器或智能對象形式開發(fā)的用戶進程是服務/應用域中的基本實體。每個服務/應用域都應該指定和執(zhí)行可操作的和可信的計算策略。
連接/互操作域和服務/應用域都可以由開放霧計算實體、數據和服務的所有者增量化地建立。這些所有者還有權利和責任指定要在這些域中執(zhí)行的操作和安全策略??梢越⒂驅哟谓Y構來細化策略實施的范圍??梢园惭b橋接實體來支持域間的交互。在安全和管理工作組之間正在開發(fā)分散的域成員關系和策略管理體系架構。
六
結 語
開放霧計算提出了一種普適的、異構多層通信計算體系架構,為廣泛的IT/OT應用程序提供了可靠的信息服務。它還提供了一個平臺,用于在設備—霧—云統(tǒng)一體中部署和驗證新技術。在安全領域,研究人員正在建立安全即服務(SECaaS)的概念,它將是一個基于霧節(jié)點的、策略驅動型的信息安全服務,通過網絡功能虛擬化(NFV)為無法保護自己的終端設備提供服務。SECaaS必須尊重應用/服務域結構,并且不應該干擾應用本身的業(yè)務流程。包括分布式持久賬本在內的新技術,特別是2G/3G區(qū)塊鏈,如以太坊(Ethereum)和IOTA Tangle,以及信息傳播傳輸,如BATS代碼,都可以用來增強開放霧計算安全的可擴展性和魯棒性。