Azure 機群上的 Hypervisor 安全性
Azure Hypervisor 系統是以 Windows Hyper-V 為基礎。 Hypervisor 系統可讓電腦系統管理員指定具有不同位址空間的客體分割區。 不同的位址空間可讓您載入作業系統和應用程式,這些應用程式與 (主機)作業系統平行運作,而該作業系統會在電腦的根分割區中執行。 主機 OS (也稱為特殊權限根分割區) 可直接存取系統上所有實體裝置和周邊設備 (儲存體控制器、網路調整設備)。 主機 OS 可讓客體分割區藉由將「虛擬裝置」公開給每個客體分割區,來共用這些實體裝置。 因此,在客體分割區中執行的作業系統可以存取虛擬化的周邊裝置,這些裝置是由在根分割區中執行的虛擬化服務所提供。
關於 Azure Hypervisor 的建置,請記住下列安全性目標:
目標 | 來源 |
---|---|
隔離 | 安全性原則不會要求在 VM 之間傳輸任何資訊。 此條件約束需要 Virtual Machine Manager (VMM) 和硬體中的功能,才能隔離記憶體、裝置、網路和受控資源,例如保存的資料。 |
VMM 完整性 | 為了達到整體系統完整性,會建立和維護個別 Hypervisor 元件的完整性。 |
平台完整性 | Hypervisor 的完整性取決於其所依賴的硬體和軟體是否具有完整性。 雖然 Hypervisor 沒有平台完整性的直接控制權,但 Azure 會依賴 Cerberus 晶片等硬體和韌體機制來保護及偵測基礎平台完整性。 如果平台完整性遭到入侵,VMM 和客體將無法執行。 |
受限制的存取 | 管理功能只會由透過安全連線來連線的經授權系統管理員執行。 Azure 角色型存取控制 (Azure RBAC) 機制會強制執行最低權限原則。 |
Audit | Azure 可讓稽核功能擷取並保護系統上關於發生狀況的資料,以便在稍後進行檢查。 |
Microsoft 強化 Azure Hypervisor 和虛擬化子系統的方法可以分成下列三個類別。
Hypervisor 強制執行的強定義安全性界限
Azure Hypervisor 會在下列項目之間強制執行多個安全性界限:
- 虛擬化的「客體」分割區和特殊權限分割區 (「主機」)
- 多個客體
- 本身和主機
- 本身和所有客體
Hypervisor 安全性界限可確保機密性、完整性和可用性。 界限可抵禦各種攻擊,包括旁路資訊外洩、拒絕服務,以及權限提高。
Hypervisor 安全性界限也會針對網路流量、虛擬裝置、儲存體、計算資源和其他所有 VM 資源,提供租用戶之間的分割。
深層防禦惡意探索風險降低功能
萬一安全性界限有弱點,Azure Hypervisor 具有多層風險降低功能,包括:
- 隔離跨 VM 元件裝載的主機型程序
- 虛擬化型安全性 (VBS),用於確保來自安全區域的使用者和核心模式元件具備完整性
- 多層級的惡意探索風險降低功能。 風險降低功能包含位址空間配置隨機化 (ASLR)、資料執行防止 (DEP)、任意程式碼防護、控制流程完整性和資料損毀防護
- 在編譯器層級的堆疊變數自動初始化
- 核心 API,會自動將 Hyper-V 所建立的核心堆積配置初始化為零
這些風險降低功能的設計目的是要讓開發惡意探索來針對跨 VM 弱點變得不可行。
強式安全性保證程序
與 Hypervisor 相關的受攻擊面包括軟體網路、虛擬裝置,以及所有跨 VM 介面。 透過自動化組建整合來追蹤受攻擊面,而自動化組建整合會觸發週期性安全性檢閱。
所有 VM 受攻擊面都是模型化的威脅、經檢閱程式碼,並由我們的 RED 小組針對安全性界限違規進行模糊及測試。 Microsoft 有個Bug 錯誤懸賞計劃,會針對提出 Microsoft Hyper-V 的相關弱點 (僅限符合資格的產品版本) 給予獎勵。
注意
深入了解 Hyper-V 中的強式安全性保證程序。
下一步
若要深入了解我們推動平台完整性和安全性的方法,請參閱: