虛擬DMZ的云配置需要特定的安全策略。專家Dejan Lukan分析了不同種類的虛擬DMZ及它們與物理DMZ的差別。
DMZ,或非軍事區,是一個主機或小型網絡,主要用來將網絡隔離成多個區域來加強安全性的設置。這個名詞來源于軍事用語,是指兩個國家之間一塊禁止軍事活動的區域。DMZ主要用來在對外提供安全的HTTP、FTP、SSH、SMTP等服務的同時將他們保護在內網中。
網絡隔離技術有很多種,包括:
物理網絡隔離:在兩個DMZ之間配置一個網絡,讓其中的通信只能經由一個安全裝置實現。在這個安全裝置里面,防火墻及IDS/IPS規則會監控信息包來確認是否接收或拒絕它進入內網。這種技術是最安全但也最昂貴的,因為它需要許多物理設備來將網絡分隔成多個區塊。
邏輯網絡隔離:這個技術借由虛擬/邏輯設備,而不是物理的設備來隔離不同網段的通信。
虛擬局域網(VLAN):VLAN工作在第二層,與一個廣播區域中擁有相同VLAN標簽的接口交互,而一個交換機上的所有接口都默認在同一個廣播區域。支持VLAN的交換機可以借由使用VLAN標簽的方式將預定義的端口保留在各自的廣播區域中,從而建立多重的邏輯分隔網絡。
虛擬路由和轉發:這個技術工作在第三層,允許多個路由表同時共存在同一個路由器上,用一臺設備實現網絡的分區。
多協議標簽交換(MPLS):MPLS工作在第三層,使用標簽而不是保存在路由表里的網絡地址來轉發數據包。標簽是用來辨認數據包將被轉發到的某個遠程節點。
虛擬交換機:虛擬交換機可以用來將一個網絡與另一個網絡分隔開來。它類似于物理交換機,都是用來轉發數據包,但是用軟件來實現,所以不需要額外的硬件。
虛擬DMZ
VMware的《在VMware基礎架構中實現DMZ虛擬化》白皮書指出,一個虛擬化的DMZ提供了與物理DMZ同樣程度的安全性,從而生成一個同樣安全的虛擬DMZ網絡。在過去幾年中,虛擬化技術的使用有著長足的增長;虛擬機(VM)現在已經可以代替物理服務器。同樣的趨勢也發生在DMZ領域上,為了讓網絡保持正確的隔離及安全性,物理DMZ正在不斷被虛擬DMZ替代著。
《在VMware基礎架構中實現DMZ虛擬化》提供了現今常用的三種典型的虛擬化DMZ配置:
部分緊縮的DMZ加獨立物理信任區:每一區都是與別的區在物理上分隔開,而主機是虛擬機。這個DMZ配置與物理DMZ是一模一樣的,只不過網絡分隔是在物理網絡上實現,而不是在虛擬基礎架構上。
部分緊縮的DMZ加虛擬分隔信任區:不同區域是由虛擬化分隔的,但是在同一個物理ESX主機上。每個DMZ使用獨立的虛擬交換機來確保所有連到虛擬交換機上的主機是與其他區域的主機隔離開的。不同的DMZ之間的通信仍然經由連到ESX主機的物理網絡發生。
完全緊縮的DMZ:在這個場景下,整個DMZ都是虛擬化的,包括虛擬機和交換機,這樣的結果使得不同DMZ之間的通信無法離開ESX主機。
為了保持安全可信的環境,我們必須解決虛擬DMZ網絡可能存在的各種安全漏洞。以下列舉一些常見的安全漏洞:
管理程序主機入侵:ESX主機上的每個虛擬機都有獨立的虛擬網卡連接到與內網分離的虛擬交換機上。這種類型的配置很安全,不同安全區域之間是無法通信的,所以被入侵的虛擬機不能被用來轉接一臺內部虛擬機。但易受攻擊的ESX主機卻可以被利用來獲得主機的權限,這讓攻擊者可以直接訪問主機及所有配置的虛擬機。Immunity Inc. 在2008年開發了一個能夠從突破虛擬機的牢籠并侵入整個主機的Cloudburst攻擊矢量。這種攻擊在過去只發生過幾次,現在已經修復了,但要防備這種攻擊,定期更新虛擬機軟件來達到最高安全級別是很重要的。
虛擬網卡的配置:一個放置在錯誤的虛擬交換機上的網卡可以導致攻擊者取得平常存放在不同且獨立的DMZ中的敏感資訊。為了預防此種錯誤配置,在設置虛擬機時要特別小心。這種錯誤同樣可以輕易的發生在物理網絡上,當線路被插在錯誤的物理交換機時,所以這個并不是虛擬DMZ環境所獨有的問題。
訪問服務控制臺/VMkernel:如果一個服務控制臺或VMkernel可以從DMZ網絡訪問的話,攻擊者可以用暴力或字典攻擊來取得密碼,進而取得主機中所有虛擬機的權限。當使用ESX時,管理界面必須要正確的分配在有至少一個專用網卡的專屬虛擬交換機來保持獨立,當然如果有多個專用網卡可以故障轉移就更好。要防止這種攻擊,屬于DMZ里的虛擬機絕對不能和服務控制臺或VMkernel在同一個虛擬交換機上,因為DMZ里被侵入的虛擬機可以被攻擊者用來取得主機里所有虛擬機的權限。
網絡附加存儲(NAS):網絡附加存儲應該要連接在自己專用的虛擬交換機上,這樣它就無法使DMZ里被入侵的虛擬機訪問。這更進一步的防止網絡被常用在NAS上的ISCSI/NFS協議的攻擊。
數據鏈路層保護:每個虛擬交換機都應該配置成能偵測及抵抗例如MAC欺騙,中間人攻擊和混雜模式的第二層攻擊,這樣能強化整體的網絡安全。
虛擬機資源限制:每個虛擬機都必須有一定的分配資源才能適當的保護網絡不受拒絕服務(DoS)攻擊。一個攻擊者如果有了DMZ網絡中一臺虛擬機的權限,他便可以發出CPU密集操作,占據大部分的主機資源,使得其他的虛擬機都無法得到資源。這種問題可以很輕易的預防,只要進行適當的資源限制,讓每個虛擬機都有一定比例的可用資源。每個虛擬交換機也應該有多個獨立網卡來對網絡通信進行負載平衡,以避免擁堵。
獨立虛擬交換機上的DMZ:DMZ可以用2種方式創建,一種是將虛擬機放在獨立的虛擬交換機上,另一種是在同一個虛擬交換機上使用多個虛擬局域網。第一種方式是比較好的,因為獨立的虛擬交換機使用分別的獨立網卡,所以物理上將虛擬內網及虛擬外網的通信分開。如果虛擬外網的一個虛擬機想要與內網虛擬機溝通,通信必須經由物理路由器和獨立網卡中的防火墻來決定允許或拒絕。
虛擬DMZ配置檢查:虛擬DMZ網絡的每個部分都應該適當的定期檢查來保持最佳的安全實踐。
用戶權限配置:每個管理員都應該屬于不同的用戶組,依照最低權限的原則,這樣能將配置錯誤的影響最小化。
結論
虛擬DMZ安全與物理DMZ安全之間存在一些差異。在配置一個邏輯網絡隔離時有許多技術可以選擇,而每種都會使用虛擬交換機的實現。每種技術隱含著各自的安全問題,這需要用安全的虛擬分隔的DMZ網絡來解決。通過正確的處理針對虛擬DMZ的各種安全擔憂,實現一個與物理DMZ同等安全的虛擬DMZ網絡是完全有可能的。最終,通過使用物理DMZ或者虛擬DMZ,我們可以完成網絡隔離這一項重要的任務。