Hyper-V安全威脅靠邊站 安全配置不難辦
談到IT安全,很多人覺(jué)得廠商對(duì)此最感興趣,還有一些人則非常謹(jǐn)慎。IT專業(yè)人士已經(jīng)意識(shí)到虛擬化又給他們?cè)黾恿艘粋€(gè)潛在的攻擊面。不過(guò),雖然總會(huì)發(fā)現(xiàn)新的攻擊源,但虛擬環(huán)境還是建立在安全的基礎(chǔ)之上。
在這種情況下,我們最大的敵人可能就是我們自己。雖然惡意軟件的共同特征仍然是依靠已知攻擊,而最常見(jiàn)的惡意攻擊通常是利用用戶的行為危及他們自己的安全。作為虛擬化管理員,我們需要更多安全配置來(lái)減少這種情況的發(fā)生。
真實(shí)世界的虛擬層攻擊
如果你認(rèn)為虛擬機(jī)攻擊只不過(guò)是一個(gè)概念,那讓我們看一下VMware的漏洞(CVE - 2009- 1244),這個(gè)漏洞在2009年首次公布。黑客可以通過(guò)攻擊一個(gè)虛擬機(jī)進(jìn)而擺脫內(nèi)置的虛擬安全限制,并取得虛擬主機(jī)的控制權(quán)。雖然這個(gè)漏洞迅速被修補(bǔ),但它仍然是一種可用攻擊。
另外一個(gè)有名的攻擊是通過(guò)虛擬機(jī)的虛擬總線對(duì)沒(méi)有打過(guò)補(bǔ)丁的Windows Server 2008或者R2的Hyper-V主機(jī)進(jìn)行服務(wù)攻擊。微軟通過(guò)MS10-102修復(fù)了這個(gè)漏洞。
對(duì)Hyper-V影響重大的配置考量
雖然許多IT部門(mén)都很注重服務(wù)器的補(bǔ)丁管理,但是給虛擬主機(jī)打補(bǔ)丁卻很痛苦。讓所有虛擬機(jī)離線,或甚至是將它們轉(zhuǎn)移到另一個(gè)Hyper-V的群集成員中,這都非常耗時(shí), 而且我經(jīng)常發(fā)現(xiàn),它們?cè)谫Y源過(guò)量使用時(shí)會(huì)無(wú)法完成。把虛擬層看作是硬件雖然可以取得短期的穩(wěn)定,但實(shí)際上它卻產(chǎn)生了一個(gè)潛在的安全漏洞,所以虛擬層的補(bǔ)丁管理是至關(guān)重要的。
攻擊和最新的補(bǔ)丁是明顯要關(guān)心的事,但是此刻也許是你最不需要擔(dān)心的,因?yàn)檎嬲槍?duì)虛擬層的代碼攻擊相對(duì)來(lái)說(shuō)并不常見(jiàn)。管理員們經(jīng)常假設(shè)一些可能不存在的某種級(jí)別的安全或隔離,并且為了減輕虛擬機(jī)的日常管理負(fù)擔(dān)而忽略了一些警告和最佳實(shí)踐。這些錯(cuò)誤的選擇往往很快便被忘記。但是,當(dāng)你的系統(tǒng)受到攻擊時(shí),你就會(huì)意識(shí)到了。
讓我們把關(guān)注的焦點(diǎn)放在微軟的Hyper-V上,為了減少攻擊面,我們需要在系統(tǒng)初始安裝時(shí)就采取一些關(guān)鍵的步驟。首先是虛擬網(wǎng)絡(luò)設(shè)置。虛擬層上承載了很多虛擬交換機(jī),使用虛擬主機(jī)上的網(wǎng)卡可以讓這些虛擬交換機(jī)用各種方式連接到物理層。一旦配置錯(cuò)誤,這些虛擬連接就可能導(dǎo)致嚴(yán)重的問(wèn)題。
如果你把你的管理網(wǎng)絡(luò)分給來(lái)賓虛擬機(jī),攻擊向量會(huì)允許一臺(tái)虛擬機(jī)訪問(wèn)Hyper-V管理操作系統(tǒng),如果得到正確的授權(quán),還可以訪問(wèn)Hyper-V主機(jī)和設(shè)置或其它虛擬機(jī)。默認(rèn)情況下,該選項(xiàng)是關(guān)閉的。但是為了解決多臺(tái)機(jī)器管理或是網(wǎng)絡(luò)接口卡(NIC)可用性有限的問(wèn)題,很多管理員又啟用了該選項(xiàng)。啟用這個(gè)設(shè)置會(huì)是個(gè)安全隱患,因?yàn)槟憧梢詮乃杭娜我慌_(tái)虛擬機(jī)來(lái)攻擊這個(gè)管理系統(tǒng)。因此,對(duì)專有的管理網(wǎng)絡(luò)要使用物理網(wǎng)絡(luò)適配器,千萬(wàn)不要把這些NIC分給虛擬機(jī)流量。
你也可以配置Hyper-V來(lái)識(shí)別VLAN,以便在邏輯上隔離來(lái)自不同虛擬機(jī)的流量。雖然這個(gè)方法很妙,可以將不同的VLAN混合并匹配到一臺(tái)物理機(jī)或集群主機(jī)上的單個(gè)物理網(wǎng)卡上,但這并不能真正地提高安全性。從表面上看,如果不從網(wǎng)絡(luò)層配置訪問(wèn)規(guī)則和路由的話,不同VLAN的虛擬機(jī)之間是無(wú)法通訊的。但實(shí)際上,通往每個(gè)虛擬機(jī)的所有數(shù)據(jù)都經(jīng)過(guò)這塊物理網(wǎng)卡,這讓黑客攻擊VLAN成為可能。因此,適用于物理環(huán)境的規(guī)則也適用于虛擬環(huán)境。
這也引出了我的下一觀點(diǎn):不要將不同安全級(jí)別的虛擬機(jī)放在同一臺(tái)虛擬主機(jī)上。你和IT部門(mén)對(duì)每臺(tái)服務(wù)器都會(huì)有一些安全要求。例如,在一個(gè)非軍事區(qū)(DMZ)的Web服務(wù)器的安全級(jí)別要比內(nèi)部的文件服務(wù)器低。如果你認(rèn)為面向互聯(lián)網(wǎng)訪問(wèn)的WEB服務(wù)器比內(nèi)部文件服務(wù)器的風(fēng)險(xiǎn)更高,就不應(yīng)該把這些服務(wù)器同時(shí)放在一臺(tái)虛擬主機(jī)上或者將它們放在同一臺(tái)虛擬主機(jī)的兩個(gè)網(wǎng)絡(luò)中。這是物理環(huán)境的安全規(guī)則,同樣適用于虛擬環(huán)境的另一種情況。
當(dāng)運(yùn)行微軟Hyper-V時(shí),除了在主機(jī)上安裝Hyper-V角色外,其它的什么也不要安裝。管理員常常會(huì)利用現(xiàn)有的服務(wù)器并安裝Hyper- V角色來(lái)獲得該物理服務(wù)器的額外用途。這一想法是好的,但是你不應(yīng)該在主機(jī)上繼續(xù)運(yùn)行其它應(yīng)用。相反,應(yīng)該將應(yīng)用程序遷移到虛擬機(jī)中。攻擊會(huì)利用應(yīng)用程序的代碼漏洞(在大多數(shù)環(huán)境中往往難以跟蹤和修補(bǔ))獲得主機(jī)的訪問(wèn)權(quán),進(jìn)而訪問(wèn)主機(jī)上集群的所有虛擬機(jī)。
我的另一個(gè)建議是為虛擬機(jī)的管理建立一個(gè)帳戶或組并將它與管理主機(jī)的帳戶分開(kāi)。如果發(fā)生攻擊,通往虛擬機(jī)的道路也不會(huì)敞開(kāi)。另外,為了審計(jì)需要,應(yīng)確保每臺(tái)虛擬機(jī)都安裝有Hyper-V的集成服務(wù)(IC)組件。
微軟的Hyper-V擁有許多保護(hù)系統(tǒng)的功能,如地址空間布局隨機(jī)化(ASLR)、用戶模式下運(yùn)行的虛擬處理器和每個(gè)虛擬機(jī)都擁有的虛擬設(shè)備和虛擬總線。通常,我們最大的擔(dān)憂不在虛擬層本身,而在于對(duì)優(yōu)先配置的訪問(wèn)或是對(duì)其它應(yīng)用程序的運(yùn)用。運(yùn)用最佳實(shí)踐來(lái)進(jìn)行補(bǔ)丁更新和網(wǎng)絡(luò)隔離,這能避免你的虛擬環(huán)境遇到更多的服務(wù)器威脅。
【編輯推薦】