加入書籤 facebook twiter plurk google Yahoo! My Web
 


雲端虛擬化平台Hypervisor based防護機制

國立高雄第一科技大學資管系副教授/鄭進興

 

前言

近年來在雲端技術蓬勃發展下,為了配合大量運算及機房節能環保的需求,伺服器虛擬化解決方案因此大行其道。但因伺服器虛擬化技術之導入,整體虛擬化系統之建置與網路架構也因此與傳統伺服器之佈署架構產生很大的差異,例如:虛擬化架構中實體伺服器之CPU、記憶體、硬碟空間及網路卡等設備可以邏輯單位方式切割資源給虛擬機來使用。虛擬化技術也產生了虛擬交換器(Virtual Switch)的概念,虛擬交換器是由虛擬平台所模擬,架構於虛擬伺服器之Hypervisor核心層,用以傳送虛擬機之間的網路流量。伺服器虛擬化雖然提升了營運與成本上的效益,但同時也在整體系統資源之運用及網路架構上產生了風險,說明如下:

  • 系統及網路流量管理不易:虛擬交換器的主要功能是提供實體伺服器內的所有虛擬機之間的相互通訊。由於虛擬交換器亦位於同一實體伺服器內,無法經由外部的網路管理系統得知各虛擬機之間的流量傳輸,亦無法對虛擬機間的傳輸流量進行監視與管理。
  • 伺服器效能受到影響:虛擬交換器的效能以及伺服器的網路效能,均取決於可用的CPU資源,提高虛擬化效率會增加伺服器的負載,但伺服器負載增加卻又可能導致網路效能的降低,如何在伺服器的效能和網路的效能間,取得最佳化的組合,是必須正視的議題。
  • 資訊安全風險的產生:導入虛擬化後,因系統架構的改變,產生新的資訊安全風險,因Hypervisor管理所有的虛擬機,如果駭客經由Hypervisor潛在的漏洞成功的攻擊Hypervisor或取得控制權,影響的將會是實體伺服器內的所有虛擬機。
  • 惡意程式的散播:藉由虛擬系統開發商之系統進階功能,感染惡意程式之虛擬機有可能藉由此功能移轉到其他實體伺服器上,進而攻擊或感染其他伺服器上所有的虛擬機。

在一個非虛擬化的資訊中心,每部伺服器都有獨立的作業系統,由作業系統透過實體網路連線,和使用者及其他伺服器連結。在虛擬化環境中,一部實體伺服器內安裝有多部虛擬機,這些虛擬機必須透過虛擬網路的方式來共用實體伺服器的網路連線,並且要能夠彼此間進行通訊連結及資料交換,這就是虛擬交換器。伺服器的虛擬化,使得實體主機原本連接的邊緣交換器(Edge Switch),轉換成為Hypervisor核心層模擬出來的虛擬交換器,虛擬交換器是軟體物件,主要功能為提供虛擬機連接實體網路,以及相互連線的服務。以目前擁有虛擬化資訊中心的架構來說,在伺服器外部會有實體交換器,在Hypervisor內部另外還有一個模擬的虛擬交換器,但這兩個交換器之間的資訊卻非完全透通。對於外部實體的資訊安全設備來說,根本無法完全掌控虛擬機之間宛如黑箱作業封包的交換,難免會形成管理與安全上的極大盲點。因此在虛擬平台中如果還是使用傳統方法佈署端點防護軟體將會造成實體伺服器運作之負擔及資源大量負荷。而且在虛擬交換器中的封包資料是不透明的,無法監看及控管,也因此造成資訊安全上的漏洞。有鑑於此,虛擬伺服器平台提供商VMware提出了VMsafe API技術,使得第三方資訊安全防護廠商可以開發資訊安全系統與之介接,本文探討以架構虛擬伺服器之Hypervisor核心層資訊安全解決方案,並說明以此方法在整體虛擬化架構中的資訊安全防護是切合需求,確實能達成預期目標。

