Azure 虛擬機管理系統是基於 Windows Hyper-V。 虛擬機監控系統允許電腦管理員指定擁有獨立位址空間的訪客分割區。 這些獨立的位址空間允許你載入作業系統及與(主機)作業系統平行運作的應用程式,該作業系統在電腦根分割區執行。 主機作業系統(也稱為特權根分割區)可直接存取系統上所有實體裝置及周邊設備(儲存控制器、網路適配)。 主機作業系統允許訪客分割區共享這些實體裝置的使用,方法是將「虛擬裝置」暴露給每個訪客分割區。 因此,在訪客分割區執行的作業系統可存取由執行於根分割區的虛擬化服務所提供的虛擬化周邊設備。
Azure 虛擬機管理程式是以以下安全目標為核心建造的:
| Objective | Source |
|---|---|
| 隔離 | 安全政策規定虛擬機間不得傳輸資訊。 此限制要求虛擬機器管理器(VMM)及硬體具備隔離記憶體、裝置、網路及受管理資源(如持久化資料)的能力。 |
| VMM 完整性 | 為了達成整體系統完整性,會建立並維護各個虛擬機管理程式元件的完整性。 |
| 平台完整性 | 虛擬機監控程式的完整性取決於其所依賴的硬體與軟體的完整性。 雖然虛擬機監控程式無法直接控制平台的完整性,但 Azure 依賴硬體與韌體機制,如 Cerberus 晶片來保護並偵測底層平台的完整性。 Azure 會阻止 VMM 和訪客在平台完整性受損時執行。 |
| 受限制的存取 | 只有經過安全連線的授權管理員才能行使管理職能。 Azure 角色型存取控制(Azure RBAC)機制會強制執行最低權限原則。 |
| 審計 | Azure 具備稽核功能,能捕捉並保護系統上發生的資訊,以便日後進行檢查。 |
Microsoft 強化 Azure 虛擬機監控程式與虛擬化子系統的方法可分為以下三大類。
由虛擬機監控程式強制執行的嚴格劃分安全邊界
Azure Hypervisor 在下列項目之間強制實施多個安全界限:
- 虛擬化的「訪客」分割區與特權分割區(「主機」)
- 多位來賓
- 它本身與主機
- 它本身以及所有客體
虛擬機監控程式安全邊界的機密性、完整性與可用性均獲得保障。 這些邊界可防禦包括側通道資訊外洩、阻斷服務及特權提升等多種攻擊。
虛擬機監控程式的安全邊界也提供租戶間的網路流量、虛擬裝置、儲存、運算資源及其他虛擬機器資源的分段。
防禦縱深漏洞緩解措施
萬一安全邊界存在漏洞,Azure 虛擬機監控程式包含多層緩解機制,包括:
- 裝載跨 VM 元件的主機型處理程序隔離
- 基於虛擬化的安全性機制 (VBS) 可確保使用者模式和核心模式元件在安全區域中的完整性
- 多層次的漏洞緩解措施。 緩解措施包括位址空間佈局隨機化(ASLR)、資料執行防護(DEP)、任意程式碼守護、控制流程完整性及資料損壞防止
- 編譯器層級的堆疊變數自動初始化
- 核心 API 能自動對由 Hyper-V 所作的核心程序堆積分配零初始化
這些緩解措施旨在使跨虛擬機漏洞的漏洞開發變得不可行。
強大的安全保障流程
與虛擬機監控程式相關的攻擊面包括軟體網路、虛擬裝置,以及所有跨虛擬機的攻擊面。 攻擊面是透過自動化建置整合來追蹤的,並會觸發定期的安全審查。
Microsoft 的紅隊會進行威脅建模、程式碼審查、模糊測試,並測試所有 VM 攻擊面,以找出安全邊界違規問題。 Microsoft 也有一項漏洞懸賞計畫,針對 Microsoft Hyper-V 符合資格產品版本中的相關漏洞提供獎金。
Note
了解更多關於 Hyper-V 中強健的安全保證流程。
下一步
想了解更多關於 Microsoft 推動平台完整性與安全性的工作,請參閱: