
Das PowerShell-Modul UEFIv2 von Mike Niehaus installieren und die Ausführung von RemoteSigned Scripts zulassen:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Force
Install-PackageProvider -Name NuGet -Force -Confirm:$False
Install-Module -Name UEFIv2 -Force -Confirm:$False
Damit nun den aktuellen Zustand der SecureBoot-Zertifikate abfragen:
Get-UEFISecureBootCerts -Variable kek | Format-List -Property SignatureSubject
SignatureSubject : CN=Microsoft Corporation KEK CA 2011, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Get-UEFISecureBootCerts -Variable db | Format-List -Property SignatureSubject
SignatureSubject : CN=Microsoft Windows Production PCA 2011, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Die mittels Windows-Updates gepflegten SecureBootUpdates finden sich hier:
dir C:\Windows\system32\SecureBootUpdates
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 14.10.2025 20:25 10542 BucketConfidenceData.cab
-a---- 07.12.2019 10:09 3 dbupdate.bin
-a---- 05.05.2025 22:41 4832 dbupdate2024.bin
-a---- 13.10.2025 22:08 4829 DBUpdate3P2023.bin
-a---- 13.10.2025 22:08 4840 DBUpdateOROM2023.bin
-a---- 14.10.2025 20:25 24053 dbxupdate.bin
-a---- 05.05.2025 22:41 5052 DBXUpdate2024.bin
-a---- 13.10.2025 22:08 3509 DBXUpdateSVN.bin
-a---- 13.10.2025 22:08 716120 KEKUpdateCombined.bin
-a---- 05.05.2025 22:41 45 SbatLevel.txt
-a---- 14.10.2025 20:25 6544 SKUSiPolicy.P7b
Wir prüfen vor dem Update, ob ein Update nicht bereits angestoßen wurde (Ergebnis >0):
$RegSecureBoot = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot"
Write-Host "AvailableUpdates hat derzeit den Wert: 0x$($RegSecureBoot.AvailableUpdates.ToString("X"))"
AvailableUpdates hat derzeit den Wert: 0x0
Nun konfigurieren wir, welche Updates konkret umgesetzt werden sollen gemäß dieser Dokumentation.
$RegValue = 0x0
$RegValue += 0x0040 # add the Windows UEFI CA 2023 certificate to the Secure Boot DB.
$RegValue += 0x0800 # apply the Microsoft UEFI CA 2023 to the DB
$RegValue += 0x1000 # apply the Microsoft Option ROM CA 2023 to the DB
$RegValue += 0x0004 # look for a Key Exchange Key signed by the device’s Platform Key (PK)
Write-Host "Setze AvailableUpdates auf: 0x$($RegValue.ToString("X"))"
Setze AvailableUpdates auf: 0x1844
Hinweis: 0x4000 nutze ich in diesem Fall nicht, würde bedeuten: only apply the Microsoft UEFI CA 2023 and Microsoft Option ROM CA 2023 if the DB already has the Microsoft Corporation UEFI CA 2011.
Nun die Durchführung starten, zuvor allerdings den Start-Zeitstempel merken um danach alle seit diesem Zeitpunkt aufgetretenen TPM-WMI Events abzufragen:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value $RegValue
$StartTimeStamp = (Get-Date).AddSeconds(-1)
Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"
Start-Sleep -Seconds 10
Get-WinEvent -FilterHashtable @{ProviderName='microsoft-windows-tpm-wmi'; StartTime=$StartTimeStamp } -ErrorAction SilentlyContinue
ProviderName: Microsoft-Windows-TPM-WMI
TimeCreated Id LevelDisplayName Message
----------- -- ---------------- -------
20.10.2025 23:14:11 1795 Fehler Die Systemfirmware hat beim Versuch, eine Variable für den sicheren Start 4 zu aktualisieren, den Fehler Das Medium ist schreibgeschützt. zurückgegeben. Diese Gerätesignaturinformationen sind hier enthalten....
20.10.2025 23:14:08 1045 Informationen Update der Datenbank für sicheres Starten zur Installation des Microsoft UEFI CA 2023-Zertifikats wurde erfolgreich angewendet
20.10.2025 23:14:07 1044 Informationen Update der Datenbank für sicheres Starten zur Installation des Microsoft Option ROM-UEFI CA 2023-Zertifikats wurde erfolgreich angewendet
20.10.2025 23:14:07 1036 Informationen Das Update für den sicheren Start von Db wurde erfolgreich angewendet
Der Scheduled-Task wird über den COM-Server {5014B7C8-934E-4262-9816-887FA745A6C4} ausgeführt, nennt sich „TPM Maintenance Task Handler“ und wird implementiert in %systemroot%\system32\TpmTasks.dll
Der Fehler betreffend „… Das Medium ist schreibgeschützt.“ bezieht sich in diesem Fall auf den KEK welcher sich auf dieser Hardware nicht tauschen ließ (entweder, weil seitens Firmware nicht vorgesehen oder weil kein mittels Platform-Key PK signierter neuer 2023er KEK im Windows-Update für diese Plattform hinterlegt wurde).
Der KEK ist somit unverändert, kein neuer 2023er KEK (Key-Exchange-Key) hinzugekommen:
Get-UEFISecureBootCerts -Variable kek | Format-List -Property SignatureSubject
SignatureSubject : CN=Microsoft Corporation KEK CA 2011, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Die drei neuen 2023er SecureBoot-Zertifikate sind nun aber verfügbar:
Get-UEFISecureBootCerts -Variable db | Format-List -Property SignatureSubject
SignatureSubject : CN=Microsoft Windows Production PCA 2011, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
SignatureSubject : CN=Windows UEFI CA 2023, O=Microsoft Corporation, C=US
SignatureSubject : CN=Microsoft Option ROM UEFI CA 2023, O=Microsoft Corporation, C=US
SignatureSubject : CN=Microsoft UEFI CA 2023, O=Microsoft Corporation, C=US
Das System zum Abschluss neu starten!
Eventuell zuvor deaktivierten BitLocker mit TPM wieder aktivieren!

Anmerkung: Da das KEK Update fehlgeschlagen ist, bleibt der Zustand von AvailableUpdates im Zustand 0x4 = look for a Key Exchange Key signed by the device’s Platform Key (PK) zurück:
$RegSecureBoot = Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot"
Write-Host "AvailableUpdates hat derzeit den Wert: 0x$($RegSecureBoot.AvailableUpdates.ToString("X"))"
AvailableUpdates hat derzeit den Wert: 0x4
Der Taskplaner-Job läuft periodisch und versucht dieses Update erneut, so lange sich an den Rahmenbedingungen aber nichts ändert, wird dieses Update auch weiterhin nicht gelingen. Es empfiehlt sich daher dies zu beenden, indem wieder 0x0 konfiguriert wird:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x0