相關技術

虛擬機(VM)之間相互獨立,各自運作其系統並提供服務,而VM之間資料的互相傳遞及溝通是透過軟體所模擬之虛擬交換器來傳送資料,每部VM都有其虛擬出來的網路卡,作為對外溝通的橋樑。透過不同VM的網路卡連到虛擬交換器即可組成一個虛擬網路,如下圖1所示。


圖1:虛擬網路(資料來源VMware)

虛擬交換器除了提供網路流量的交換服務外,也和虛擬機的安全防護息息相關。最為常見的做法,就是透過交換器,將內部網路切割為多個VLAN,由於每個VLAN都是各自分開的廣播網域,當網路型的病毒在內部爆發時,就不能任意透過廣播的方式擴散到所有的虛擬機,只不過此種安全建構方式並不能適合於每個企業或機關的網路環境。此外VMware虛擬交換器的PortGroup功能,也可以算是一種類似的應用,我們可以根據虛擬機的性質,對應到不同的PortGroup,並各自套用不同的交換器設定,而各個PortGroup,還可以指派不同的VLAN ID,便於企業能彈性管理虛擬網路。

但安裝於實體伺服器內的Hypervisor內建的虛擬交換器畢竟為核心層所模擬之交換器,與高階實體網管型交換器的功能及效能畢竟不能相提並論,當實體伺服器內部之虛擬機如爆發病毒感染及廣播風暴時對於異常流量之監控及防護沒有相對應解決方案,如此一來便會對於實體伺服器的硬體效能造成很大的影響。所以,針對虛擬架構保護虛擬網路大致有3種作法如圖2所示,並說明下:


圖2:虛擬網路安全防護架構
(資料來源 Juniper Network)

  • 將虛擬網路切割為多個VLAN,當網路型的病毒在虛擬交換器內部爆發時,就不能任意透過廣播的方式擴散到所有的虛擬機器,此種部署方式也有缺點,因不同單位之網路架構皆不相同,所以不是所有單位皆適用切割VLAN的方式,此架構設定上不夠彈性。
  • 佈署傳統端點防護代理程式(防毒軟體,軟體防火牆等..)安裝於每一部虛擬機器上,保護每一部虛擬機。此種部屬方式之缺點為造成實體伺服器之負載增加,容易造成系統效能不彰的問題。
  • 於實體伺服器之核心層架構安全過濾系統,此架構為本文探討的主軸,基本上能解決以上兩種方式之缺點,但是核心層之安全過濾系統也有可能產生系統異常的疑慮,另外是此安全架構目前尚無開放之自由軟體解決方案,目前皆由虛擬系統開發商與網路安全系統廠商合作開發,所以系統之建置需要採取軟體授權方式來計價。

而VMware VMsafe的運作架構相當簡單,相當於我們在每一台虛擬機前面放置一台安全檢查設備,過濾進出這些虛擬機的所有流量,於是虛擬機就不需要安裝任何的防毒軟體便能得到保護,因此可以省下不少的硬體資源,而實際上,防護系統僅是安裝在VMware ESX/ESXi平台之上的一台虛擬機而己。在未使用VMsafe技術前,傳統的作法就是在每一台虛擬機器上都安裝端點防護軟體,但是在虛擬化的環境下,多台虛擬機累積下來,就可能占用到相當可觀的硬體資源,等於是一部實體主機安裝多套資訊安全軟體的狀況。利用VMware新加入的VMsafe API ,讓第三方的資安廠商開發出專門用於虛擬環境的防護產品,就做法而言VMsafe的相關產品是透過一台虛擬設備(Virtual Appliance)的監控,替代原本安裝於各台虛擬機器常駐的主機(Host-based)防護產品,提供安全服務,同時降低防護產品對於實體伺服器的資源使用,維持或提高虛擬機的服務效能,使用VMsafe架構前後比較如圖3所示。


