受防護網狀架構與受防護的 VM 概觀

適用於:Windows Server 2022、Windows Server 2019、Windows Server 2016

虛擬化安全性是 Hyper-V 中的重要項目。 除了保護主機或其他虛擬機器不受執行惡意軟體的虛擬機器影響之外,我們也需要保護虛擬機器不會因為主機遭到入侵而受到危害。 這是目前每一個虛擬化平台的基本危害,無論是 Hyper-V、VMware 或任何其他平台。 如果虛擬機器離開組織 (無論是惡意或意外),該虛擬機器就可在任何其他系統上執行。 保護您組織中的高價值資產 (例如網域控制站、敏感性檔案伺服器及 HR 系統) 是第一優先考量。

為協助針對遭到入侵的虛擬化網狀架構提供保護,Windows Server 2016 Hyper-V 引進了受防護的 VM。 受防護的 VM 是第 2 代 VM (在 Windows Server 2012 和更新版本中受到支援),具有虛擬 TPM、使用 BitLocker 加密,並僅能在網狀架構中狀況良好且經過核准的主機上執行。 受防護的 VM 和受防護網狀架構可讓雲端服務提供者或企業私人雲端系統管理員為租用戶 VM 提供更安全的環境。

受防護網狀架構包含:

  • 1 項主機守護者服務 (HGS) (通常是有 3 個節點的叢集)。
  • 1 或多部受防護主機。
  • 一組受防護的虛擬機器。 以下圖表說明「主機守護者服務」如何使用證明以確保只有已知且有效的主機可以啟動受防護的 VM,以及如何使用金鑰保護來安全地發行受防護的 VM 的金鑰。

當租用戶建立在受防護網狀架構上執行的受防護的 VM 時,Hyper-V 主機和受防護的 VM 本身會由 HGS 保護。 HGS 提供兩種不同的服務:證明和金鑰保護。 「證明」服務可確保僅有受信任的 Hyper-V 主機可以執行受防護的 VM,而「金鑰保護」服務可提供將它們開機,並即時移轉到其他受防護主機時所需的金鑰。

Diagram of the guarded host fabric.

若要深入了解,請參閱這段受防護的 VM 簡介的影片。

受防護網狀架構解決方案中的證明模式

HGS 針對受防護網狀架構提供不同的證明模式:

  • TPM 信任證明 (硬體式)
  • 主機金鑰證明 (根據非對稱金鑰組)

建議使用 TPM 信任證明,因為它提供更強的保證 (如下表中所述),但它要求您的 Hyper-V 主機要有 TPM 2.0。 如果您目前沒有 TPM 2.0 或任何 TPM,則可以使用主機金鑰證明。 如果您決定在取得新硬體時移動 TPM 信任證明,您可以在「主機守護者服務」上切換證明模式,而且這幾乎不會中斷您的網狀架構。

您選擇的主機證明模式 主機保證
TPM 信任證明:提供可能的最強保護,但也要求更多的設定步驟。 主機硬體與韌體必須包含 TPM 2.0 和 UEFI 2.3.1,並啟用安全開機。 受防護主機是根據其 TPM 身份識別、測量開機順序和程式碼完整性原則核准,以確保其只會執行經核准的程式碼。
主機金鑰證明:用來支援沒有 TPM 2.0 可用的現有主機硬體。 需要較少的設定步驟,並與一般伺服器硬體相容。 受防護主機會根據擁有的金鑰獲得核准。

從 Windows Server 2019 開始,另一個名為系統管理員信任證明已遭取代。 此模式是以所指定 Active Directory Domain Services (AD DS) 安全性群組中的受防護主機成員資格為基礎。 主機金鑰證明提供類似的主機識別,且更容易設定。

主機守護者服務提供的保證

HGS 與建立受防護的 VM 的方法搭配使用,協助提供以下保證。

