葛思江 王利明 李兆璨 馬多賀
摘 要:云計(jì)算市場規(guī)模逐年上升,其所面臨的安全問題也越來越受到人們的關(guān)注。在云計(jì)算環(huán)境中,若網(wǎng)絡(luò)隔離機(jī)制失效,惡意租戶突破邊界發(fā)起非法訪問,將使云中數(shù)據(jù)資產(chǎn)和隱私面臨巨大的安全風(fēng)險(xiǎn)。因此,本文提出一種面向云計(jì)算網(wǎng)絡(luò)隔離邊界的全周期安全審計(jì)體系,以期及時(shí)發(fā)現(xiàn)云中隔離失效的安全威脅,從而增強(qiáng)云平臺(tái)安全能力。
關(guān)鍵詞: 云計(jì)算;網(wǎng)絡(luò)隔離;?安全審計(jì)
文章編號: 2095-2163(2019)03-0016-07?中圖分類號: TP393.08?文獻(xiàn)標(biāo)志碼: A
0?引?言
云計(jì)算是信息技術(shù)服務(wù)模式的重大創(chuàng)新,通過資源(包括計(jì)算資源、網(wǎng)絡(luò)資源、存儲(chǔ)資源等)池化技術(shù),使基礎(chǔ)設(shè)施可以被多個(gè)租戶共享使用。
然而,云環(huán)境中的多租戶共享技術(shù)是一把雙刃劍。一方面,實(shí)現(xiàn)了一種按需的服務(wù)方式,提供方便快捷的使用手段,提高了資源利用率,使云計(jì)算成為戰(zhàn)略性新興產(chǎn)業(yè)的重要組成部分[1];另一方面,打破了物理設(shè)備之間的壁壘,導(dǎo)致安全邊界模糊、弱化,其所面臨的一系列安全問題也越來越受到人們的關(guān)注。
尤其在網(wǎng)絡(luò)方面,基于云計(jì)算技術(shù)構(gòu)建的數(shù)據(jù)中心與傳統(tǒng)數(shù)據(jù)中心不同,遭受的攻擊不僅來自外部,更有很大一部分來自內(nèi)部惡意租戶。若內(nèi)部攻擊者打破云計(jì)算網(wǎng)絡(luò)中的虛擬隔離邊界,發(fā)起非法訪問,將使其他租戶的數(shù)據(jù)資產(chǎn)和隱私面臨巨大的安全風(fēng)險(xiǎn)。
CSA[2]將這一問題定義為共享環(huán)境中的隔離機(jī)制失效(isolation failure)。該威脅同時(shí)被CSA、GARTNER、ENISA等權(quán)威機(jī)構(gòu)列為云內(nèi)最大的安全風(fēng)險(xiǎn)來源之一[3]。這對云計(jì)算網(wǎng)絡(luò)提出了更高的安全要求。確保云內(nèi)隔離機(jī)制是否有效,也成為云服務(wù)被租戶接受的前提[4]。
因此,本文提出了一套面向云計(jì)算網(wǎng)絡(luò)隔離邊界的安全審計(jì)體系,包含從審計(jì)數(shù)據(jù)采集、審計(jì)數(shù)據(jù)分析到審計(jì)數(shù)據(jù)管理的全周期安全審計(jì)流程,并實(shí)現(xiàn)全方位、多層次地對云中網(wǎng)絡(luò)隔離邊界進(jìn)行分析。以期在保障云計(jì)算網(wǎng)絡(luò)對租戶的透明性的同時(shí),及時(shí)發(fā)現(xiàn)云中隔離失效的安全威脅,從而增強(qiáng)云平臺(tái)安全能力。
1?相關(guān)工作
為了解決共享環(huán)境中隔離失效問題,本文引入安全審計(jì)技術(shù),以進(jìn)一步研究云計(jì)算網(wǎng)絡(luò)中基于隔離邊界的安全審計(jì)體系。
安全審計(jì)是對計(jì)算機(jī)系統(tǒng)和計(jì)算機(jī)網(wǎng)絡(luò)中的各種信息進(jìn)行(實(shí)時(shí))采集、分析,以查證是否發(fā)生安全事件的一種技術(shù)[5]。但云計(jì)算環(huán)境比傳統(tǒng)IT信息系統(tǒng)復(fù)雜,其所特有的虛擬化、多租戶、跨域共享等技術(shù)使得傳統(tǒng)安全審計(jì)的具體方法不能直接遷移到云中使用。
本節(jié)首先依據(jù)審計(jì)數(shù)據(jù)來源不同,分類介紹了云安全審計(jì)的4個(gè)類型;然后針對其中的配置審計(jì)維度,描述現(xiàn)有基于云計(jì)算網(wǎng)絡(luò)配置的安全審計(jì)相關(guān)研究工作。
1.1?審計(jì)數(shù)據(jù)來源
依據(jù)云中審計(jì)數(shù)據(jù)來源的不同,可將云環(huán)境中的審計(jì)機(jī)制分為存儲(chǔ)審計(jì)、系統(tǒng)審計(jì)、網(wǎng)絡(luò)流審計(jì)和配置審計(jì)四類。對此可做闡釋解析如下。
(1)存儲(chǔ)審計(jì)。指租戶針對云端存儲(chǔ)數(shù)據(jù)的完整性和可用性進(jìn)行分析,檢查數(shù)據(jù)是否被破壞或丟失[5]。
(2)系統(tǒng)審計(jì)。指對租戶和云管理員的文件操作、進(jìn)程調(diào)用等行為進(jìn)行分析,檢查是否存在越權(quán)、非法操作等異常行為。例如,針對云中用戶操作,Majumdar等人[6]提出利用持續(xù)監(jiān)控的審計(jì)方法對云內(nèi)用戶認(rèn)證域?qū)嵤┓治觥?/p>
(3)網(wǎng)絡(luò)流審計(jì)。指對云平臺(tái)中的網(wǎng)絡(luò)流量進(jìn)行采集和分析,包括南北向流量和東西向流量。通過網(wǎng)絡(luò)流審計(jì)也可分析云網(wǎng)絡(luò)環(huán)境的安全隔離性,但該方法不屬本文討論范圍。如文獻(xiàn)[7]通過添加標(biāo)記探測網(wǎng)絡(luò)信息流,利用流量驗(yàn)證租戶之間的隔離性;文獻(xiàn)[8]將Snort入侵檢測與網(wǎng)絡(luò)審計(jì)功能模塊結(jié)合;Shetty[9]監(jiān)控云內(nèi)網(wǎng)絡(luò)流量,并利用機(jī)器學(xué)習(xí)自適應(yīng)地調(diào)整檢測閾值發(fā)現(xiàn)異常。
(4)配置審計(jì)。指對云平臺(tái)中的網(wǎng)絡(luò)結(jié)構(gòu)配置、防火墻策略配置等進(jìn)行分析。該方法可通過分析云內(nèi)的網(wǎng)絡(luò)機(jī)制是否與期望一致,查證云計(jì)算網(wǎng)絡(luò)是否存在潛在的隔離失效安全風(fēng)險(xiǎn)。
1.2?網(wǎng)絡(luò)配置審計(jì)
本文工作可歸類為配置審計(jì)研究。針對網(wǎng)絡(luò)配置數(shù)據(jù)源,對多租戶環(huán)境下的網(wǎng)絡(luò)結(jié)構(gòu)和轉(zhuǎn)發(fā)要素實(shí)施審計(jì),分析云內(nèi)網(wǎng)絡(luò)中是否存在共享環(huán)境的隔離失效問題。
目前,由云服務(wù)提供商自身或可信第三方實(shí)施審計(jì)都已經(jīng)比較常見了。文獻(xiàn)[10-11]認(rèn)為可以通過事后安全審計(jì),在攻擊發(fā)生后通過日志分析發(fā)現(xiàn)云內(nèi)安全違規(guī)事件。Majumdar等人[12]提出的方法支持事后追溯的審計(jì)。Madi等人[13]將云管理平臺(tái)(如Openstack)劃分為網(wǎng)絡(luò)管理層和網(wǎng)絡(luò)實(shí)現(xiàn)層,然后基于約束求解器Sugar[14]分別對不同層面的安全隔離屬性實(shí)施審計(jì)。
然而,這些工作的問題與不足就在于無法及時(shí)對云計(jì)算網(wǎng)絡(luò)環(huán)境中的安全事件實(shí)施及時(shí)的處理。因此,近年來出現(xiàn)了基于持續(xù)監(jiān)控實(shí)現(xiàn)運(yùn)行時(shí)審計(jì)的研究工作。
在傳統(tǒng)的非云網(wǎng)絡(luò)環(huán)境中,VeriFlow[15]和NetPlumber[16]提出了運(yùn)行時(shí)的網(wǎng)絡(luò)驗(yàn)證方法。通過監(jiān)視網(wǎng)絡(luò)事件的配置變化,在違規(guī)發(fā)生之前或發(fā)生時(shí)立即捕獲網(wǎng)絡(luò)違規(guī)事件。Libra[17]使用分治技術(shù)驗(yàn)證大型網(wǎng)絡(luò)中是否存在可達(dá)性故障,并利用分布式并行技術(shù)提高了效率。
在云環(huán)境中,Bleikertz等人[18-19]提出利用基于圖的方法,檢查云內(nèi)配置變更事件,接近實(shí)時(shí)地發(fā)現(xiàn)云計(jì)算基礎(chǔ)設(shè)施中的錯(cuò)誤配置,增強(qiáng)安全合規(guī)能力。Majumdar等人[20]提出利用依賴模型預(yù)先推斷將發(fā)生的關(guān)鍵配置變更,通過主動(dòng)檢查以避免安全違規(guī)事件的發(fā)生,并進(jìn)一步在文獻(xiàn)[21]中提出針對文獻(xiàn)[20]中依賴模型的改進(jìn)措施,利用基于貝葉斯網(wǎng)絡(luò)的主動(dòng)學(xué)習(xí)技術(shù)自動(dòng)提取事件之間的依賴,在文獻(xiàn)[22]中進(jìn)一步描述了該方法在Openstack中的具體實(shí)現(xiàn)。TenantGuard[23]對云平臺(tái)三層網(wǎng)絡(luò)進(jìn)行建模,通過持續(xù)監(jiān)控的審計(jì)方法實(shí)現(xiàn)了在運(yùn)行時(shí)實(shí)施虛擬機(jī)級別的可達(dá)性驗(yàn)證,但該項(xiàng)工作沒有考慮二層網(wǎng)絡(luò)的隔離情況。
與上述相關(guān)工作的不同之處在于,本文明確了云中網(wǎng)絡(luò)隔離邊界劃分和失效模式,然后基于隔離邊界提出了針對不同網(wǎng)絡(luò)層面、不同控制粒度的審計(jì)數(shù)據(jù)分析方法,從而全方位、多層次地對云計(jì)算虛擬網(wǎng)絡(luò)進(jìn)行持續(xù)分析。
2?云內(nèi)網(wǎng)絡(luò)隔離邊界分析
2.1?邊界失效模式
以主流開源云平臺(tái)Openstack為例,設(shè)計(jì)采用的網(wǎng)絡(luò)架構(gòu)方案如圖1所示,可劃分為2個(gè)層次,分別是:網(wǎng)絡(luò)管理層和網(wǎng)絡(luò)實(shí)現(xiàn)層[13]。
其中,網(wǎng)絡(luò)管理層通過控制節(jié)點(diǎn)上的持久化數(shù)據(jù)庫維護(hù)云中網(wǎng)絡(luò)狀態(tài),同時(shí)利用消息隊(duì)列將網(wǎng)絡(luò)配置信息下發(fā)給各個(gè)計(jì)算節(jié)點(diǎn)上的二層網(wǎng)絡(luò)代理和三層網(wǎng)絡(luò)代理實(shí)施,從而實(shí)現(xiàn)多租戶網(wǎng)絡(luò)的管理;網(wǎng)絡(luò)實(shí)現(xiàn)層提供了云平臺(tái)中的網(wǎng)絡(luò)隔離機(jī)制的具體實(shí)現(xiàn)。
從網(wǎng)絡(luò)管理層的角度看,惡意內(nèi)部租戶可能利用漏洞或錯(cuò)誤配置,非法訪問控制節(jié)點(diǎn),從而獲得云平臺(tái)最高權(quán)限。另外,還可能出現(xiàn)惡意管理員或管理員被收買的情況。此時(shí),攻擊者可以任意地覆蓋原有網(wǎng)絡(luò)配置,植入其想要的任何網(wǎng)絡(luò)配置規(guī)則,打破正常情況下的云平臺(tái)網(wǎng)絡(luò)隔離。
從網(wǎng)絡(luò)實(shí)現(xiàn)層的角度看,云內(nèi)惡意用戶可對網(wǎng)絡(luò)實(shí)現(xiàn)層發(fā)起攻擊,篡改實(shí)現(xiàn)層網(wǎng)絡(luò)配置。一方面,若攻擊者獲得計(jì)算節(jié)點(diǎn)上的Hypervisor權(quán)限,則可惡意篡改計(jì)算節(jié)點(diǎn)上的網(wǎng)絡(luò)配置并發(fā)起非法訪問;另一方面,若云平臺(tái)管理軟件(如Openstack)存在漏洞,惡意租戶可利用其存在的漏洞發(fā)起非法訪問。例如,OpenStack Neutron OSSA-2014-008中報(bào)告的漏洞允許租戶在未授權(quán)的情況下在虛擬路由器上創(chuàng)建端口,連接到其他租戶的網(wǎng)絡(luò)中。
因此,針對云計(jì)算網(wǎng)絡(luò),應(yīng)基于安全審計(jì)的流程,探討分析其網(wǎng)絡(luò)管理層和實(shí)現(xiàn)層在運(yùn)行時(shí)的網(wǎng)絡(luò)邊界狀態(tài)是否存在隔離失效威脅。另外,本文研究目標(biāo)旨在解決隔離失效的安全問題,無法用于漏洞發(fā)現(xiàn),研究提出方法當(dāng)且僅當(dāng)在云中破壞租戶隔離機(jī)制的事件造成了配置數(shù)據(jù)變更的情況下生效。
2.2?邊界劃分模式
云中多租戶網(wǎng)絡(luò)隔離邊界的定義依據(jù)為國內(nèi)現(xiàn)有標(biāo)準(zhǔn)對云安全需求的抽象定義,對此可表述為:
依據(jù)GB/T 31168-2014《云計(jì)算服務(wù)安全能力要求》歸納云環(huán)境中數(shù)據(jù)網(wǎng)絡(luò)邊界劃分的基本要求:為云中虛擬網(wǎng)絡(luò)資源上的虛擬機(jī)間的訪問實(shí)施網(wǎng)絡(luò)邏輯隔離,并提供訪問控制手段。
依據(jù)GA/T 1390.2-2017《網(wǎng)絡(luò)安全等級保護(hù)基本要求 云計(jì)算安全擴(kuò)展要求》所述內(nèi)容,明確云環(huán)境中網(wǎng)絡(luò)邊界劃分的詳細(xì)要求,實(shí)現(xiàn)云租戶的網(wǎng)絡(luò)之間、安全區(qū)域之間、虛擬機(jī)之間的安全防護(hù)。
具體來說,將云中網(wǎng)絡(luò)隔離邊界粒度劃分為3個(gè)層次。這里將展開研究論述如下。
(1)租戶網(wǎng)絡(luò)隔離邊界。該邊界旨在讓每個(gè)租戶擁有和其他租戶完全隔離的一個(gè)虛擬網(wǎng)絡(luò),實(shí)現(xiàn)不同云租戶之間的地址空間隔離和數(shù)據(jù)流量隔離,工業(yè)界將這樣一個(gè)虛擬網(wǎng)絡(luò)稱為VPC(Virtual private cloud)。其中,地址空間隔離指的是不同租戶可以分配和使用相同的IP地址,各租戶可自定義網(wǎng)段;數(shù)據(jù)流量隔離指的是云內(nèi)各個(gè)租戶無法嗅探或感知到其他虛擬網(wǎng)絡(luò)內(nèi)部的流量。
(2)安全區(qū)域隔離邊界。在云計(jì)算網(wǎng)絡(luò)環(huán)境中,租戶內(nèi)部可以規(guī)劃子網(wǎng),所以一般來說,租戶通常采用訪問控制手段,再根據(jù)所承載業(yè)務(wù)的安全保護(hù)等級來劃分基礎(chǔ)設(shè)施資源池,從而形成安全區(qū)域邊界,使不同安全保護(hù)等級的區(qū)域之間實(shí)現(xiàn)完全隔離,無法相互通信。
(3)虛擬機(jī)隔離邊界。與安全區(qū)域之間的隔離邊界相比,虛擬機(jī)之間的隔離邊界粒度更細(xì)。兩者的區(qū)別在于,前者的安全防護(hù)措施在邊界上實(shí)施,而后者是直接作用于云中虛擬機(jī)節(jié)點(diǎn)的。
以O(shè)penstack為例,不同物理節(jié)點(diǎn)上不同租戶虛擬機(jī)進(jìn)行通信時(shí),網(wǎng)絡(luò)實(shí)現(xiàn)層相關(guān)隔離邊界設(shè)備如圖2所示,包括虛擬交換機(jī)、虛擬路由器、虛擬防火墻和安全組。
綜上,本節(jié)根據(jù)現(xiàn)有安全標(biāo)準(zhǔn)中的抽象描述,明確細(xì)化了云中多租戶網(wǎng)絡(luò)的隔離邊界,將其劃分為3個(gè)級別,作為網(wǎng)絡(luò)隔離邊界審計(jì)的基準(zhǔn)。
3?云內(nèi)網(wǎng)絡(luò)隔離邊界審計(jì)體系
3.1?體系概述
在傳統(tǒng)計(jì)算機(jī)系統(tǒng)安全審計(jì)領(lǐng)域,出現(xiàn)的第一個(gè)正式標(biāo)準(zhǔn)是TCSEC(Trusted Computer System Evaluation Criteria),于1970年由美國國防科學(xué)委員會(huì)提出。在這之后,還有歐洲出臺(tái)的ITSEC標(biāo)準(zhǔn)、加拿大出臺(tái)的CTCPEC標(biāo)準(zhǔn)等隨即也陸續(xù)涌現(xiàn),直到6個(gè)國家(美、加、英、法、德、荷)共同起草了信息技術(shù)安全評價(jià)通用準(zhǔn)則(The Common Criteria for Information Technology security Evaluation),簡稱CC標(biāo)準(zhǔn)。至此,則綜合已有的信息安全的準(zhǔn)則和標(biāo)準(zhǔn),形成了一個(gè)全面的框架。
在云計(jì)算安全審計(jì)領(lǐng)域,本章節(jié)所描述的云平臺(tái)網(wǎng)絡(luò)隔離邊界審計(jì)體系的主要參考依據(jù)來源于CSA云安全聯(lián)盟發(fā)布的Security, Trust & Assurance Registry(Star)[24]標(biāo)準(zhǔn)。Star標(biāo)準(zhǔn)定義了云內(nèi)驗(yàn)證評估和審計(jì)的框架,劃分了云安全審計(jì)層次。第一個(gè)層次是云服務(wù)提供商的自我評估;第二個(gè)層次是由可信第三方實(shí)施審計(jì),確保云服務(wù)滿足CCM云安全控制矩陣[25]要求;第三個(gè)層次是利用持續(xù)監(jiān)控(continue monitor)的方法實(shí)施審計(jì)。
本章敘述的網(wǎng)絡(luò)隔離邊界審計(jì)體系,遵循的是第三個(gè)層次持續(xù)監(jiān)控要求。1.2節(jié)中所提到的針對云內(nèi)網(wǎng)絡(luò)的動(dòng)態(tài)驗(yàn)證的方法,即屬于第三個(gè)層次。具體的持續(xù)監(jiān)控方案,依據(jù)標(biāo)準(zhǔn)《云計(jì)算服務(wù)安全能力要求》制定。
云計(jì)算網(wǎng)絡(luò)中基于隔離邊界的安全審計(jì)體系架構(gòu)如圖3所示。該體系面向云計(jì)算網(wǎng)絡(luò),旨在在云平臺(tái)運(yùn)行過程中,全方位、全周期、多層次地對網(wǎng)絡(luò)隔離邊界實(shí)施審計(jì)。
依據(jù)不同分類維度,該體系主要特點(diǎn)可概論如下:
(1)全方位:從云平臺(tái)網(wǎng)絡(luò)架構(gòu)的維度出發(fā),分別對不同來源的審計(jì)數(shù)據(jù),包括虛擬化基礎(chǔ)設(shè)施的網(wǎng)絡(luò)管理層配置數(shù)據(jù)和底層網(wǎng)絡(luò)實(shí)現(xiàn)層配置數(shù)據(jù),進(jìn)行全方位的處理和分析。
(2)多層次:從網(wǎng)絡(luò)隔離邊界層次的維度出發(fā),分別依據(jù)不同粒度級別的隔離邊界模式,包括租戶網(wǎng)絡(luò)隔離邊界、安全域隔離邊界和虛擬機(jī)隔離邊界,對審計(jì)數(shù)據(jù)進(jìn)行多層次的分析。
(3)全周期:從功能維度出發(fā),分別按照審計(jì)數(shù)據(jù)采集、審計(jì)數(shù)據(jù)分析和審計(jì)數(shù)據(jù)管理的基本功能流程,對多租戶網(wǎng)絡(luò)隔離邊界進(jìn)行全周期的審計(jì)。
(4)運(yùn)行時(shí):在云計(jì)算平臺(tái)運(yùn)行過程中,當(dāng)配置狀態(tài)不滿足邊界劃分模式時(shí),認(rèn)為網(wǎng)絡(luò)隔離邊界被打破。此時(shí),云網(wǎng)絡(luò)環(huán)境中存在潛在的隔離失效威脅,可能被惡意租戶利用發(fā)起非授權(quán)訪問。
接下來,本文分別詳細(xì)說明該體系中審計(jì)數(shù)據(jù)采集、審計(jì)數(shù)據(jù)分析和審計(jì)數(shù)據(jù)管理三個(gè)基本功能流程中采用的具體方法。
3.2?審計(jì)數(shù)據(jù)采集
針對網(wǎng)絡(luò)隔離邊界進(jìn)行安全審計(jì),所需數(shù)據(jù)來源于云平臺(tái)的控制節(jié)點(diǎn)和各個(gè)計(jì)算節(jié)點(diǎn),具有分布式的特征。因此,本文引入代理機(jī)制,持續(xù)獲取分布在云平臺(tái)各個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)配置數(shù)據(jù),并采用消息機(jī)制匯總到可信第三方。分布式代理運(yùn)行機(jī)制如圖4所示。對其中每一部分的設(shè)計(jì)功能可給出分析詳述如下。
(1)直接采集代理。部署在控制節(jié)點(diǎn)上,對管理層網(wǎng)絡(luò)配置信息進(jìn)行初始數(shù)據(jù)采集,只在整套審計(jì)系統(tǒng)部署時(shí)運(yùn)行一次,且運(yùn)行時(shí)間比較長。要求在采集過程中沒有發(fā)生配置變更,云平臺(tái)網(wǎng)絡(luò)狀態(tài)穩(wěn)定不變。
(2)攔截采集代理。對管理層配置變動(dòng)操作進(jìn)行截取。只有當(dāng)可信第三方的分析結(jié)果顯示沒有違反網(wǎng)絡(luò)隔離邊界時(shí),代理才將數(shù)據(jù)轉(zhuǎn)發(fā),寫入云內(nèi)持久化數(shù)據(jù)庫,并下發(fā)到各個(gè)節(jié)點(diǎn)。否則,被攔截的配置變更操作直接被丟棄。
(3)觸發(fā)采集代理。用于獲取實(shí)現(xiàn)層配置變動(dòng)。通過觸發(fā)器機(jī)制對網(wǎng)絡(luò)實(shí)現(xiàn)層上虛擬交換機(jī)、虛擬防火墻、虛擬路由器的配置數(shù)據(jù)項(xiàng)進(jìn)行采集,從而避免因直接遍歷帶來的節(jié)省時(shí)間開銷。采集頻率由審計(jì)第三方指定。
3.3?審計(jì)數(shù)據(jù)分析
審計(jì)數(shù)據(jù)分析是實(shí)施云安全審計(jì)的核心。本文主要采用基于規(guī)則庫的審計(jì)分析方法,通過專家經(jīng)驗(yàn)預(yù)先定義規(guī)則集合,構(gòu)成規(guī)則庫,然后對采集數(shù)據(jù)進(jìn)行處理,提取審計(jì)數(shù)據(jù)特征,與規(guī)則進(jìn)行某種比較和匹配操作,發(fā)現(xiàn)具有明顯特征的違規(guī)行為。
如圖5所示,本文提出一種基于圖的網(wǎng)絡(luò)隔離邊界審計(jì)分析方法。設(shè)計(jì)研究內(nèi)容詳見如下。
3.3.1?預(yù)處理與圖建模
約束分析的目標(biāo)是在建立模型前,檢測是否存在違背約束條件的配置。本文使用謂詞表示法,根據(jù)采集的網(wǎng)絡(luò)配置數(shù)據(jù),建立個(gè)體之間的關(guān)系。研究中定義的基本狀態(tài)謂詞見表1。
以O(shè)penstack為例,涉及到的個(gè)體有租戶t、虛擬網(wǎng)絡(luò)vn、段號sg、端口vp、虛擬機(jī)實(shí)例vm。將這些個(gè)體代入謂詞中,并利用邏輯連詞將其聯(lián)結(jié)起來,轉(zhuǎn)換為一階邏輯(FOL, First-order logic)表達(dá)式描述云中網(wǎng)絡(luò)約束條件的語義。對此可得研究表述如下。
(1)約束項(xiàng)一:在多租戶網(wǎng)絡(luò)中,虛擬機(jī)實(shí)例是屬于云內(nèi)各個(gè)租戶的獨(dú)享資源,不能有一個(gè)虛擬機(jī)實(shí)例同時(shí)屬于2個(gè)或更多的租戶。表達(dá)式記為:
(2)約束項(xiàng)二:租戶網(wǎng)絡(luò)隔離邊界的核心是段號。段號可以有不同的實(shí)現(xiàn)方式,但其與租戶必定是一對一對應(yīng)關(guān)系。表達(dá)式記為:
(3)約束項(xiàng)三:進(jìn)一步地,段號被分配給虛擬網(wǎng)絡(luò)時(shí),不能有一個(gè)段號被分配給不同的虛擬網(wǎng)絡(luò)。表達(dá)式記為:
(4)約束項(xiàng)四:再進(jìn)一步地,不能將不同的段號關(guān)聯(lián)到同一個(gè)端口。表達(dá)式記為:
(5)約束項(xiàng)五:在云環(huán)境中,虛擬機(jī)實(shí)例通過關(guān)聯(lián)到虛擬網(wǎng)卡的端口,擁有其自己的MAC地址,然后連入虛擬網(wǎng)絡(luò)。分配給虛擬網(wǎng)絡(luò)的段號和與虛擬端口關(guān)聯(lián)的段號應(yīng)當(dāng)是一致的。表達(dá)式記為:
采用現(xiàn)有SAT求解器(如Sugar[14])求解當(dāng)前網(wǎng)絡(luò)配置狀態(tài)是否滿足上述五項(xiàng)約束條件。如果輸入數(shù)據(jù)滿足約束條件(SAT),則Sugar求解器將提供所有解,否則將返回UNSAT。利用這一特性,把以上五項(xiàng)FOL表達(dá)式取反(),再放入求解器,此時(shí)若有解,則意味著網(wǎng)絡(luò)配置違規(guī)。
當(dāng)驗(yàn)證約束條件滿足,初始建立圖模型。定義有向圖模型G=(V,E,C)。其中,V表示虛擬機(jī)節(jié)點(diǎn),集群中任一節(jié)點(diǎn)滿足vi∈V;E表示各節(jié)點(diǎn)之間的邊,集群中的邊ei,j即表示節(jié)點(diǎn)vi可訪問另一節(jié)點(diǎn)vj,ei,j∈E;C表示節(jié)點(diǎn)之間的連通關(guān)系,ci,j表示節(jié)點(diǎn)vi與vj之間的連通關(guān)系,圖G中初始默認(rèn)=0,若vi與vj連通,則ci,j=1,ci,j∈C。將最終建立的初始狀態(tài)圖模型記為Ginit。
3.3.2?初始隔離分析
依據(jù)2.2節(jié)中所述邊界劃分模式,本文預(yù)先定義的規(guī)則包括如下2類:
(1)TI規(guī)則集合。TI規(guī)則集合定義映射f,區(qū)分隸屬于不同租戶網(wǎng)絡(luò)的虛擬機(jī)節(jié)點(diǎn)。若使n表示虛擬機(jī)節(jié)點(diǎn)的標(biāo)識,tenantn表示標(biāo)識為n的虛擬機(jī)節(jié)點(diǎn)所屬的租戶,則可將TI規(guī)則集合中單個(gè)規(guī)則ti記為:
(2)ZI規(guī)則集合。ZI規(guī)則集合針對多租戶云平臺(tái)中屬于同一租戶的虛擬機(jī),定義L為域等級。L值為uppr、normal或lower。其中,uppr域可訪問非uppr的所有域,不可被訪問;normal域可與normal域等級相等的域互訪;lower的域可被所有域訪問,不可發(fā)起訪問。對于域內(nèi)的節(jié)點(diǎn),若n表示節(jié)點(diǎn)的標(biāo)識,leveln表示標(biāo)識為n的節(jié)點(diǎn)的標(biāo)記值,則計(jì)算節(jié)點(diǎn)n的標(biāo)記值leveln定義為:
若建立同一租戶內(nèi)各個(gè)安全域與虛擬機(jī)節(jié)點(diǎn)的正確映射關(guān)系y,則可將ZI規(guī)則集合中單個(gè)規(guī)則zi記為:
針對TI規(guī)則集合,有映射規(guī)則f代表租戶網(wǎng)絡(luò)與云中虛擬機(jī)節(jié)點(diǎn)的正確映射關(guān)系。則TI規(guī)則集合初始分析過程中,遍歷查詢圖Ginit中虛擬機(jī)節(jié)點(diǎn)vi與vj 之間的連通關(guān)系ci,j。若ci,j=1,則圖模型Ginit在滿足以下條件時(shí)合規(guī):
若ci,j=1,則圖Ginit在滿足以下條件時(shí)合規(guī):
反之則認(rèn)為連通關(guān)系ci,j違背租戶網(wǎng)絡(luò)隔離邊界要求。
針對ZI規(guī)則集合,初始分析過程中,遍歷查詢圖Ginit中虛擬機(jī)節(jié)點(diǎn)vi與vj 之間的連通關(guān)系ci,j。若ci,j=1,則當(dāng)且僅當(dāng)leveli值與levelj值滿足以下規(guī)則時(shí),圖模型Ginit中連通關(guān)系ci,j合規(guī):
反之,則認(rèn)為圖模型Ginit中連通關(guān)系ci,j違背安全域隔離邊界與虛擬機(jī)隔離邊界要求。
3.3.3?持續(xù)隔離分析
針對管理層網(wǎng)絡(luò),通過主動(dòng)攔截管理操作,對待更改的配置數(shù)據(jù)進(jìn)行提前審計(jì)分析。當(dāng)云平臺(tái)中的管理員或租戶管理員實(shí)施創(chuàng)建實(shí)例、刪除實(shí)例、創(chuàng)建網(wǎng)絡(luò)、刪除網(wǎng)絡(luò)、創(chuàng)建子網(wǎng)、刪除子網(wǎng)、創(chuàng)建安全策略、刪除安全策略等操作時(shí),增量更新圖模型,記為Gtime,time表示當(dāng)前時(shí)間戳。分析圖模型Gtime的增量部分是否滿足網(wǎng)絡(luò)邊界隔離的安全需求。若符合邊界安全需求,則接受并下發(fā)配置;若不符合邊界安全需求,則跳轉(zhuǎn)到審計(jì)管理流程,由審計(jì)管理員做出決定。
針對實(shí)現(xiàn)層網(wǎng)絡(luò),虛擬網(wǎng)絡(luò)設(shè)備分布在云平臺(tái)的各個(gè)節(jié)點(diǎn),使得原來的可信邊界被打破,導(dǎo)致云計(jì)算網(wǎng)絡(luò)面臨更多的安全風(fēng)險(xiǎn)。因此按照固定頻率采集虛擬設(shè)備數(shù)據(jù),同時(shí)對虛擬交換機(jī)流表、虛擬路由器路由表、虛擬防火墻和安全組規(guī)則等的配置狀態(tài)進(jìn)行計(jì)算和分析,得到底層實(shí)現(xiàn)網(wǎng)絡(luò)中虛擬機(jī)連通狀態(tài),與管理層圖模型G中連通度C進(jìn)行比對。若不一致,則跳轉(zhuǎn)到審計(jì)管理流程,發(fā)出安全告警。
3.4?審計(jì)數(shù)據(jù)管理
審計(jì)數(shù)據(jù)管理旨在使審計(jì)管理員能實(shí)時(shí)查看審計(jì)數(shù)據(jù)分析結(jié)果,了解云平臺(tái)運(yùn)行過程中多租戶網(wǎng)絡(luò)隔離情況。具體功能包括:查看審計(jì)分析結(jié)果、查詢審計(jì)記錄、安全告警等。
審計(jì)管理員以審計(jì)數(shù)據(jù)分析結(jié)果為依據(jù),檢查云平臺(tái)中網(wǎng)絡(luò)隔離邊界的安全狀態(tài)變化,并針對云平臺(tái)中存在的潛在隔離失效威脅,下發(fā)安全策略,做出相關(guān)決策。
4?結(jié)束語
本文通過對云計(jì)算網(wǎng)絡(luò)中的隔離邊界進(jìn)行分析,設(shè)計(jì)了一套基于隔離邊界的安全審計(jì)體系。該體系包含從審計(jì)數(shù)據(jù)采集、審計(jì)數(shù)據(jù)分析到審計(jì)數(shù)據(jù)管理的全周期安全審計(jì)流程,并提出了全方位、多層次的隔離分析方法。本工作研究解決了云中多租戶網(wǎng)絡(luò)隔離邊界被打破,導(dǎo)致共享環(huán)境中的網(wǎng)絡(luò)隔離失效這一問題,從而有效防范云內(nèi)潛在惡意租戶發(fā)起的非法訪問。
參考文獻(xiàn)
[1]???工業(yè)和信息化部. 云計(jì)算綜合標(biāo)準(zhǔn)化體系建設(shè)指南[J]. 電子政務(wù),2015(11):14.
[2]Cloud SecurityAlliance. Top threats to cloud computing[EB/OL]. [2018-08-08]. https://cloudsecurityalliance.org/artifacts/top-threats-to-cloud-computing-deep-dive/.
[3]中國信息通信研究院. 云計(jì)算發(fā)展白皮書[EB/OL]. [2018-08-14]. http://www.caict.ac.cn/xwdt/hyxw/201808/t20180808_181480.htm.
[4]石勇,郭煜,劉吉強(qiáng),等. 一種透明的可信云租戶隔離機(jī)制研究[J]. 軟件學(xué)報(bào),2016,27(6):1538-1548.
[5]王文娟,杜學(xué)繪,王娜,等. 云計(jì)算安全審計(jì)技術(shù)研究綜述[J]. 計(jì)算機(jī)科學(xué),2017,44(7):16-20,30.
[6]MAJUMDAR S, MADI T, WANG Yushun, et al. User-level runtime security auditing for the cloud[J]. IEEE Transactions on Information Forensics and Security, 2018, 13(5): 1185-1199.
[7]PRIEBE C, MUTHUKUMARAN D, O'KEEFFE D, et al. Cloudsafetynet: Detecting data leakage between cloud tenants[C]//Proceedings of the 6th edition of the ACM Workshop on Cloud Computing Security. Scottsdale, Arizona, USA: ACM, 2014: 117-128.
[8]包捷,呂智慧,華錦芝,等. 私有云環(huán)境下安全審計(jì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與設(shè)計(jì),2014,35(11):3708-3711,3729.
[9]SHETTY S. Auditing and analysis of network traffic in cloud environment[C]//Proceedings of 2013 IEEE Ninth World Congress on Services. Santa Clara, CA, USA: IEEE, 2013: 260-267.
[10]MADI T, MAJUMDAR S, WANG Yushun, et al. Auditing security compliance of the virtualized infrastructure in the cloud: Application to OpenStack[C]//Proceedings of the Sixth ACM Conference on Data and Application Security and Privacy. New Orleans, LA, USA:ACM, 2016: 195-206.
[11]ULLAH K W, AHMED A S, YLITALO J. Towards building an automated security compliance tool for the cloud[C]//2013 12th IEEE International Conference on Trust, Security and Privacy in Computing and Communications. Melbourne, VIC, Australia: IEEE, 2013: 1587-1593.
[12]MAJUMDAR S, MADI T, WANG Yushun, et al. Security compliance auditing of identity and access management in the cloud: Application to OpenStack[C]//2015 IEEE 7th International Conference on Cloud Computing Technology and Science (CloudCom). Vancouver, BC, Canada:IEEE, 2015: 58-65.
[13]MADI T, JARRAYA Y, ALIMOHAMMADIFAR A, et al. ISOTOP: Auditing virtual networks isolation across cloud layers in OpenStack[J]. ACM Transactions on Privacy and Security (TOPS), 2018, 22(1): 1.
[14]TAMURA N, BANBARA M. Sugar: A CSP to SAT translator based on order encoding[C]//Proceedings of the Second International CSP Solver Competition. [S.l.]: CSP, 2008: 65-69.
[15]KHURSHID A, ZHOU Wenxuan, CAESAR M, et al. Veriflow: Verifying network-wide invariants in real time[C]// Proceedings of the first workshop on Hot topics in software defined networks. Helsinki, Finland:ACM,2012: 49-54.
[16]KAZEMIAN P, CHANG M, ZENG H, et al. Real time network policy checking using header space analysis[C]// the 10th USENIX Symposium on Networked Systems Design and Implementation. Lombard, IL:USENIX Association,2013: 99-111.
[17]ZENG Hongyi, ZHANG Shidong, YE Fei, et al. Libra: Divide and conquer to verify forwarding tables in huge networks[C]// NSDI'14 Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation. Seattle, WA :ACM,2014: 87-99.
[18]BLEIKERTZ S, VOGEL C, GRO T. Cloud radar: Near real-time detection of security failures in dynamic virtualized infrastructures[C]//Proceedings of the 30th Annual Computer Security Applications Conference. New Orleans, Louisiana, USA: ACM, 2014: 26-35.
[19]BLEIKERTZ S, VOGEL C, GRO T, et al. Proactive security analysis of changes in virtualized infrastructures[C]//Proceedings of the 31st Annual Computer Security Applications Conference. Los Angeles, CA, USA :ACM, 2015: 51-60.
[20]MAJUMDAR S, JARRAYA Y, MADI T, et al. Proactive verification of security compliance for clouds through pre-computation: Application to OpenStack[C]//European Symposium on Research in Computer Security. Cham :Springer,2016: 47-66.
[21]MAJUMDAR S, JARRAYA Y, OQAILY M, et al. LeaPS: Learning-based proactive security auditing for clouds[M]// FOLEY S N, GOLLMANN D, SNEKKENES E.Esorics 2017. LNCS. Cham :Springer, 2017,10493: 265-285.
[22]TABIBAN A, MAJUMDAR S, WANG Lingyu, et al. Permon: An openstack middleware for runtime security policy enforcement in clouds[C]//2018 IEEE Conference on Communications and Network Security (CNS). ?Beijing, China :IEEE, 2018: 1-7.
[23]WANG Yushun, MADI T, MAJUMDAR S, et al. Tenantguard: Scalable runtime verification of cloud-wide VM-level network isolation[C]// Network and Distributed System Security Symposium.San Diego, CA, USA:2017 Internet Society,2017:1-15.
[24]Cloud SecurityAlliance. CSA STAR Program and Open Certification Framework in 2016 and Beyond[EB/OL]. [2016-12-04]. https://cloudsecurityalliance.org/artifacts/csa-star-program-open-certification-framework-in-2016-and-beyond/.
[25]Cloud SecurityAlliance. Cloud Control Matrix CCM v3.0.1[EB/OL]. [2014-09-16]. ?http://www.coursehero.com/file/14169827/CSA-CCM-v301-09-16-2014xlsx/.