圖3:VMsafe技術比較圖(資料來源Trend Micro)

VMsafe一共包含vCompute(CPU/Memory)、vNetwork Appliance(DVFilter),及Virtual Disk Development Kit(VDDK)等3種API,分別提供不同層級的防護服務。

系統規劃設計與實驗

因虛擬化平台在整體網路架構已經與傳統之架構有很大的差異,如果還以傳統方式於虛擬平台安裝防毒軟體將會產生以下幾個問題:

  • 資源消耗:因為需要於每部虛擬機上都安裝防毒軟體,每部虛擬機因為安裝了防毒軟體皆會用掉一些虛擬記憶體,如果虛擬機數量增加將會造成實體伺服器資源的消耗。
  • 病毒掃描風暴:當進行Host-Based虛擬機病毒防護的排程掃描或病毒碼更新作業時,因所有虛擬機同時啟動的工作程序會將耗用虛擬平台的資源池的資源,造成實體伺服器的資源耗盡。
  • 病毒防護碼即時更新的差距:因應虛擬機器的離線及複製工作,無法即時將所有虛擬機器的病毒防護碼保持在最新的狀態進而造成虛擬機資訊安全的漏洞,病毒碼也無法維持一致性。
  • 管理的複雜性:因為所有虛擬機皆需要安裝防護軟體,管理人員需要針對每部虛擬機投入管理成本,進而也造成管理上的負擔及複雜度。

因應上述所分析之問題,本文設計建置虛擬伺服器Hypervisor核心層的防護機制,防護機制可以改善上述的問題進而達到下列的目標:

  • 在整個虛擬化平台不管安裝多少虛擬機器,VM至VM或VM至Hypervisor之間的系統及檔案資料都會受到監控,不僅安全性得以確保,各虛擬主機也無須個別安裝額外的防護軟體。
  • 此架構(Agentless-based)替代原本安裝於各台VM常駐的主機型(Host-Based)安全防護產品,提供安全服務,同時降低防護產品對於實體虛擬伺服器的資源使用耗損,維持或者提高虛擬機的服務效能。
  • 不需要在每部 VM內安裝防護軟體便可以直接掃描每部VM的記憶體,因此負荷更低,消耗記憶體更少。舉例來說,VMsafe架構防毒系統如以掃描三十部VM為例,大約只需花70M的記憶體;以傳統方式,每部安裝的話,可能需要耗用數以GB計算的記憶體,並大量佔用實體伺服器的CPU資源。

文系統測試的架構使用兩組VMware ESXi主機並將vGW系統安裝佈署於第一組作為效用實驗組,並實際模擬此架構下之網路攻防環境,並以此測試架構及運行結果驗證Hypervisor Based之安全系統之防禦效果。另一組VMware ESXi則作為效能對照組,在此組架構中分別安裝Hypervisor Based及Host Based架構的防護機制並比較這兩種架構對於實體主機資源運用上的差異,藉以說明Hypervisor Based架構的防護系統效能是優於傳統架構的。關於測試系統架構如圖4所示。系統設計的概念為以架設VMware Vsphere虛擬伺服器系統環境並建構Hypervisor層之資訊安全解決方案,測試所採用的產品為Junnper vGW Virtual Appliance類型的VMsafe產品,需要在vSphere/ESXi伺服器匯入廠商開發的資訊安全虛擬設備(Security VM),以便讓Security VM介接到VMsafe API。而在匯入Security VM之前,建議將原本運作其上的虛擬機器透過VMotion轉移到同一網路當中的其他虛擬平台伺服器,以確保重要服務不中斷,最後才匯入Security VM虛擬機,完成Security VM的佈署。關於Security VM同樣為虛擬機,通常整合為Linux系統,或者其他免費的作業系統做為底層平台,同時部署廠商開發的應用程式,並採用網頁介面的型式提供管理,透過匯入的方式,部署於VMware vSphere的虛擬平台伺服器。


