天天看點

《虛拟化安全解決方案》一1.2 虛拟環境的威脅

本節書摘來自華章出版社《虛拟化安全解決方案》一書中的第1章,第1.2節,作者[美]戴夫·沙克爾福(dave shackleford),更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視

為了恰當評估使用包括虛拟化技術在内的任何類型的資訊技術對基礎設施産生的風險安全和運作團隊必須評價和估計技術中可能存在的漏洞,以及發現這些漏洞對虛拟環境産生的威脅和對安全事件産生的潛在影響。風險評估過程的結果往往涉及打更新檔和配置系統,限制網絡資源通路,限制可以通路管理平台和虛拟機的使用者和其他控制和程序。為了紮實掌握虛拟環境的風險,了解為什麼從2006年開始安全和合規專業人士如此關注虛拟化,就需要知曉多種威脅行為的表現。

所有it環境都面臨各種威脅,從本質上偶發的威脅,如員工的錯誤,到更惡意的威脅如内部人士想要竊取資料或者外部攻擊者試圖闖入。虛拟環境面臨與實體基礎設施同樣類型的威脅,但在虛拟環境中威脅可以不同的方式表現。在這部分,我們将介紹一些評估虛拟環境風險時需要考慮的主要威脅。

vm蔓延 虛拟機可以在數秒内完成部署,使得建立未經準許的虛拟機非常容易(例如,短期測試系統)。實時動态建立的虛拟機可能沒有及時地打更新檔,更新或配置。一個暴露的未打更新檔的虛拟機可能被洩露,是以變成環境中的一個漏洞。虛拟機蔓延很常見,尤其在監管程序松散的大型公司。在任何部署虛拟化技術而沒有實行适當的變更、配置、分發等管理過程的環境中,這都是一個主要的、普遍的問題。

虛拟環境中缺乏能見度 許多虛拟網絡環境沒有被充分監控。用于轉發流量到一個獨立的混雜(嗅探)安全或網絡監測傳感器的虛拟交換機在多數環境中的應用仍是例外,許多虛拟網絡還有相當一部分内部流量沒有被外部安全和網絡工具充分監控。并且客戶虛拟機和下層管理程式平台間的流量通常也不被監測,這導緻許多潛在的安全風險。未監控的虛拟網絡環境是非常危險的。你可能忽略離開環境的敏感資料,在虛拟網絡内部發生的攻擊,或可能有助于重塑你的流量管理政策的有價值的性能資料。

沒有保持職責分離 在虛拟化環境中經常缺乏分離管理系統、網絡和應用程式的人的職責。可能需要許多不同的組來管理虛拟機:一個或多個組需要管理真正的虛拟基礎設施,其他組可能需要通路資料庫和存儲元件、第三方插件和其他“活動部件”。誰管理這些任務,它們應該如何配置設定呢?這類問題經常以政治戰争結束,不同的團隊常常不知道他們應該怎樣管理他們的那部分虛拟基礎設施。網絡管理者應該管理虛拟交換機和其他網絡系統,還是應該由虛拟化團隊處理這些?誰應該管理控制台系統比如vmware的vcenter——是windows管理者還是一個專用的虛拟團隊?

對任何一個組授予單向通路權将會帶來巨大的安全風險。給某個管理者太多(或給虛拟機本身和它們的應用程式)權限是虛拟化環境中的另一個重大問題。為特定組的用例定義細粒度角色從管理視角來說是很有挑戰性的,各種虛拟化提供商的産品中的技術控制可能不能充分滿足安全需求。

變更和配置管理是虛拟化組織關注的重要區域,我們将在本書中涵蓋主要的虛拟化産品和平台的廣泛配置細節。

配置細節 對于管理程式可以包含大量設定和選項,包括那些涉及虛拟機管理和監視、安全硬化和鎖定,以及使用者群組與平台互動的部分。

網絡設定 這也可以很複雜,尤其是當它們與外部實體網絡裝置比如交換機和路由器有關時。

安全特性設定 安全特性設定與防火牆、入侵監測和審計控制如登入有關的系統需要特别關注。

任何虛拟化資料中心最重要的目标之一是一緻性,具有為管理程式、虛拟機和兩者之間任何事物定義良好的模闆。随着組織希望從虛拟化向私有雲遷移,一緻性要求将變得更加重要。開發和維護這個水準的均勻性和一緻性對于成功完成私有雲部署不可或缺。

除了純粹的操作威脅,還有許多其他的對于虛拟化技術的威脅已浮出水面,一些更加現實,其他一些則還是假設。

1.?vm-aware惡意軟體