VM 的保證類型 受防護的 VM 保證,來自金鑰保護服務以及受防護的 VM 建立方法
BitLocker 加密的磁碟 (作業系統磁碟和資料磁碟) 受防護的 VM 會使用 BitLocker 保護其磁碟。 需要有 BitLocker 金鑰才能使通過用業界實證的技術 (例如安全測量開機) 將 VM 開機,以及將由受防護的 VM 的虛擬 TPM 所保護的磁碟解密。 雖然受防護的 VM 僅會自動加密並保護作業系統磁碟,您也可以加密資料磁碟機 (附加至受防護的 VM 的資料磁碟機)。
從「信任的」範本磁碟/映像部署新的受防護的 VM 部署新的受防護的 VM 時,租用戶可指定他們所信任的範本磁碟。 受防護的範本磁碟在其內容被視為可信任時,會有以該時間點計算的簽章。 磁碟簽章接著會儲存在簽章目錄中,在建立受防護的 VM 時,租用戶可安全地提供給網狀架構。 在受防護的 VM 佈建期間,會再次計算磁碟的簽章,並與目錄中信任的簽章比較。 如果簽章相符,則會部署受防護的 VM。 如果簽章不相符,則會將受防護的範本磁碟視為不受信任,且部署會失敗。
受防護的 VM 建立後的密碼及其他機密資料保護 當建立 VM 時,必須確保 VM 機密資料 (例如信任的磁碟簽章、RDP 憑證和 VM 本機 Administrator 帳戶的密碼) 不會洩漏至網狀架構。 這些機密資料會儲存在稱為防護資料檔案 (PDK 檔案) 的加密檔案中,它受到租用戶金鑰保護,並且由租用戶上傳至網狀架構。 當受防護的 VM 建立後,租用戶選取要使用的防護資料,這些機密資料只會在受防護網狀架構中安全地提供給受信任的元件。
VM 可啟動位置的租用戶控制 防護資料也包含受防護網狀架構清單,特定受防護的 VM 可在其上執行。 這非常實用,例如,受防護的 VM 通常位於內部部署的私人雲端,但可能需要移轉至另一個 (公用或私人) 雲端以供災害復原用途使用。 目標雲端或網狀架構必須支援受防護的 VM,且受防護的 VM 必須允許網狀架構執行它。

什麼是防護資料,以及它為何是必要的?

防護資料檔案 (也稱為佈建資料檔案或 PDK 檔案) 是一種加密檔案,租用戶或 VM 擁有者會建立該檔案以保護重要的 VM 組態資訊,例如系統管理員密碼、RDP 及其他身分識別相關的憑證、網域加入認證等等。 建立受防護的 VM 時,網狀架構系統管理員會使用防護資料檔案,但無法檢視或使用檔案中包含的資訊。

其中,防護資料檔案會包含機密資料,例如:

  • 系統管理員認證
  • 回應檔案 (unattend.xml)
  • 決定 VM 是否使用此防護資料設定為受防護或支援加密的安全性原則
    • 請記住,設定為受防護的 VM 會防止網狀架構系統管理員存取,而支援加密的 VM 則不會
  • 保護與 VM 通訊之遠端桌面的 RDP 憑證
  • 允許新的 VM 從中建立的磁碟區簽章目錄,其中包含受信任、已簽署的範本磁碟簽章清單
  • 金鑰保護裝置 (或 KP),定義受防護的 VM 被授權在哪些受防護網狀架構上執行

提供保證的防護資料檔案 (PDK 檔案),讓 VM 能以租用戶想要的方式建立。 例如,當租用戶在防護資料檔案中放入回應檔案 (unattend.xml) 並傳遞給主機服務提供者時,主機服務提供者無法檢視或變更該回應檔案。 同樣地,主機服務提供者無法在建立受防護的 VM 時替換不同的 VHDX,因為防護資料檔案包含可從中建立受防護的 VM 的信任磁碟簽章。

下圖說明防護資料檔案和相關的組態項目。

Illustration that shows the shielding data file and related configuration elements.

受防護網狀架構可執行的虛擬機器類型為何?