圖4:測試系統架構圖

為了驗證Hypervisor based虛擬防護系統的可用性及有效性,實際建置虛擬防護系統於第一部VMware ESXi伺服器中,針對Hypervisor Based防護系統之防火牆模組,入侵偵測模組,防毒模組作系統測試以驗證系統的有效性及可用性。我們以防護系統架構及資源需求、防毒軟體授權方式做為比較如表1及表2所示,Hypervisor Based層級的防護機制是比較建議佈署於虛擬化架構環境中。

表1:防護系統架構及資源需求比較表

  Host Based Hypervisor Based
對於系統軟體之相容衝突風險 軟體相容衝突風險較高 無軟體衝突風險
對於系統資源的消耗程度 較高 較低
系統部署難度 較高 較低
系統維護難度 較高 較低
系統部署時間及管理成本 較高 較低
網路頻寬需求度 較高 較低
系統可集中管理 可以 可以
可於Hypervisor層防護惡意軟體 不可以 可以

表2:防毒軟體授權方式比較表

  Host Based Hypervisor Based
軟體授權計算方式 以實際安裝軟體之系統數量計價 以實體伺服器數量或實體伺服器之CUP數量計價,不管虛擬機器數量多寡。
實際安裝軟體數量 較多 較少
每年每一端點防毒軟體更新授權價格 NT.1000~NT.2000不等 依各家廠商授權方式不同而不同。

虛擬機器數量增加之授權

成本增加 不變

採取Host Based的防護方式,建置成本會隨著虛擬機器之數量上升而增加,而採取Hypervisor Based防護系統架構,建置成本不會隨著虛擬機器的數量上升而增加,但會依據所選擇之防護系統產品的不同而成本也會不同,而其中的價格差異需再參考各廠商之授權價格來計算,總體而言,如果預估需導入虛擬架構之系統數量較多,採取Hypervisor Based防護機制的方式是比較合乎經濟的考量。

結論

本文於虛擬伺服器中建構Hypervisor核心層的資訊安全解決方案,並實際模擬資訊安全事件來驗證系統的可用性及有效性。

實驗結果證明此架構的防護系統是可有效的運作並實際發揮效用,並根據測試結果證明能較傳統防護架構更有效率並依據系統建置成果,整理結論如下:

  • 現今愈來愈複雜的系統及網路環境,企業組織或機關學校對於佈署各種虛擬化功能的需求,勢必會逐漸增加。在這個趨勢下,在網路安全市場,擁有高效率與安全的要求也相形重要,本文探討的防護系統架構可以提供在導入虛擬化系統時,有別於傳統資訊安全部署的作法,提供另一個更佳的選擇,同時也能為企業帶來因應複雜的虛擬網路所須具備的應用彈性。
  • 本文所建置的防護系統在虛擬架構中,即使內部核心層遭到惡意Hypervisor的攻擊,支援VMSafe架構的Hypervisor-based安全方案,可以將這個傳統資訊安全設備無法察覺的安全威脅偵測出來。對於上層惡意或不安全虛擬機,也可以立即偵測並加以隔離,進而確保其他虛擬機,乃至於實體主機與網路的安全性。而且企業只要在核心層安裝一套Hypervisor-based安全機制即可,不必為每一台虛擬機是否都要安裝安全方案而大傷腦筋,企業將因此可以節省可觀的軟體授權費用支出與管理成本。

為了配合虛擬化的應用,網路設備廠商推動IEEE 802.1Qbg標準,依據這個新標準技術可讓實體之網路交換器取代現在虛擬化平台中虛擬交換器的功能,未來符合此一標準的網路交換器設備,將可以有能力直接做到現在虛擬交換器的功能,虛擬機器的流量,未來將能夠直接將流量導到實體交換器,由實體交換器直接處理這些流量,然後再回傳至需要溝通的虛擬機上,預計未來可以運用此技術標準作為虛擬化平台技術及資訊安全的研究方向。