自2006年以來發生的更令人不安的趨勢是vm-aware的惡意軟體爆發,這在許多場合都見過了。不同變種和版本的木馬、蠕蟲、rootkits和其他形式惡意代碼能夠通過檢視記憶體和硬體屬性、記憶體位置、程序和函數的行為,确定它們是否運作在一個實體或虛拟主機上。當這些惡意變體檢測到它們運作在虛拟環境中,它們常常拒絕運作或表現得與在實體主機上不同。因為許多安全專家使用虛拟機來分析惡意軟體,這個惡意軟體當然使這種分析更加困難!

websense實驗室在2007年描述了一種非常個性化的惡意軟體,它不在虛拟機上運作,這絕對僅僅是長期趨勢的開始。你可以從下面的網址獲得更多資訊:

2.?封裝器應用程式

在最近幾年可以看到的另一種趨勢是商用封裝器(壓縮)應用程式的使用,惡意軟體作者使用它壓縮和混淆他們的代碼。其中有些有内建的防虛拟機特性!一個例子是themida,它包含一系列對封裝的代碼的保護措施。關于themida的資訊在下面的網址能找到:

3.?蠕蟲

著名的蠕蟲,比如agobot和phatbot都開始內建反虛拟機技術。一個關于這些蠕蟲的很好的介紹可以在honeynet項目的網站上找到(www.honeynet.org/node/53)。另一個例子是風暴蠕蟲,一個特别讨厭的惡意軟體,從2007年年初流行起來後已經形成了許多變種。它擁有社會工程學政策(反映目前新聞的電子郵件主題行)、p2p僵屍網絡能力和其他許多進階特性。另一個方面,風暴蠕蟲還能檢測其是否運作在虛拟機上。一個關于風暴蠕蟲虛拟機檢測能力的bojan zdrnja的優秀報道能在sans網際網路風暴中心站點找到:

最常讨論的與虛拟機平台相關的安全問題之一是虛拟機逃逸,它屬于一種安全缺口,利用它惡意代碼可以在虛拟機中運作,并能夠“逃逸”到底層的主機上運作。這是安全專業人士的最可怕的噩夢!在一個虛拟機逃逸中,信任區被入侵,通路控制被規避,一旦它發生,esx主機的保密和完整性就受到懷疑。從前,虛拟機逃逸被認為是不可能的,但是今天,多數安全專家認為它是可能發生的,主要原因是已經注意到了非常相關的調用!

在2007年和2008年的大會上,釋出、讨論了幾款允許虛拟機間和虛拟機同底層主機間傳輸資料的工具。這些工具都沒有被歸入虛拟機逃逸的原因是代碼必須運作在虛拟機和主機上工具才能運作正常。一個真正的虛拟機逃逸應獨立于運作在主機上的代碼。人們發現了一些允許相似行為的安全漏洞,可以通過利用使用者應用程式和服務來影響主機。

下面部分讨論安全專家在過去的幾年中所研究的幾種虛拟機逃逸類型的攻擊。

1.?目錄周遊攻擊

迄今報告的多數虛拟機逃逸缺陷與某些類型的目錄周遊攻擊有關。

第一個這種類型的報告在2007年4月由idefense釋出,描述為vmware工作站共享目錄功能相關的問題。由于工作站解釋檔案名的方式問題,惡意使用者能以運作在主機上的vmware工作站使用者的權限從用戶端内部向底層主機寫檔案。intelguardians(現在是inguardians)在華盛頓特區舉行的sansfire 2007大會期間做了以此項研究為基礎的有關虛拟機安全的前沿報告。在這次大會上,tom liston和edskoudis做了一個演講,這讓虛拟機逃逸的概念更加接近現實。他們編寫了幾個工具,用來示範虛拟機逃逸是可能的:

vmchat 這個簡單的“聊天”程式使用vmware管理程式通信信道在使用者虛拟機之間或使用者虛拟機和主機之間互相傳送資訊。程式不需要安裝任何特殊代碼,也不需要利用任何網絡功能。

vmcat 這個工具在vmchat建立的通信信道間發送标準輸入(stdin)和标準輸出(stdout)的簡單輸出。它可用于開辟主機和客戶間的指令行。

vm drag-n-sploit 通過修改用戶端稱為vmwareservice.exe的vmware元件,研究人員能夠監視和改變所有移動通信信道的資料。這使得他們能夠通過vmware工作站内建的“拖放”功能修改從用戶端到主機拖動的資料。他們的示範使用這個功能來建立一個“拖放”漏洞,它能夠從主機發送一個指令行到用戶端。

vmftp 這個工具是當年早些時候發現idefenese共享目錄缺陷的工作漏洞。任何用戶端具有任何等級權限的使用者,都可以讀寫主機,隻要共享目錄可用并且至少一個目錄在客戶虛拟機上共享。