受防護網狀架構能夠以三種可能方式的其中之一執行 VM:

  1. 一般的 VM 供應項目,不提供舊版本 Hyper-V 以外的保護
  2. 支援加密的 VM,可由網狀架構系統管理員設定保護
  3. 受防護的 VM,所有的保護均會開啟,並且無法由網狀架構系統管理員停用

支援加密的 VM 是專供在網狀架構系統管理員完全受信任時使用。 例如,企業可能會部署受防護網狀架構,以確保 VM 磁碟在靜止時會加密,以符合法規規定。 網狀架構系統管理員可以繼續使用便利的管理功能,例如 VM 主控台連線、PowerShell Direct,和其他日常的管理功能及疑難排解工具。

受防護的 VM 是專供在 VM 的資料和狀態必須受到的保護網狀架構中使用,避免網狀架構系統管理員以及可能在 Hyper-V 主機上執行之不受信任軟體的影響。 例如,受防護的 VM 將一律不允許 VM 主控台連線,而網狀架構系統管理員可在支援加密的 VM 上開啟或關閉這項保護。

下表摘要說明加密支援和受防護的 VM 之間的差異。

功能 支援第 2 代加密 第 2 代防護
安全開機 是,必要但可設定 是,必要且強制執行
Vtpm 是,必要但可設定 是,必要且強制執行
加密 VM 狀態和即時移轉流量 是,必要但可設定 是,必要且強制執行
整合元件 可由網狀架構系統管理員設定 封鎖特定整合元件 (例如資料交換、PowerShell Direct)
虛擬機器連線 (主控台)、HID 裝置 (例如鍵盤、滑鼠) 開啟,無法停用 已從 Windows Server 版本 1803 開始的主機上啟用;已菜舊版主機上停用
COM/序列通訊埠 支援 停用 (無法啟用)
附加偵錯工具 (至 VM 處理序)1 支援 停用 (無法啟用)

1 對於受防護的 VM,系統會封鎖直接連結至程序 (例如 WinDbg.exe) 的傳統型偵錯工具,因為 VM 的背景工作程序 (VMWP.exe) 是受保護的程序輕型 (PPL)。 不會封鎖替代偵錯技術,例如 LiveKd.exe 所使用的技術。 不同於受防護的 VM,支援加密的 VM 不會以 PPL 的形式執行背景工作程序,因此 WinDbg.exe 等傳統偵錯工具會繼續正常運作。

受防護的 VM 和支援加密的 VM 皆會繼續支援一般的網狀架構管理功能,例如即時移轉、Hyper-V 複本、VM 檢查點等等。

作用中的主機守護者服務:如何開啟受防護的 VM

