- PVSM.RU - https://www.pvsm.ru -
В ежедневном журнале событий System на виртуальных машинах под управлением VMware ESXi (в моем случае версии 7.x) появляются ошибки:
Microsoft‑Windows‑TPM‑WMI ID:1803 (дважды в сутки):
A PK-signed Key Exchange Key (KEK) cannot be found for this device. Check with the device manufacturer for proper key provisioning.
Microsoft‑Windows‑TPM‑WMI ID:1801 (после перезагрузок):
Updated Secure Boot certificates are available on this device but have not yet been applied to the firmware.
Windows автоматически заменяет сертификаты Secure Boot 2011 года (истекают в 2026 г.) на Microsoft 2023 CA. Для записи нового KEK (Microsoft Corporation KEK 2K CA 2023) он должен быть подписан текущим Platform Key (PK) прошивки.
У ВМ, созданных на ESXi до версии 8.0 U3j, в NVRAM записан сертификат PK от VMware с некорректной подписью. Подписанного под него KEK у Microsoft нет, поэтому обновление KEK/DB не применяется и регистрируется ошибка 1803 (подробнее см. Broadcom KB 423919).
Обновление VMware Tools проблему не решает: требуется ручная замена PK в NVRAM ВМ на Windows OEM Devices PK от Microsoft.
Примечание: Последующие действия протестированы на ОС Windows Server 2016, 2019 и 2022 (без использования BitLocker).
Сделать снапшот ВМ.
Скачать файл WindowsOEMDevicesPK.der из официального репозитория Microsoft на GitHub: microsoft/secureboot_objects / PreSignedObjects/PK/Certificate [1]
Подключить временный виртуальный диск размера 128 МБ, отформатированный в FAT32, и поместить на него файл WindowsOEMDevicesPK.der.
Перед началом работ выполните действия из пункта 3.1. Подготовка.
Выключить ВМ.
Разрешить изменение переменных Secure Boot без аутентификации (добавить параметр VMX):
vCenter 7.x: Edit Settings → VM Options → Advanced → Edit Configuration
vCenter 8.x / 9.x: Edit Settings → Advanced Parameters
Параметр: uefi.allowAuthBypass = "TRUE"
Включить вход в настройки прошивки: Edit Settings → VM Options → Boot Options → включить Force EFI Setup.
Включить ВМ.
В интерфейсе UEFI:Enter Setup → Secure Boot Configuration → PK Options → Enroll PK → Enroll PK Using File → выбрать диск 128 МБ (LBA 0x80, Total Block Size 0x3F000) → выбрать файл WindowsOEMDevicesPK.der → Commit changes and exit.
Выключить ВМ.
(PK записывается в NVRAM (файл .nvram ВМ) сразу после выполнения Commit).
Обязательно: удалить параметр uefi.allowAuthBypass = "TRUE" из конфигурации ВМ (пока параметр активен, переменные Secure Boot можно изменять без проверки подписи). Убедиться, что параметр Force EFI Setup выключен.
Отключить от ВМ временный диск 128 МБ.
Включить ВМ.
Запустить PowerShell от имени администратора:
$pk = Get-SecureBootUEFI -Name PK
$bytes = $pk.Bytes
$cert = $bytes[44..($bytes.Length-1)]
[IO.File]::WriteAllBytes("PK.der", $cert)
certutil -dump PK.der
Ожидаемый результат:
Subject: CN=Windows OEM Devices PK, O=Microsoft Corporation
Issuer: CN=Microsoft RSA Third Party PCA 2023
Срок действия: 21.09.2023 – 18.09.2038
Cert Hash(sha1): 3d8660c0cb2d57b189c3d7995572a552f75e48b5
После успешной замены PK операционная система Windows автоматически применит обновления KEK/DB. Для принудительного ускорения процесса в PowerShell:
Start-ScheduledTask -TaskPath "MicrosoftWindowsPI" -TaskName "Secure-Boot-Update"
После этого перезагрузить ВМ и журнале событий System проверить событие 1808.
Пример корректного события 1808 в журнале System:
This device has updated Secure Boot CA/keys. This device signature information is included here.
UpdateType: Windows UEFI CA 2023 (DB), Option ROM CA 2023 (DB), 3P UEFI CA 2023 (DB), KEK 2023, Boot Manager (2023)
Выполните проверку через PowerShell:
# 1. Проверка наличия нового KEK в прошивке (ожидается True)
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI -Name KEK).Bytes) -match 'KEK 2K CA 2023'
# 2. Состояние обновления (ожидается 0x4000)
'0x{0:X}' -f (Get-ItemProperty HKLM:SYSTEMCurrentControlSetControlSecureBoot).AvailableUpdates
# 3. События TPM-WMI (ожидается наличие события 1808, новые 1803/1801 должны отсутствовать)
Get-WinEvent -FilterHashtable @{LogName='System'; ProviderName='Microsoft-Windows-TPM-WMI'} -MaxEvents 10 | ft TimeCreated, Id, Message -Wrap
После успешной проверки удалите ранее созданный снапшот ВМ.
Снапшоты ВМ: Снапшот создается до подключения временного диска FAT32, поэтому диск в структуру снапшота не входит и не влияет на операции удаления или отката.
Версии ESXi: Исправление с валидным PK по умолчанию интегрировано в релизах ESXi 8.0 U3j и новее, а также в серии ESXi 9.x. Для ВМ, созданных на этих версиях, ручная процедура не требуется.
Broadcom KB 423919 — Manual Update of the Secure Boot Platform Key in Virtual Machines:
Microsoft — Secure Boot troubleshooting guide:
Автор: SukhanovAA
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/windows-server/459865
Ссылки в тексте:
[1] microsoft/secureboot_objects / PreSignedObjects/PK/Certificate: https://github.com/microsoft/secureboot_objects/tree/main/PreSignedObjects/PK/Certificate
[2] https://knowledge.broadcom.com/external/article/423919: https://knowledge.broadcom.com/external/article/423919
[3] https://support.microsoft.com/en‑us/servicing/os/secure‑boot/2026/03/secure‑boot‑troubleshooting‑guide: https://support.microsoft.com/en-us/servicing/os/secure-boot/2026/03/secure-boot-troubleshooting-guide
[4] Источник: https://habr.com/ru/articles/1093516/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1093516
Нажмите здесь для печати.