淺談虛擬化平臺的防病毒保護
本篇文章筆者想和大家再一同探討下虛擬化的防病毒保護。虛擬化的防病毒同虛擬化備份在功能上差異很大,兩種產品負責不同安全層面上的防護,但在技術實現上有很多的相似性。
我們先了解下虛擬化為什么要部署防病毒軟件?
剛接觸虛擬化的用戶往往都存在這樣的一個誤區,“上虛擬化的目的就是為了安全,比如有一個虛擬機感染病毒了,直接通過虛擬機快照就可以回退到歷史狀態,上殺毒軟件沒用,而且給虛擬機部署殺毒軟件會引起虛擬機資源過度消耗,完全沒有必要。”
然而事實并非如此:
筆者以自己親身經歷的兩個事件為大家舉例分析。
案例1:去年,一朋友聯系我,某企業使用的Hyper-v虛擬化平臺,虛擬機磁盤VHD文件遭遇勒索病毒加密,虛擬機無法開機,快照無法使用。分析發現hyper-v宿主機被勒索病毒感染,后接存儲設備內所有VHD虛擬磁盤文件無一幸免。
就在我準備發出這篇文章的時候,寧夏一個客戶就出現的這樣的問題,虛擬機文件被加密。下圖為昨天(5月8號)客戶被感染的截圖。
案例2:某高校,同樣是去年,VMware虛擬化平臺虛擬機,遭遇永恒之藍入侵,其中一臺虛擬機受到攻擊后,通過VMware虛擬網絡向其他虛擬機蔓延,導致虛擬機大面積藍屏,同時虛擬機資源消耗極高,很快將ESXI主機資源耗盡,客戶使用的是VMware桌面虛擬化,發生問題后重置快照數次均無效,短時間內再次發生大面積藍屏。
從上面的兩個案例可以看出,虛擬化病毒的傳播特性是交叉感染方式,交叉感染主要有兩個:一個是通過宿主機底層直接感染虛擬機磁盤文件。另一個是通過虛擬網絡進行傳播。
通過宿主機底層感染虛擬機主要出現在使用半虛擬化架構的虛擬化平臺中,半虛擬化平臺由操作系統+虛擬化層構成(例如:Windows+hyper-v和linux+KVM),病毒可直接感染底層操作系統,從而大面積破壞虛擬機磁盤文件。
也就是說,在虛擬化環境下,原來物理環境中所有的風險依然存在,同時相比之前的物理環境,又多了一個來自底層宿主機的風險,而這個風險則有可能是為企業帶來滅頂之災,出問題不僅僅是某一臺服務器的問題,而是所有。
此外,通過虛擬網絡病毒傳播主要出現在以VMware為代表的裸金屬部署架構的虛擬化環境中(例如:ESXI\思杰的XEN等)。由于虛擬化本身的特性,網絡結構扁平化,傳統的邊界防御設備無法感知到虛擬網絡層內部的威脅。因此,傳統的網絡安全設備應對虛擬化網絡的安全威脅中基本無效,要保護虛擬化網絡的安全必須從虛擬化網絡內部入手,感知威脅。
總之,借用美國國家標準與技術研究組織的一句話,“一個有安全威脅的虛擬機往往會影響整個虛擬化架構”
針對虛擬化系統,目前很多用戶使用傳統的方式,將防病毒軟件安裝在虛擬機上,來保護虛擬化平臺的安全。
這種方式看似是比較簡單的,他把虛擬機當成了一臺傳統的物理機去處理,可以實現殺毒軟件的所有功能,同時也不用考慮客戶的虛擬化用的是什么平臺,只要看虛擬出來的虛擬機是什么操作系統就好。
但事實上是傳統的防病毒軟件并不適用于虛擬化這種新型平臺中去。主要原因如下:
1.“防病毒風暴”問題
我們都知道,殺毒軟件在執行文件反病毒掃描時,計算機的內存和CPU消耗都會升高不少,計算機可能變慢,原因是反病毒軟件會遍歷磁盤中所有文件同病毒庫進行比對,確認病毒文件。因此,在虛擬化平臺中,虛擬機數量眾多,如果大批虛擬機同時執行文件反病毒掃描任務,會導致資源競爭,加重ESXI主機負擔以及虛擬機的計算資源。在掃描期內,形成資源消耗風暴,影響虛擬機性能以及業務。
2.“防護間隙”問題
虛擬化平臺中,虛擬機數量眾多,如果每個虛擬機都安裝防病毒軟件,部署難度大。且虛擬機一旦關機或暫停,傳統的防病毒軟件不再起任何作用(主動防御停止),病毒庫更新延遲,當虛擬機開始加載到啟動后防病毒軟件啟動這一段時間,虛擬機實際上處在一個無保護的狀態,在安全上有時間漏洞,存在保護間斷的問題。
3、其他問題。
在傳統模式下,我們要為每一臺虛擬機上安裝反病毒程序和病毒庫,不僅在掃描和更新時占用大量的計算資源(包括CPU和內存),也會占用大量的磁盤空間。也降低的虛擬化的密度,降低的虛擬化的效率,同時在管理上也不方便。
近些年,虛擬化廠家也發現了虛擬化平臺日益突出的安全問題,主流的虛擬化廠家相繼為第三方安全廠家開辟安全接口,用于反病毒,防火墻等一系列安全功能。
目前市面上主流的技術是無代理反病毒技術(這點很像之前文章中提到的無代理備份技術)。無代理反病毒,其實同無代理備份很類似。
以VMware為例,VMware在vsphere6.0版本之前,為用戶提供vshieldmanager安全套件(VMwarevsphere6.0開始整合到了VMwareNSX網絡套件中)。用戶在自己的VMware虛擬化平臺中部署vshield后,即可在ESXI主機中開啟endpoint反病毒插件。該插件為第三方安全廠家提供防病毒接口。第三方安全廠家僅需在集群中每個ESXI是部署SVM(安全代理虛擬機)即可,無需為每個虛擬機安裝殺毒客戶端。如下圖:
無代理反病毒示意圖
虛擬化的無代理反病毒的優勢非常明顯,首先,解決了防病毒風暴問題,當大批量虛擬機需要防病毒掃描時,主要掃描負載壓力集中在SVM虛擬機上,顯著降低各個業務虛擬機的資源負擔以及ESXI主機的資源負擔。
無代理反病毒VS傳統反病毒資源消耗對比(來自于VMware)
其次,無代理反病毒運維方式更為簡單,部署相對容易,無需在每個虛擬機上安裝客戶端程序。同時每個SVM上提供集中式的病毒庫引擎,供所有虛擬機使用,消除保護間斷以及解決病毒庫更新問題。最后還可支持虛擬機vmotion漂移技術,即時虛擬機發生漂移,保護也隨之跟進。
最后,第三方安全廠家大多都會集成網絡虛擬化保護技術,在虛擬化網絡內部部署IPS\IDS虛擬設備,對虛擬網絡內部流量進行清洗和過濾。
因此,無代理模式自推出起,就受到了廣大虛擬化用戶的喜愛,成為虛擬化用戶的首選解決方案。但無代理模式在實際的運行中也存在一定的不足之處(跟無代理備份一樣)。
1.無代理防病毒技術依賴于虛擬化廠家的防病毒接口,實現的保護功能有限,大部分僅能實現文件防病毒。例如:殺毒軟件的另一個主要功能主動防御、反網絡攻擊等技術無法使用(受虛擬化廠家接口限制)。(個人觀點:主動防御非常重要,對未知病毒的檢測阻斷完全靠主動防御機制的保護)。
2.無代理防病毒軟件版本升級受制于虛擬化廠家,當虛擬化平臺更新后(例如從ESXI5.5升級至6.0后)無代理防病毒軟件可能需要重新部署,原因在于虛擬化平臺底層安全接口變化,新接口不支持老版本防病毒軟件。當虛擬化廠商有新的版本推出后,防病毒廠商才能在新的平臺上開發新的針對該平臺的防病毒系統,存在較長的時間差,因此,無代理模式的版本更新較傳統模式要慢。我們也經常遇到客戶第一時間升級到了最新的VM版本,但相應的無代理防病毒系統卻遲遲不能推出而無法安裝部署,老的版本又不能支持新版本的虛擬化平臺,致使整個虛擬化平臺處于無保護狀態。
3.無代理防病毒部署,經常遇到虛擬化平臺防病毒接口不穩定的情況,例如:安裝vshield插件速度慢等一系列問題。
4.無代理防病毒特別依賴VMwareTools工具。很多用戶在安裝VMwareTools組件時大都會選擇典型安裝,如果使用無代理反病毒,虛擬機在安裝VMwareTools時必須自定義或完整安裝,典型安裝VMwareTools工具時默認組件不包含endpoint反病毒插件,因此,之前已經典型安裝過VMwareTools的虛擬機要全部修改安裝一遍,否則,無代理反病毒無法工作。
5.無代理反病毒對于較新版的VMware用戶來說,使用無代理反病毒需要向VMware支付額外費用。VMwarevsphere6.0以上版本部署無代理反病毒需要VMwareNSX網絡套件的支持,而VMwareNSX網絡套件需要單獨向VMware購買,且價格不低。
為了解決無代理的這些不足,又有第三方安全廠家提出了一種新型的虛擬化平臺防病毒保護方案,稱之為“輕代理保護”,輕代理防病毒汲取了無代理資源消耗低的特點和傳統端點防護的保護面廣的優勢,在性能和防護上較為均衡。
輕代理防護由安全代理虛擬機以及輕代理客戶端組成,與傳統端點防護和無代理防護的優勢在于,輕代理反病毒將資源消耗較高的文件反病毒、郵件反病毒、網頁反病毒等模塊集成在安全代理虛擬機上,業務虛擬機上的客戶端僅安裝一個輕量級的代理程序,該代理程序僅包含控制功能以及主機HIPS、反網絡攻擊功能。客戶端輕量級資源占用少,同時結合安全代理虛擬機的模塊,防護面廣。
虛擬化輕代理防病毒示意圖
相比無代理,輕代理是性能和防護面折中的方案,資源消耗相比無代理高一點,但比傳統端點防護方案資源消耗低。保護面同傳統端點安全產品功能基本一致。同時不依賴于虛擬化廠家的反病毒接口,可支持任意版本的虛擬化平臺,兼容性好。而且無需向虛擬化廠家購買獨立安全套件,性價比較高。但輕代理防護方案也有美中不足,主要體現在輕代理客戶端部署相對比較麻煩,受保護的虛擬機必須安裝輕量級客戶端程序。盡管輕代理程序很小,但面對規模龐大的虛擬化系統,安裝部署也行對比較麻煩。
因此,在實際項目中,我們一般推薦在大型虛擬化環境采用無代理+輕代理組合部署較為合理。例如:服務器虛擬化使用無代理防護,性能資源消耗低,有益于生產業務。桌面虛擬化環境可使用輕代理防護,防護面廣,適用于終端工作場景,且輕代理可同虛擬機鏡像模板打包生成,完成批量快速部署。
傳統模式、輕代理和無代理的對比:
根據以上介紹,用戶在選用虛擬化反病毒產品時,可從以下幾個方面來考量:
1.當然是殺毒能力,這是選擇殺毒軟件的基礎,畢竟殺毒軟件是用來殺毒的。這里要考察的因素包括病毒庫大小、更新速度、對未知病毒的防范能力、發現新病毒后的反應能力等。對于我們普通用戶而言,可能沒有能力對殺毒能力做出準確的判斷,那么可以參考一些國際知名的測評機構的評測報告。例如:AV-TEST、VB100、AV-Comparatives等。殺毒軟件不同于其他應用軟件,不是功能多就是好,而是要看殺毒能力的強弱,這是以后能否防范病毒的重要指標。
2.應有專門的針對虛擬化的解決方案,虛擬化防病毒產品應既可以支持無代理也可以支持輕代理,且授權通用,用戶可根據實際情況隨時進行調整部署模式,避免授權不通用導致用戶的二次消費。
3.多平臺支持。虛擬化產品應支持不同的虛擬化平臺,如常見的VMWARE\CTRIX\HYPER-V\KVM等,且授權文件通用,避免以后更換虛擬化平臺時授權無效導致的二次消費。
4.本地化服務能力,道高一尺,魔高一丈,從殺毒軟件的技術原理可知,從來都是先有病毒,后有反病毒,任何一個殺毒軟件都不敢保證能清除所有的病毒,因此必須要結合服務才能最大化的保證用戶的安全。
5.性價比。在滿足以上殺毒能力和功能的基礎上,再對比價格的因素。如果不考慮以上因素單純的對比價格是沒有意義的。