近年來(lái)隨著信息技術(shù)在全球的迅猛發(fā)展,云計(jì)算已受到各界廣泛關(guān)注。云計(jì)算的特性可歸結(jié)為虛擬化、分布式部署和動(dòng)態(tài)擴(kuò)展性,其中虛擬化是云計(jì)算有別于傳統(tǒng)IT環(huán)境的最關(guān)鍵特性。而在眾多虛擬化技術(shù)中,應(yīng)用最廣泛的當(dāng)屬服務(wù)器虛擬化,此項(xiàng)技術(shù)可以將一臺(tái)或一群物理服務(wù)器構(gòu)建成虛擬化環(huán)境,在其中虛擬出更多可按需靈活配置的虛擬系統(tǒng),每個(gè)系統(tǒng)相互獨(dú)立。此項(xiàng)技術(shù)可以充分改進(jìn)硬件資源的利用率,降低能耗,有效實(shí)現(xiàn)計(jì)算資源整合的目的。然而服務(wù)器虛擬化并未止步于此,發(fā)展到今天,它已支持跨越IT架構(gòu)實(shí)現(xiàn)各個(gè)資源層面的靈活部署,可謂突飛猛進(jìn)。它的快速發(fā)展直接推動(dòng)了當(dāng)代云計(jì)算應(yīng)用日趨多樣化和復(fù)雜化,開(kāi)啟了人類跨入大數(shù)據(jù)時(shí)代的大門。
然而萬(wàn)事有利必有弊。正是由于各種虛擬化技術(shù)的引入和發(fā)展,使得云計(jì)算遇到了傳統(tǒng)IT環(huán)境前所未有的安全挑戰(zhàn)。通過(guò)和傳統(tǒng)IT環(huán)境的對(duì)比情況來(lái)看,筆者認(rèn)為云計(jì)算的安全問(wèn)題大致可以劃分為三類:①許多傳統(tǒng)IT環(huán)境未能解決的安全問(wèn)題,延續(xù)到云計(jì)算中仍然無(wú)能為力;②一些傳統(tǒng)IT環(huán)境中已經(jīng)能夠克服的常規(guī)安全問(wèn)題,但進(jìn)入云計(jì)算后表現(xiàn)得更新穎、更復(fù)雜、更棘手;③包括服務(wù)器虛擬化技術(shù)在內(nèi)的各種虛擬化技術(shù),它們自身存在漏洞缺陷有待完善。
盡管云計(jì)算的安全問(wèn)題飽受爭(zhēng)議,但是它的優(yōu)勢(shì)也是有目共睹的,在沒(méi)有找到更優(yōu)秀的替代技術(shù)之前,人們不應(yīng)因噎廢食,必須迎難而上,針對(duì)新的安全困難逐一尋找對(duì)策。人們應(yīng)該明白一個(gè)道理,若想找出一攬子的方案來(lái)解決云計(jì)算中的所有安全問(wèn)題,那只能是一種不切實(shí)際的美麗幻想。云計(jì)算的安全課題內(nèi)容過(guò)于寬泛,本文僅從云計(jì)算最核心的技術(shù)之一——服務(wù)器虛擬化技術(shù)出發(fā),著重論述基于此項(xiàng)技術(shù)所產(chǎn)生的安全風(fēng)險(xiǎn),并嘗試在生產(chǎn)應(yīng)用實(shí)踐中給出解決方案或思路。
1.服務(wù)器虛擬化實(shí)現(xiàn)模式介紹
目前市面上流行的服務(wù)器擬化軟件有好多種,一些主流的實(shí)現(xiàn)技術(shù)往往異同并存,因此技術(shù)界對(duì)它們的技術(shù)分類也莫衷一是。本人經(jīng)過(guò)綜合研究,認(rèn)為當(dāng)今真正能夠用于商用的企業(yè)級(jí)服務(wù)器虛擬化系統(tǒng),基于它們的實(shí)現(xiàn)模式來(lái)分類,大致也只有三大“流派”,分別是:全虛擬化,半虛擬化,以及硬件輔助虛擬化。至于其它如硬件仿真和操作系統(tǒng)級(jí)的虛擬化,它們更多是應(yīng)用于硬件開(kāi)發(fā)環(huán)境和個(gè)人使用環(huán)境,它們目前的技術(shù)發(fā)展難有質(zhì)的突破,暫時(shí)不可能成為企業(yè)級(jí)商用虛擬化技術(shù)的主流,更不會(huì)成為云計(jì)算的基礎(chǔ),因此本文不討論它們的安全問(wèn)題。本節(jié)針對(duì)這三種主流虛擬化實(shí)現(xiàn)技術(shù)進(jìn)行簡(jiǎn)要概述。
1.1 全虛擬化
圖1 全虛擬化示意圖
如圖1所示,全虛擬化的實(shí)現(xiàn)方式是:在客戶操作系統(tǒng)(即虛擬機(jī)系統(tǒng))和原始硬件(即物理機(jī)硬件資源)之間插入一個(gè)虛擬機(jī)監(jiān)視器VMM(Virtual Machine Monitor),又稱為Hypervisor,通過(guò)VMM在虛擬機(jī)和原始硬件之間進(jìn)行協(xié)調(diào)。文獻(xiàn)指出,VMM實(shí)時(shí)探測(cè)虛擬機(jī)發(fā)出的指令流,動(dòng)態(tài)識(shí)別特權(quán)或敏感指令(Ring 0),一旦識(shí)別出這些指令,VMM就攔截它們,通過(guò)二進(jìn)制轉(zhuǎn)譯(VMWare的BT技術(shù))來(lái)模擬這些指令的行為,向原始硬件發(fā)出指令。當(dāng)然,如果虛擬機(jī)發(fā)出的只是用戶級(jí)的指令(Ring 3),VMM不攔截,因?yàn)槎M(jìn)制轉(zhuǎn)譯對(duì)性能將產(chǎn)生巨大負(fù)荷,而非關(guān)鍵指令并不控制硬件或威脅系統(tǒng)安全,因此可以放行。這種策略在提升效率的同時(shí),也保障了安全。
全虛擬化的典型代表就是VMWare vSphere。它的優(yōu)點(diǎn)是操作系統(tǒng)無(wú)需任何修改就可以直接運(yùn)行,問(wèn)題是二進(jìn)制轉(zhuǎn)譯工作往往造成性能大幅下降,而且目前尚未找到加速二進(jìn)制轉(zhuǎn)譯的好辦法。
1.2 半虛擬化
并行虛擬化(paravirtualization)慣稱為半虛擬化。它與全虛擬化的共同點(diǎn)是,都采用一個(gè)VMM實(shí)現(xiàn)對(duì)底層硬件的共享訪問(wèn)。但是半虛擬化將許多與虛擬化相關(guān)的代碼植入了虛擬機(jī)操作系統(tǒng),于是不再需要VMM捕獲特權(quán)指令和二進(jìn)制轉(zhuǎn)譯。半虛擬化為每個(gè)虛擬機(jī)提供一個(gè)特殊的API,但要求在客戶操作系統(tǒng)中進(jìn)行大量修改。文獻(xiàn)[4]描述道,有個(gè)智能編譯器協(xié)助客戶操作系統(tǒng)通過(guò)Hypercall來(lái)調(diào)用那些無(wú)法虛擬化的OS特權(quán)指令。傳統(tǒng)的x86處理器提供四級(jí)指令環(huán):Ring 0—3。環(huán)數(shù)越低,表示執(zhí)行的指令權(quán)限越高。OS負(fù)責(zé)管理硬件和特權(quán)指令在Ring 0執(zhí)行,而用戶級(jí)的應(yīng)用程序只在Ring 3執(zhí)行。
雖然并行虛擬化可降低負(fù)荷,提升虛擬化性能,但它也會(huì)導(dǎo)致其它問(wèn)題。首先,它的兼容性較差,比如像Windows系統(tǒng)就不支持OS核心的修改;其次,維護(hù)半虛擬化可能需要大幅修改OS核心,造成維護(hù)成本高企;最后,半虛擬化的性能會(huì)因工作負(fù)載的變化而產(chǎn)生極大差異。與全虛擬化相比,半虛擬化簡(jiǎn)單切實(shí),它提供了與未經(jīng)虛擬化的系統(tǒng)更接近的良好性能。如果大量采用XenLinux系統(tǒng)效果最佳。
值得一提的是,在Xen和微軟Hyper-V中,都引入了一個(gè)輔助VMM進(jìn)行驅(qū)動(dòng)和虛擬化輔助管理的虛擬機(jī),它的權(quán)限和安全級(jí)別都要高于其余普通的虛擬機(jī),它們都是在VMM啟動(dòng)之后,先于其余普通虛擬機(jī)加載啟動(dòng)的,否則無(wú)法輔助VMM提供虛擬化服務(wù)。VMM將許多輔助管理功能剝離到該虛擬機(jī)中,因此使得自己瘦身。VMM只包含服務(wù)器虛擬化最核心的部分,這也使得VMM的性能和安全性同時(shí)得到提升。這種虛擬機(jī)在Xen中被定義為Domain0,而在Hyper-V中則定義為父分區(qū)。尤其是Hyper-V獨(dú)特的技術(shù)實(shí)現(xiàn)方式,其VMM代碼量小到僅有幾百K字節(jié)。
從功能上來(lái)說(shuō),通常Domain0或父分區(qū)可以被看作就是宿主機(jī)的操作系統(tǒng)。雖然筆者認(rèn)為這一特性并非半虛擬化技術(shù)的必要特征,但它目前在類似半虛擬化模式中運(yùn)用普遍。而在VMWare vSphere之中目前仍未引入這一概念,在VMWare中所有的虛擬化功能全部由VMM提供,因此它的代碼量十分龐大。
以Xen為例,圖2展示了半虛擬化的典型實(shí)現(xiàn)模式。
圖2 基于Xen的半虛擬化實(shí)現(xiàn)模式
1.3 硬件輔助虛擬化
為了簡(jiǎn)化服務(wù)器虛擬化技術(shù),許多硬件廠商不惜投入大量精力和資本來(lái)開(kāi)發(fā)新特性。Intel的VirtualizationTechnology(VT-x)和AMD的AMD-V,在CPU增加了root模式,root模式特權(quán)級(jí)別高于Ring 0(微軟定義為Ring-1)。令VMM運(yùn)行于root模式。于是關(guān)鍵指令能夠在VMM上直接執(zhí)行而無(wú)需進(jìn)行二進(jìn)制轉(zhuǎn)譯,自然也不必像半虛擬化技術(shù)要向虛擬機(jī)種植入部分虛擬化功能。虛擬機(jī)的狀態(tài)保存在VT-x或AMD-V中。但要注意支持Intel VT-x和AMD-V的CPU只是近幾年才在市場(chǎng)上推廣。
盡管硬件輔助虛擬化技術(shù)前景美好,但由于嚴(yán)格的編程模式要求造成VMM到虛擬機(jī)之間的轉(zhuǎn)換損耗嚴(yán)重,目前市場(chǎng)上的硬件輔助虛擬化性能遠(yuǎn)遠(yuǎn)未達(dá)預(yù)期,很多指令運(yùn)行效果反而遜色于VMware的BT技術(shù)。但是硬件輔助虛擬化的未來(lái)發(fā)展前景是值得期待的。
1.4 服務(wù)器虛擬化技術(shù)的融合
上述三種技術(shù)流派能夠在眾多技術(shù)中脫穎而出,自然有它們各自成功的道理。但是隨著不同技術(shù)流派的相互取長(zhǎng)補(bǔ)短,這三種虛擬化流派也大有逐漸融合的趨勢(shì)。比如VMware ESX最初借由BT技術(shù)實(shí)現(xiàn)了全虛擬化,后期也支持硬件輔助虛擬化實(shí)現(xiàn)局部功能,而近期它又提出將部分設(shè)備資源的虛擬化功能通過(guò)半虛擬化方式來(lái)實(shí)現(xiàn);又比如開(kāi)源的Xen早期版本是典型的半虛擬化,它借助Domain0域完成大量虛擬化功能,然而Xen后期版本中又通過(guò)另一種不同于BT的技術(shù)實(shí)現(xiàn)了對(duì)全虛擬化的支持,目前它也支持硬件輔助虛擬化;再如內(nèi)核虛擬機(jī)KVM,目前也融合支持三種虛擬化模式,盡管它是一種獨(dú)特的虛擬化方式,但大致未跳出三種主流技術(shù)的框架;至于微軟的Hyper-V,其虛擬化模式原本就與半虛擬化的Xen很相似,而且它必須借由硬件輔助以達(dá)到性能和安全方面的突破。
萬(wàn)變不離其宗,無(wú)論如何,服務(wù)器虛擬化技術(shù)的首要目的就是要高效靈活地完成不同層面計(jì)算資源的調(diào)配任務(wù),它將包括CPU、內(nèi)存、網(wǎng)絡(luò)、存儲(chǔ)和其它硬件在內(nèi)的各類硬件資源嚴(yán)格地隔離開(kāi)來(lái),從而實(shí)現(xiàn)資源的動(dòng)態(tài)化部署和充分利用,并且防止資源沖突。
2.服務(wù)器虛擬化安全風(fēng)險(xiǎn)解析及解決方案
從上一節(jié)描述的幾種技術(shù)特性分析,服務(wù)器虛擬化技術(shù)除了要防范來(lái)自傳統(tǒng)IT環(huán)境已有的安全威脅,還將面臨由于其自身缺陷所帶來(lái)的新的安全問(wèn)題。與傳統(tǒng)IT環(huán)境安全相對(duì)比,由服務(wù)器虛擬化引起的新安全隱患主要來(lái)自三個(gè)方面:一是VMM的設(shè)計(jì)缺陷;二是虛擬機(jī)之間通訊引起的風(fēng)險(xiǎn);三是虛擬化管理平臺(tái)存在漏洞。針對(duì)來(lái)自這些方面的風(fēng)險(xiǎn),目前有一部分風(fēng)險(xiǎn)已經(jīng)有了成熟的防范措施,而另一些還需繼續(xù)研發(fā)出有效措施。
2.1 VMM設(shè)計(jì)缺陷
當(dāng)前虛擬機(jī)系統(tǒng)的安全機(jī)制,都是建立在假設(shè)VMM完全安全可信的前提之上的,遺憾的是在幾種服務(wù)器虛擬化實(shí)現(xiàn)技術(shù)中,VMM的安全性并未獲得增強(qiáng)的防護(hù)能力。VMM的設(shè)計(jì)過(guò)程中確實(shí)存在一些漏洞可供攻擊者利用,此外VMM內(nèi)部的安全措施無(wú)法識(shí)別和阻止來(lái)自外部的篡改和替換。例如,虛擬機(jī)逃逸攻擊(VM Escape)就是對(duì)于VMM安全漏洞的利用,如果入侵者獲得VMM的訪問(wèn)權(quán)限,可直接對(duì)其他虛擬機(jī)進(jìn)行攻擊,假如入侵者關(guān)閉了VMM,將導(dǎo)致宿主機(jī)上所有虛擬機(jī)關(guān)閉。
目前針對(duì)VMM的攻擊途徑有兩種:一是通過(guò)應(yīng)用程序接口(API)攻擊,操控一臺(tái)虛擬機(jī)向VMM發(fā)出請(qǐng)求,VMM缺乏安全信任機(jī)制來(lái)判斷虛擬機(jī)發(fā)出的請(qǐng)求是否經(jīng)過(guò)認(rèn)證和授權(quán)。二是通過(guò)網(wǎng)絡(luò)對(duì)VMM進(jìn)行攻擊,如果網(wǎng)絡(luò)配置有缺陷,缺乏配套的安全訪問(wèn)控制,入侵者就可能連接到VMM的IP地址;即使入侵者無(wú)法暴力破解VMM的登陸口令,但是依然可以發(fā)動(dòng)拒絕服務(wù)攻擊,如果VMM資源耗盡,那么運(yùn)行在其上的所有虛擬機(jī)也將宕機(jī)。此外管理人員還無(wú)法通過(guò)網(wǎng)絡(luò)連接VMM,只能重啟VMM和上面所有的虛擬機(jī)。
針對(duì)上述VMM設(shè)計(jì)缺陷造成的虛擬化安全風(fēng)險(xiǎn),目前的主要對(duì)策是結(jié)合以下兩種手段:①針對(duì)API攻擊防范的思路,是將可信計(jì)算術(shù)與虛擬化技術(shù)結(jié)合,構(gòu)建可信虛擬化平臺(tái),形成完整的信任鏈,允許同時(shí)運(yùn)行不同安全等級(jí)的應(yīng)用。宿主機(jī)應(yīng)選用具有可信計(jì)算平臺(tái)安全模塊的服務(wù)器。所謂可信平臺(tái)模塊(Trusted platform module,TPM)定義了一套安全規(guī)格,TPM是服務(wù)器主板上的一塊安全芯片,它能抵抗軟件攻擊,從而可以作為系統(tǒng)的可信根。TPM提供包括密鑰生成,加密,解密,簽名,安全Hash運(yùn)算,以及隨機(jī)數(shù)生成等功能,芯片內(nèi)部的少量的安全存儲(chǔ)空間,可以存儲(chǔ)私鑰和對(duì)稱密鑰等敏感信息。通過(guò)虛擬化TPM模塊獲得每臺(tái)虛擬機(jī)的vTPM[7],再與VMM和宿主機(jī)、虛擬機(jī)之間可以構(gòu)建完善的信任鏈,保障VMM不受惡意代碼的API攻擊。值得一提的是,從安全戰(zhàn)略角度考慮,如果完全采用國(guó)外的TPM,我國(guó)安全體系的控制權(quán)就將落入他人之手。好在我國(guó)和國(guó)際上其他組織幾乎是同步進(jìn)行可信計(jì)算平臺(tái)的研究,其中最核心的密碼技術(shù)完全采用我國(guó)自主研發(fā)的密碼算法和引擎,我國(guó)稱之為可信密碼模塊(Trusted Cryptography Module,TCM),我們也可以將TCM虛擬化成vTCM,供虛擬機(jī)使用。②虛擬化平臺(tái)中的每臺(tái)物理機(jī)上的VMM必須嚴(yán)格分配不同的Vlan子網(wǎng),實(shí)現(xiàn)網(wǎng)絡(luò)的邏輯隔離,只有處于特權(quán)級(jí)別的虛擬化平臺(tái)管理機(jī),才可以通過(guò)防火墻訪問(wèn)控制策略來(lái)實(shí)現(xiàn)對(duì)平臺(tái)中所有VMM進(jìn)行監(jiān)控管理。
2.2 虛擬機(jī)通訊風(fēng)險(xiǎn)
服務(wù)器虛擬化之后,與傳統(tǒng)服務(wù)器環(huán)境相比,網(wǎng)絡(luò)格局的變化相當(dāng)大,相應(yīng)地產(chǎn)生了許多安全問(wèn)題。傳統(tǒng)IT環(huán)境中的一些有效安全措施,一旦移植到服務(wù)器虛擬化網(wǎng)絡(luò)環(huán)境中就容易出現(xiàn)水土不服現(xiàn)象。
。1)網(wǎng)絡(luò)安全防護(hù)困難。服務(wù)器虛擬化之前?梢杂梅阑饓澐侄鄠(gè)安全域,對(duì)不同安全級(jí)別的服務(wù)器采用不同策略的安全管理。理論上講,嚴(yán)密的網(wǎng)絡(luò)安全隔離可以限制一臺(tái)受到攻擊的服務(wù)器將危害向外蔓延。但是自從有了服務(wù)器虛擬化技術(shù)之后,寄居于同一臺(tái)宿主機(jī)的所有虛擬機(jī)只通過(guò)一個(gè)共享網(wǎng)卡與外部網(wǎng)絡(luò)通信。這就造成安全問(wèn)題極易擴(kuò)散的隱患。因此傳統(tǒng)的防火墻部署方式和安全域的劃分模式有必要大幅改進(jìn)。
此項(xiàng)困難的解決思路是:在Vlan基礎(chǔ)上嚴(yán)格設(shè)置安全域,這種安全域必須按照安全級(jí)別的區(qū)別和虛擬機(jī)用戶區(qū)別兩個(gè)維度進(jìn)行劃分(在云計(jì)算中必須如此)。采用分布式防火墻實(shí)現(xiàn)虛擬機(jī)之間通訊的安全訪問(wèn)控制,甚至通過(guò)VPN通訊。但若要實(shí)現(xiàn)虛擬機(jī)在異地?cái)?shù)據(jù)中心的遷移和漂移,那么防火墻策略如何隨著虛擬機(jī)的遷移而調(diào)整,也需要有解決方案。目前CISCO公司基于其Nexus系列交換機(jī)和分布式防火墻已發(fā)布了完整的解決方案,但該方案需完全采用CISCO公司的產(chǎn)品和協(xié)議,投資成本高昂,并非局部性的升級(jí)部署可以實(shí)現(xiàn)。
。2)VM Hopping攻擊。一些虛擬化技術(shù)為了方便應(yīng)用且提高性能,虛擬機(jī)之間的通訊可以通過(guò)共享內(nèi)存交換方式進(jìn)行,但這又制造了一個(gè)虛擬機(jī)之間的通訊風(fēng)險(xiǎn)。入侵者可以通過(guò)原本掌握的某臺(tái)虛擬機(jī)A監(jiān)控到在同一宿主機(jī)H上的另一臺(tái)虛擬機(jī)B,當(dāng)入侵者劫持了虛擬機(jī)B后,還可能以B為跳板,再以同樣方式繼續(xù)入侵其他虛擬機(jī)。入侵者甚至可以直接劫持宿主機(jī)H,從而完全控制同一宿主機(jī)上所有其他虛擬機(jī)的運(yùn)行。這一攻擊過(guò)程就叫做VM Hopping。一旦宿主機(jī)H的操作系統(tǒng)訪問(wèn)權(quán)限被劫獲,后果將不堪設(shè)想。
防范這一問(wèn)題最好的辦法,仍然是采用具有TPM和TCM的服務(wù)器構(gòu)建可信虛擬化平臺(tái),不過(guò)在不支持這些安全可信模塊的原有服務(wù)器上就無(wú)能為力了。
。3)拒絕服務(wù)(DoS)攻擊。此外還有一種服務(wù)器虛擬化環(huán)境中特有DoS危害擴(kuò)散問(wèn)題。在虛擬化環(huán)境下,資源(如CPU、內(nèi)存、硬盤(pán)和網(wǎng)絡(luò))均由虛擬機(jī)和宿主機(jī)共享。因此,針對(duì)某一臺(tái)虛擬機(jī)A的DoS攻擊不僅可能耗盡A自身的資源,還會(huì)由此傳遞到整個(gè)宿主機(jī)H上所有的資源,造成H上的全部虛擬機(jī)獲取不到資源而無(wú)法正常提供服務(wù)?梢(jiàn)在服務(wù)器虛擬化環(huán)境中的DoS攻擊所造成的傷害影響范圍比傳統(tǒng)IT環(huán)境有所放大。
針對(duì)DoS攻擊,尤其是分布式拒絕攻擊(DDoS),即使在傳統(tǒng)網(wǎng)絡(luò)環(huán)境中也難以徹底應(yīng)對(duì)。但是針對(duì)上述服務(wù)器虛擬化環(huán)境中DoS攻擊受害影響范圍易于擴(kuò)大化的問(wèn)題,仍然可以采用一些手段進(jìn)行限制:VMM或宿主機(jī)操作系統(tǒng)應(yīng)實(shí)時(shí)監(jiān)控虛擬機(jī)的運(yùn)行性能狀況,一旦發(fā)現(xiàn)某臺(tái)虛擬機(jī)CPU或網(wǎng)絡(luò)等利用率過(guò)載,VMM或宿主機(jī)操作系統(tǒng)可以懷疑該虛擬機(jī)受到DoS或其它異常攻擊,它們有權(quán)切斷受攻擊虛擬機(jī)相應(yīng)的硬件資源使用權(quán),從而切斷該虛擬機(jī)將受攻擊影響擴(kuò)散至整個(gè)宿主機(jī)的途徑。
當(dāng)然,這種策略的有效實(shí)施又面臨著另一個(gè)問(wèn)題:即如何防止因錯(cuò)誤懷疑而錯(cuò)誤切斷正常虛擬機(jī)的資源使用權(quán),并且造成不必要的損失。首先這需要VMM或宿主機(jī)系統(tǒng)變得更“智能”,這也許需要基于大量經(jīng)驗(yàn)和歷史數(shù)據(jù)挖掘分析的基礎(chǔ)上做出判斷;其次對(duì)于重要業(yè)務(wù)應(yīng)用的虛擬機(jī)應(yīng)該部署多臺(tái)負(fù)載均衡,或者部署容錯(cuò)服務(wù)器等。當(dāng)然這些實(shí)現(xiàn)方法大幅增加了技術(shù)難度和投資成本。
2.3 管理平臺(tái)漏洞
(1)遠(yuǎn)程管理漏洞。此外,各種服務(wù)器虛擬化軟件都要通過(guò)網(wǎng)絡(luò)上的一個(gè)遠(yuǎn)程管理平臺(tái)來(lái)管理虛擬機(jī)。例如VMWare有VCente,微軟有SCVMM。這些控制臺(tái)也可常會(huì)引起一些安全風(fēng)險(xiǎn),例如管理平臺(tái)的自助WEB服務(wù)系統(tǒng)就可能引起跨站腳本攻擊、SQL注入等傳統(tǒng)風(fēng)險(xiǎn)。攻擊者一旦獲取了管理平臺(tái)的管理權(quán)限,那么即便他未掌握平臺(tái)中虛擬機(jī)的登陸口令,也可以直接在管理平臺(tái)中關(guān)閉任意一臺(tái)虛擬機(jī)。防范這一問(wèn)題的思路是:嚴(yán)格控制管理平臺(tái)的訪問(wèn)權(quán)限控制,若服務(wù)器虛擬化管理平臺(tái)支持用戶自助式管理服務(wù),應(yīng)關(guān)閉此項(xiàng)服務(wù)。用戶自助式服務(wù)最多只提供虛擬機(jī)資源申請(qǐng)單提交功能,而不允許普通用戶通過(guò)服務(wù)器虛擬化管理平臺(tái)的任何遠(yuǎn)程管理入口登陸虛擬機(jī)。管理平臺(tái)的權(quán)限應(yīng)該通過(guò)雙因素認(rèn)證系統(tǒng)綁定到管理員的身份上。
。2)遷移攻擊和副本離線破解。出于高可用性的設(shè)計(jì)考慮,主流的服務(wù)器虛擬化軟件及其管理平臺(tái)均支持虛擬機(jī)的遷移。攻擊者如果控制了管理平臺(tái)的管理權(quán)限,就可以在線地將虛擬機(jī)從一臺(tái)宿主機(jī)移動(dòng)到另一臺(tái)上。由于虛擬機(jī)的內(nèi)容是以特定的鏡像文件格式存儲(chǔ)的,當(dāng)虛擬機(jī)被遷移的過(guò)程中,虛擬機(jī)或虛擬磁盤(pán)的鏡像文件將被重新創(chuàng)建,攻擊者借此機(jī)會(huì)可以替換原虛擬機(jī)的配置文件和參數(shù)特性。此外,攻擊者還可能通過(guò)網(wǎng)絡(luò)復(fù)制出某臺(tái)虛擬機(jī)的鏡像文件。一旦得到完整的鏡像文件,攻擊者可以將其導(dǎo)入自己的虛擬化平臺(tái),擁有充足的時(shí)間離線攻克其中的安全設(shè)定,包括破解登陸口令,提取通信密鑰,獲取所有重要信息等。由于該鏡像文件只是在線虛擬機(jī)的一個(gè)副本,追蹤和防范此類威脅是極其困難的。
防范措施:此漏洞的受攻擊的情況與遠(yuǎn)程管理漏洞表現(xiàn)不同,但它們的解決辦法基本一致,此處不重復(fù)。
。3)數(shù)據(jù)安全風(fēng)險(xiǎn)。作為云計(jì)算的基礎(chǔ),服務(wù)器虛擬化技術(shù)必須關(guān)注數(shù)據(jù)的安全問(wèn)題,包括數(shù)據(jù)的私密性、完整性和可用性等。由于不同的虛擬機(jī)的全部數(shù)據(jù)存儲(chǔ)在一個(gè)共享的物理存儲(chǔ)設(shè)備中,如何保證嚴(yán)格的數(shù)據(jù)隔離就顯得尤為重要。
另外,在服務(wù)器虛擬化環(huán)境中。數(shù)據(jù)殘留問(wèn)題更有可能會(huì)無(wú)意泄露敏感信息。由于虛擬化平臺(tái)中的虛擬機(jī)可以執(zhí)行新建、刪除和遷移等操作,這些功能雖然為平臺(tái)的管理帶來(lái)的巨大的便利性,也為容災(zāi)備份和高可用性提供了多種實(shí)現(xiàn)手段,但是所有這些操作都會(huì)留下數(shù)據(jù)痕跡。因?yàn)橐慌_(tái)虛擬機(jī)的數(shù)據(jù)曾經(jīng)存儲(chǔ)過(guò)的空間允許被釋放并再分配給其他虛擬機(jī)使用,如果不采用特別措施,服務(wù)器虛擬化平臺(tái)很難保證存儲(chǔ)資源被重新分配之后,敏感信息是否依然有殘留。
防范上述數(shù)據(jù)安全風(fēng)險(xiǎn)的關(guān)鍵技術(shù)就是數(shù)據(jù)加密。加密技術(shù)已經(jīng)非常成熟,比如對(duì)稱密碼技術(shù)、非對(duì)稱密碼技術(shù)等。數(shù)據(jù)加密還可以結(jié)合數(shù)據(jù)切分、散列存儲(chǔ)等技術(shù)一起使用,這樣一來(lái)即便是虛擬化平臺(tái)管理員,也無(wú)法獲取虛擬機(jī)得完整數(shù)據(jù),更無(wú)法破解其中的內(nèi)容。經(jīng)過(guò)以上技術(shù)處理,數(shù)據(jù)殘留問(wèn)題也就不成為問(wèn)題了,出于謹(jǐn)慎考慮,用戶只需對(duì)于保存數(shù)據(jù)的解密秘鑰的極小存儲(chǔ)空間進(jìn)行多次擦除操作即可(據(jù)說(shuō)連續(xù)7次擦除操作即可保證數(shù)據(jù)不可恢復(fù))。
。4)虛擬機(jī)補(bǔ)丁更新管理困難。虛擬機(jī)的補(bǔ)丁管理存在以下困難:采用虛擬化管理軟件提供的虛擬機(jī)復(fù)制克隆等方式,很容易為虛擬機(jī)提供一個(gè)副本鏡像,作為冷備份存于異地離線庫(kù)中,當(dāng)需要時(shí)便可利用啟用異地離線庫(kù)中存儲(chǔ)的虛擬機(jī)實(shí)現(xiàn)災(zāi)難恢復(fù)。但是這臺(tái)用于災(zāi)備的虛擬機(jī)的殺毒軟件、系統(tǒng)補(bǔ)丁和應(yīng)用軟件版本均未即時(shí)更新到最新版本,一旦啟用必然出現(xiàn)各種缺陷,這樣的虛擬機(jī)在正式啟用后很可能會(huì)引發(fā)安全問(wèn)題。
解決方案:目前微軟和VMWare都擁有虛擬機(jī)補(bǔ)丁自動(dòng)更新功能和離線虛擬機(jī)服務(wù)工具,如果使用的是這些廠商的虛擬化軟件,可以直接啟用功能模塊,F(xiàn)在問(wèn)題為如何合理制定補(bǔ)丁的自動(dòng)更新任務(wù)表,既保證所有虛擬機(jī)的補(bǔ)丁最新,又不對(duì)平臺(tái)網(wǎng)絡(luò)造成太大負(fù)擔(dān)。
。5)快照和狀態(tài)回滾漏洞。這是一項(xiàng)虛擬機(jī)特有的管理和備份方式,對(duì)于系統(tǒng)和數(shù)據(jù)的備份和恢復(fù)起到重要作用,但卻給入侵者提供了一種攻擊的新方法。入侵者可能將虛擬機(jī)恢復(fù)到過(guò)去某個(gè)時(shí)間節(jié)點(diǎn)的狀態(tài),獲取一些已被刪除的敏感信息?赡艿穆┒捶婪端悸罚旱谝荒芟氲降氖侄我廊皇菙(shù)據(jù)加密技術(shù),快照和回滾內(nèi)容經(jīng)過(guò)加密之后,攻擊者想要破解就不那么容易了。此外解密的密鑰必須通過(guò)雙因素認(rèn)證系統(tǒng)綁定到虛擬化平臺(tái)管理員的身份上。經(jīng)過(guò)這些處理之后,入侵者既不能從快照和狀態(tài)回滾存儲(chǔ)的內(nèi)容中獲取信息,也不能通過(guò)回滾到早期狀態(tài)來(lái)惡意破壞虛擬機(jī)正常服務(wù)。
(6)共享剪切版漏洞。許多服務(wù)器虛擬化軟件支持虛擬機(jī)和宿主機(jī)之間的共享剪切板功能,為虛擬化的靈活應(yīng)用提供便利,但這一功能可能造成安全問(wèn)題。解決思路:最簡(jiǎn)單的想法就是直接禁用此項(xiàng)功能。
3.結(jié)語(yǔ)
云計(jì)算的安全問(wèn)題受到許多專業(yè)人士的詬病,作為云計(jì)算的首要基礎(chǔ)核心的服務(wù)器虛擬化技術(shù)首當(dāng)其沖。排除傳統(tǒng)IT環(huán)境中共同存在的安全問(wèn)題,本文只針對(duì)服務(wù)器虛擬化技術(shù)中存在的安全風(fēng)險(xiǎn)進(jìn)行逐項(xiàng)探討,并給出相應(yīng)的對(duì)策。文中所述各項(xiàng)的安全風(fēng)險(xiǎn)的防范措施,要點(diǎn)可以總結(jié)為以下六方面:①采用帶有TPM或TCM的服務(wù)器構(gòu)建可信虛擬化平臺(tái);②采用分布式防火墻實(shí)現(xiàn)多維度的安全域劃分;③增強(qiáng)對(duì)物理機(jī)和虛擬機(jī)資源使用情況的實(shí)時(shí)監(jiān)控;④多方位禁止普通用戶接入服務(wù)器虛擬化平臺(tái)的任何管理接口;⑤數(shù)據(jù)加密技術(shù)的充分利用;⑥增強(qiáng)虛擬機(jī)補(bǔ)丁管理能力。服務(wù)器虛擬化的安全問(wèn)題顯然不止于此,新的漏洞還將不斷被挖掘出來(lái),安全風(fēng)險(xiǎn)防范措施必須與時(shí)俱進(jìn),不斷完善。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:服務(wù)器虛擬化安全風(fēng)險(xiǎn)防范措施
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839513393.html