2008年2月,core security(制作core impact滲透測試工具的公司)的研究員在某些版本的vmware工作站、ace和player中發現了一個漏洞,這使得攻擊者能夠本地和遠端浏覽vmware共享目錄功能(在用戶端和主機間共享資源),讀寫底層主機作業系統的任何區域。想了解更多,參考下面的網址:

2.?藍色藥丸

2006年6月,波蘭研究員joanna rutkowska揭開了概念驗證型 (proof-of-concept)惡意軟體“藍色藥丸”的面紗并引起了業界轟動。藍色藥丸本質上是一種木馬程式,通過利用amd處理器内建的svm/pacif?ica虛拟化能力,把windows vista作業系統作為攻擊目标。這使得木馬程式能夠建立惡意虛拟機管理器,然後封裝正在運作的vista作業系統,并虛拟化它!其實,這表示可信的作業系統不再運作在實體硬體之上——它運作在基于處理器的管理器之上,這個管理器具有作業系統内及作業系統之上的每個事物的完全控制。

在rutkowska的網站上有更多關于藍色藥丸的資訊:

rutkowska的聲明稱這個漏洞百分之百不能檢測産生了許多争論——能建立完全無法檢測的惡意軟體嗎?總的來說,多數資訊安全社群不同意。許多頂尖的安全研究人員迎難而上,包括anthony liguori,ibm的軟體工程師,他與xen管理器的開發緊密相關。他就rutkowska的聲明提出質疑,他解釋道,要使封裝作業系統的操作無法檢測需要的不僅僅是“虛拟化它”,而且你必須阻止作業系統“知道”它已經被虛拟化了。這樣做是極端困難的,因為正常計算硬體相對于基于軟體的vmm模拟執行指令的定時是有差別的。對liguori的一個傑出訪談可以在下面的網址找到:

另一組在matasano security的著名安全研究人員挑戰rutkowska,讓她在2007年黑帽大會上使用他們的samsara木馬檢測技術測試她的藍色藥丸。rutkowska拒絕了,安全社群許多其他人指出了許多方式,通過這些方式使用記憶體檢查和指令定時技術可以檢測藍色藥丸。

3.?可信執行技術入侵

在2009年黑帽大會上,rutkowska和她在invisible thing labs的同僚rafal wojtczuk讨論了如何入侵英特爾vpro晶片内建的可信執行技術。根據他們的示範,他們首先找到了英特爾系統軟體中的一個漏洞,緊接着攻擊可信執行技術軟體的缺陷。這使得攻擊者能夠在高度保護記憶體區,如系統管理模式(smm)記憶體或smram中插入代碼。這甚至比環0或者作業系統核心下的硬體管理器程式的權限還高。txt的機制是不檢查這個記憶體的完整性和變化,而是插入的代碼可以通過所有啟動時的安全檢查。rutkowska和團隊在2009年12月發現了另一個基于txt的攻擊方式。更多資訊在下面的網址:

4.?多元安全:虛拟機缺陷的解決方案

2010年5月,北卡羅來納州立大學的研究人員發表了一篇讨論被稱為“多元安全”(hypersafe)的概念驗證型管理程式安全工具和監視技術的論文。通過利用硬體監視管理程式軟體完整性的性能,hypersafe可以確定沒有惡意程式或其他邪惡的逃逸攻擊可以從虛拟機使用者或任何其他宿主修改運作中的管理器平台。本質上,hypersafe監控與管理器有關的關鍵記憶體結構和緩存行為,因而可以,防止任何由記憶體溢出和其他常見的開發方法産生的修改。北卡羅來納州立大學的論文可在下面的網址找到:

虛拟化平台目前還有相當多的漏洞,其中一些公認相當嚴重。

2009年5月和6月早些時候,安全界對免疫力公司釋出的一個稱為cloud burst的工具議論紛紛。kostya kortchinsky,免疫力公司漏洞研究團隊的成員之一,他在cloud burst中整合了概念驗證代碼,該技術利用了2009年4月vmware的缺陷。這個缺陷是關于虛拟機顯示驅動溢出的問題,它使得代碼可以以客戶身份在底層主機上運作。這可能是在現實世界中看到的最接近虛拟機逃逸之類的東西了。

2010年3月,vmware宣布了一系列主要的缺陷,這些缺陷可以影響它的esx和esxi管理程式,從服務控制台核心缺陷到無數在服務控制台内安裝的開源軟體包産生的問題。這些問題可能導緻遠端拒絕服務(denial of seivice,dos)攻擊,代碼執行,權限提升和其他主要的安全問題。總之,對于這類缺陷産生了超過40種的常見缺陷(common vulnerabilities and exposures,cve)入口,所有vmware企業使用者都被敦促盡快打更新檔。

許多漏洞也在xen和hyper-v平台被發現,盡管他們不太轟動,可能是由于vmware占有大部分市場佔有率。想得到更多資訊,參考下面的連結:

繼續閱讀