文/楊啟倫 (記者) 2010-06-15
利用內含在vSphere的VMsafe API,讓資安產品不但可以提供虛擬機器的防護,同時進一步降低硬體資源的使用,維持服務效能 |
隨著新版伺服器虛擬化平臺vSphere的推出,VMware對於虛擬機器所採行的保護方式也有所改變,利用新加入的VMsafe API,讓第3方的資安廠商開發出專門用於虛擬環境的防護產品。就做法而言,VMsafe的相關產品是透過一臺虛擬設備(Virtual Appliance)的監控,替代原本安裝於各臺虛擬機器常駐的主機型(Host-based)防護產品,提供安全服務,同時降低防護產品對於 vSphere伺服器的資源使用,維持或者提高虛擬機器的服務效能。 透過3種API,提供不同層級的防護 根據VMware網站的資料,所有版本的vSphere,及4.0版本後的ESXi,皆已針對VMsafe提供支援。VMsafe一共包含 vCompute(CPU/Memory)、vNetwork Appliance(DVFilter),及Virtual Disk Development Kit(VDDK)等3種API,分別提供不同層級的防護服務。 vCompute vCompute保護的對象為虛擬機器的記憶體及處理器(vCPU),可防止惡意程式利用應用程式的漏洞,執行緩衝區溢位等攻擊,致使虛擬機器遭到破壞。 根據VMware原廠資料的說法,這個API的控管深度,可達虛擬機器的BIOS,也就是說,當虛擬機器啟動後,整個環境便能受到防護軟體的監控,進一步降低虛擬機器遭受攻擊的可能性。 vNetwork Appliance 多數的相關產品都是透過此一API提供服務,因此可以將它視為VMsafe的典型應用。vNetwork Appliance的實作方式分為Fast Path,及Slow Path等2種,它們都需要整合Hypervisor層當中的原生虛擬交換器,或者是第3方廠商推出的虛擬交換器產品,例如Cisco的Nexus 1000V,才能提供服務。 其中,Fast Path在架構上與虛擬交換器(vSwitch)完全整合,當防護產品所在的虛擬設備與VMsafe完成介接後,虛擬交換器即變成一臺虛擬的防護設備。就 功能而言,Fast Path是在虛擬交換器轉發封包的同時,執行簡單的檢測,所以對於虛擬網路的效能不會有太大影響,換句話說,也就是具備較好的流量處理效能。以業界現有的 產品而言,Altor的Virtual Firewall(VF)就是一款採用Fast Path做法的虛擬防火牆,除了介接VMsafe的運作模式外,該款產品也支援橋接模式,將虛擬設備跨接在2臺虛擬交換器中間,做為網路型的防火牆使用, 在這種架構下,不僅是新版的vSphere/ESXi 4.0,連舊版的ESX也可以部署該款產品。 相對於Fast Path,Slow Path可以進行深層的封包檢測,當產品部署完成後,虛擬交換器會將進、出虛擬交換器的封包,轉送到虛擬設備做檢查,確認為正常封包後就會放行通過。 而就現有的產品來說,除了趨勢的Deep Security 7.0外,像是先前推出網路型虛擬IPS產品Virtual Security Appliance(VSA)的Reflex System,也有整合VMsafe的IPS產品,稱之為vTrust。 Virtual Disk Development Kit VDDK的功能以病毒防護為主,透過這個API,虛擬設備便能將其他虛擬機器的VMDK檔,掛載成為本機磁碟,在離線狀態下,掃描虛擬機器內部的所有檔案。 以趨勢在2009年下半推出的防毒軟體Core Protection for Virtual Machines為例,對於開機狀態中的虛擬機器,產品會先進行一次快照(Snapshot),然後針對快照檔當中的內容做離線掃描,避免全系統檢測的動 作,影響到虛擬機器的服務效能。 VDDK本身不具備即時掃描的功能,此一部份需要由廠商自行開發掃描引擎,以安裝檔的型式部署到虛擬機器。 部署前需妥善規畫、測試 就實際部署這類型產品測試的經驗來說,vNetwork Appliance類型的VMsafe產品,需要在vSphere/ESXi伺服器安裝一支由廠商開發的驅動程式,以便讓虛擬設備介接VMsafe API。而在安裝驅動程式之前,必須將原本運作其上的虛擬機器全部關閉,或者透過VMotion轉移到同一網路當中的其他虛擬平臺伺服器,以確保重要服務 的不中斷,而最後一道流程,才是以匯入虛擬機器的方式,部署虛擬設備。 VMsafe對於絕大多數的企業,是全新的技術應用,中間涉及網路、儲存等多個領域,因此,實際部署時,必須詳加規畫,才能在提供防護之餘,也不 致過度改變原本的運作環境。另外,根據網路上的一些消息來源指出,某些VMsafe的相關產品目前仍然存在一些使用上的問題,重則可能毀損虛擬環境原有的 設定,因此,也不應該直接將產品部署在正式提供服務的伺服器,而需另外建置測試環境。文⊙楊啟倫 |