Windows Secure Boot certificate expiration and CA updates - Microsoft SupportLink: support.microsoft.com Ich möchte hier kurz beschreiben wie ich den Aktualisierungsprozess der secure boot Zertifikate in unserer Windows-Domäne umgesetzt habe. Warum das ganze? Die in der UEFI firmware hinterlegten Microsoft Zertifikate aus 2011 laufen im Juni 2026 ab, der bootloader neuerer Windows Versionen ist aber bereits mit dem Zertifikat aus 2023 signiert. Wenn man bis dahin nicht updated können zumindest preboot Umgebungen wie das Windows recovery environment nicht mehr aktualisiert werden. Je nach bitlocker Konfiguration kann es auch passieren, dass nach Ablauf des Zertifikats ein bitlocker recovery key verlangt wird.
Die neuen Zertifikate werden über die kumulativen Windows Updates mit verteilt und sollten, sofern der Rechner aktuell ist, bereits vorhanden sein. Von Interesse sind speziell drei Windows event IDs im System-Protokoll, diese sind 1799, 1801 und 1808.
Mein Powershell-Scanner schaut so aus:
$allEventIds = 1799,1801,1808
$events = foreach ($id in $allEventIds) {
Get-WinEvent -FilterHashtable @{LogName='System'; ID=$id} -MaxEvents 10 -ErrorAction SilentlyContinue
}
$events | Select-Object TimeCreated, ID, Message | Sort-Object TimeCreated
Wenn Ereignis-ID 1801 vorhanden ist, existieren die Zertifikate am Rechner und ich kann den flag switch machen, der den Aktualisierungsvorgang anstößt. Inhalt von 1801 ist "Secure Boot certificates have been updated but are not yet applied to the device firmware..."
Den flag switch mache ich per
WinCSFlags.exe /apply -k F33E0C8E002
Dann triggere ich den Update-Task und starte neu :
schtasks.exe /Run /TN "\Microsoft\Windows\PI\Secure-Boot-Update"
shutdown -r -t 10
Nach dem nächsten Neustart wird man eine event ID 1799 finden, die besagt dass der neue bootloader installiert wurde,
Inhalt von event ID 1799 "Der mit Windows UEFI CA 2023 signierte Start-Manager wurde erfolgreich installiert.."
Dann nochmal den Update-Task anstoßen und erneut neustarten:
schtasks.exe /Run /TN "\Microsoft\Windows\PI\Secure-Boot-Update"
shutdown -r -t 10
Dann wird sich eine event ID 1808 zeigen, die besagt, dass die Prozedur fertig ist:
"This device has updated Secure Boot CA/keys. This device signature information is included here.."
Zu guter letzt kann man noch die Datenbank abfragen, ob das Zertifikat wirklich installiert wurde.
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI db).bytes) -match 'Windows UEFI CA 2023'
Wenn das Zertifikat in der Datenbank vorhanden ist und die event ID 1808 getriggert wurde, kann man sich sicher sein, dass alles seine Richtigkeit hat