Diagram of shielding data file workflow.

  1. VM01 已開啟。 在受防護主機能夠開啟受防護的 VM 之前,它必須先明確證明其狀況良好。 若要證明其狀況良好,它必須向金鑰保護服務 (KPS) 提供健康情況的憑證。 健康情況的憑證是透過證明程序取得。

  2. 主機要求證明。 受防護主機會要求證明。 證明模式取決於「主機守護者服務」:

    • TPM 信任證明:Hyper-V 主機會傳送包括以下項目的資訊:

      • TPM 識別資訊 (其簽署金鑰)

      • 最近開機順序期間所啟動程序的相關資訊 (TCG 記錄檔)

      • 主機上所套用程式碼完整性 (CI) 原則的相關資訊。

        主機啟動後便會發生證明,之後每隔 8 小時發生。 當 VM 嘗試啟動時,如果因為某些原因導致主機沒有證明憑證,這也會觸發證明。

    • 主機金鑰證明:Hyper-V 主機會傳送金鑰組的公用部分。 HGS 會驗證主機金鑰是否已註冊。

    • 系統管理信任證明:Hyper-V 主機會傳送 Kerberos 票證,用來識別主機所在的安全性群組。 HGS 會驗證主機所屬的安全性群組是由受信任的 HGS 系統管理員在先前所設定。

  3. 證明成功 (或失敗)。 證明模式會決定成功證明主機狀況良好所需的檢查。 透過 TPM 信任的證明,系統會驗證主機的 TPM 身分識別、開機度量和程式碼完整性原則。 使用主機金鑰證明時,只會驗證主機金鑰的註冊。

  4. 證明憑證傳送給主機。 假設證明成功,健康情況憑證便會傳送給主機,而主機會被視為「受防護」(獲授權執行受防護的 VM)。 主機會使用健康情況憑證來授權金鑰保護服務以安全地發行和受防護的 VM 搭配使用的金鑰

  5. 主機要求 VM 金鑰。 受防護主機沒有開啟受防護的 VM (在此案例中為 VM01) 所需的金鑰。 若要取得必要金鑰,受防護主機必須向 KPS 提供下列項目:

    • 目前的健康情況憑證
    • 加密的機密資料 (金鑰保護裝置或 KP),其中包含開啟 VM01 所需的金鑰。 機密資料是使用只有 KPS 知道的其他金鑰來加密。
  6. 金鑰發行。 KPS 會檢查健康情況憑證以判斷其有效性。 憑證必須尚未過期,且 KPS 必須信任發出憑證的證明服務。

  7. 金鑰傳回至主機。 如果健康情況憑證有效,KPS 會嘗試解密機密資料,並安全地傳回開啟 VM 所需的金鑰。 金鑰會對受防護主機的 VBS 加密。

  8. VM01 上啟動的主機。

受防護網狀架構與受防護的 VM 詞彙

詞彙 定義
主機守護者服務 (HGS) 安裝於裸機伺服器安全叢集上的 Windows Server 角色,可測量 Hyper-V 主機的健康情況,並在開啟或即時移轉受防護的 VM 時對狀況良好的 Hyper-V 主機發行金鑰。 這兩項功能是受防護的 VM 解決方案的基礎,並分別稱為證明服務金鑰保護服務
受防護主機 可執行受防護的 VM 的 Hyper-V 主機。 只有在主機由 HGS 的證明服務視為狀況良好時,才會被視為「受防護」。 受防護的 VM 無法在尚未證明或證明失敗的 Hyper-V 主機上開啟或即時移轉至該主機。
受防護網狀架構 這是一個集合詞彙,用於描述 Hyper-V 主機的網狀架構,以及它們可管理和執行受防護的 VM 主機守護者服務。
受防護的虛擬機器 (VM) 僅能在受防護主機上執行的虛擬機器,並且可防範惡意網狀架構系統管理員及主機惡意程式碼檢查、竄改及竊盜。
網狀架構系統管理員 可管理虛擬機器的公用或私人雲端系統管理員。 在受防護網狀架構內容中,網狀架構系統管理員不具有受防護的 VM,或是決定受防護的 VM 可在哪些主機上執行之原則的存取權限。
HGS 系統管理員 公用或私人雲端中受信任的系統管理員,有權管理受防護主機 (即為可執行受防護的 VM 的主機) 的原則和密碼編譯內容。
佈建資料檔案或防護資料檔案 (PDK 檔案) 租用戶或使用者建立的加密檔案,用來保存重要的 VM 組態資訊,並保護該資訊防止其他人存取。 例如,防護資料檔案可以包含 VM 建立時指派給本機 Administrator 帳戶的密碼。
虛擬化安全性 (VBS) 以 Hyper-V 為基礎、可防止系統管理員存取的處理及儲存環境。 「虛擬安全模式」提供系統儲存作業系統金鑰的能力,該金鑰不會對作業系統管理員顯示。
虛擬 TPM 信賴平台模組 (TPM) 的虛擬化版本。 從 Windows Server 2016 中的 Hyper-V 開始,您可以提供虛擬 TPM 2.0 裝置,讓虛擬機器可進行加密,就像實體 TPM 可讓實體機器被加密一樣。

其他參考