- Invoke-SecureBootAudit.ps1: audit Secure Boot certifikátů (Fáze 1) - detekce prostředí (Physical/Hyper-V VM/VMware VM) - parsování EFI_SIGNATURE_LIST, detekce 2011/2023 certifikátů - registry stav, Event Log analýza, kategorizace, JSON výstup - Set-SecureBootCertificateUpdate.ps1: remediace dle KB5068202 - AvailableUpdates = 0x5944 - scheduled task s wait smyčkou (timeout 120s) - WhatIf, Force, VerifyOnly, WinRM - README.md: popis problému, detekce stavů, remediační postup
11 KiB
Projekt: Audit a remediace Secure Boot certifikátů na Windows Serverech
Kontext a popis problematiky
Co se děje
Microsoft vydal v červnu 2025 upozornění (KB5062710), že původní Secure Boot certifikáty z roku 2011 expirují v průběhu roku 2026. Jde o certifikáty uložené v UEFI firmware (KEK a DB databázích), které zajišťují důvěryhodnost boot procesu.
Expirující certifikáty a termíny:
| Certifikát | Expirace | Náhrada |
|---|---|---|
| Microsoft Corporation KEK CA 2011 | 24. června 2026 | Microsoft Corporation KEK 2K CA 2023 |
| Microsoft UEFI CA 2011 | 27. června 2026 | Microsoft UEFI CA 2023 + Microsoft Option ROM UEFI CA 2023 |
| Microsoft Windows Production PCA 2011 | 19. října 2026 | Windows UEFI CA 2023 |
Dopad na servery
Servery, které neobdrží nové 2023 certifikáty, budou dál fungovat a bootovat normálně, ale přestanou být schopné přijímat nové bezpečnostní ochrany boot procesu — včetně aktualizací Windows Boot Manageru, Secure Boot databází, revokačních seznamů a mitigací nově objevených boot-level zranitelností. Postupem času to omezí ochranu před hrozbami a může ovlivnit scénáře závislé na Secure Boot důvěře, jako je BitLocker hardening nebo third-party bootloadery.
Specifika prostředí (MSP kontext)
- Windows Server 2016, 2019, 2022, 2025
- Fyzické servery různých výrobců (Dell, HP, Lenovo, Supermicro, ...)
- Virtuální stroje na Hyper-V (na Windows Server hostiteli)
- Virtuální stroje na VMware ESXi
- Prostředí spravovaná přes AD/GPO, bez Intune
- ~100–150 klientských prostředí různé velikosti
Klíčové technické detaily
Registry klíče relevantní pro stav:
HKLM\SYSTEM\CurrentControlSet\Control\SecureBoot— hlavní klíč (SecureBootEnabled, AvailableUpdates, HighConfidenceOptOut)HKLM\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing— stav aktualizace (UEFICA2023Status, UEFICA2023Error, WindowsUEFICA2023Capable)HKLM\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing\DeviceAttributes— atributy zařízení
Relevantní Event IDs (System log):
- 1801 — chybová událost, certifikáty NEBYLY aplikovány
- 1808 — informační událost, certifikáty BYLY úspěšně aplikovány
- 1795 — selhání aktualizace (známý problém zejména u Hyper-V VM)
- 1796, 1800, 1802, 1803 — doplňkové události průběhu
PowerShell cmdlet pro základní check:
Confirm-SecureBootUEFI
Vrací True (Secure Boot zapnutý), False, nebo exception pokud UEFI Secure Boot není podporován.
Hyper-V specifikum: U VM běžících na Hyper-V může selhávat aktualizace certifikátů s Event ID 1795. Tento known issue byl Microsoft řešen (resolved March 30, 2026) — ověřit verzi Hyper-V hostitele a aplikovat příslušné opravy.
VMware ESXi specifikum: Záleží, zda VM má Secure Boot vůbec povolený (nastavení VM hardware). U Generation 1 ekvivalentu (BIOS mode) Secure Boot neexistuje.
Cíl projektu
Fáze 1 — Detekce (inventář)
Vytvořit PowerShell detekční skript, který lze spustit vzdáleně přes Invoke-Command nebo lokálně na každém serveru a vrátit strukturovaný přehled stavu.
Výstup skriptu musí obsahovat:
- Základní identifikace serveru (hostname, OS verze, architektura)
- Typ prostředí (fyzický / Hyper-V VM / VMware VM / jiné)
- Je Secure Boot podporováno? (UEFI vs. Legacy BIOS)
- Je Secure Boot povoleno?
- Aktuální stav certifikátů:
- Jsou přítomny expirující 2011 certifikáty? (KEK CA 2011, UEFI CA 2011, Windows PCA 2011)
- Jsou přítomny nové 2023 certifikáty?
- Stav z registry (
UEFICA2023Status)
- Confidence level (z event logu 1801/1808)
- Poslední relevantní Event ID a čas
- Hardware info (výrobce, model, firmware verze, datum firmware)
- Dostupné aktualizace (
AvailableUpdatesregistry hodnota) - Případné chyby (
UEFICA2023Error)
Formát výstupu: JSON (pro snadné zpracování a agregaci) + human-readable summary
Požadavky na skript:
- Běží bez instalace dalších modulů (pure PowerShell 5.1+)
- Tolerantní vůči chybám — pokud Secure Boot není podporován/povolen, nezhavaruje
- Rozlišuje fyzický vs. VM (Hyper-V / VMware) přes WMI
- Exportuje výsledek lokálně i umožní vzdálené volání
- Wrapper skript pro hromadné spuštění přes seznam serverů z CSV/textového souboru
Fáze 2 — Analýza a kategorizace
Na základě dat z detekce kategorizovat každý server do skupin:
| Kategorie | Popis | Doporučená akce |
|---|---|---|
| ✅ OK | Má nové 2023 certifikáty, Secure Boot aktivní | Žádná akce |
| ⚠️ Nutná aktualizace | Má staré 2011 certifikáty, Secure Boot aktivní, firmware OK | Naplánovat rollout |
| 🔧 Čeká na firmware | Secure Boot aktivní, ale firmware nepodporuje update | Kontaktovat OEM / update firmware |
| ⏸️ Secure Boot vypnuto | Secure Boot existuje ale není zapnuto | Rozhodnutí o enablementu |
| ❌ Secure Boot nepodporováno | Legacy BIOS nebo VM bez vTPM | Dokumentovat jako výjimku |
| 🔴 Selhání aktualizace | Event 1795/chyba v registry | Troubleshooting |
Fáze 3 — Remediace
Navrhnout a implementovat remediační postup pro prostředí bez Intune:
Metody rollout (zvážit dle prostředí klienta):
- Registry key metoda — přímé nastavení klíčů přes PowerShell/GPO (KB5068202)
- GPO metoda — Group Policy Objects pro nastavení (KB5068198)
- WinCS CLI — Windows Configuration System nástroj pro domain-joined stroje (KB5068197)
- Ruční / skriptovaný rollout — pro izolovaná prostředí
Postup rollout (staging):
- Test na 1–2 reprezentativních serverech každého typu (výrobce + firmware verze)
- Ověření úspěchu přes Event ID 1808 a registry
- Rozšíření na další skupinu
- Monitoring (min. 48 hodin po aplikaci, čekat na restart)
Remediační PowerShell musí umět:
- Nastavit registry klíče pro zahájení aktualizace
- Spustit/zkontrolovat scheduled task pro Secure Boot update
- Ověřit výsledek po restartu
Technické požadavky na kód
Detekční skript
Soubor: Invoke-SecureBootAudit.ps1
Logika detekce certifikátů — kontrolovat přítomnost certifikátů přes Get-SecureBootUEFI:
- KEK databáze: hledat thumbprinty/subject odpovídající 2011 a 2023 certifikátům
- DB databáze: hledat Windows Production PCA 2011 / UEFI CA 2011 / jejich 2023 náhrady
Detekce typu prostředí:
# Hyper-V VM
(Get-WmiObject Win32_ComputerSystem).Model -eq "Virtual Machine" -and
(Get-WmiObject Win32_ComputerSystem).Manufacturer -like "*Microsoft*"
# VMware VM
(Get-WmiObject Win32_ComputerSystem).Manufacturer -like "*VMware*"
Ošetřit výjimky:
Get-SecureBootUEFIhodí exception pokud Secure Boot není podporováno nebo povoleno — zachytit a zalogovat- Na Legacy BIOS strojích
Confirm-SecureBootUEFIvrátí exception nebo False
Wrapper pro hromadné spuštění
Soubor: Start-SecureBootFleetAudit.ps1
- Vstup: seznam serverů (parametr nebo CSV soubor s kolonkou
ServerName) - Výstup: agregovaný JSON + CSV soubor pro import do Excelu
- Paralelizace:
Invoke-Commands-ThrottleLimit(doporučeno max 20 paralelně) - Logování: výpis chyb nedostupných serverů do separátního souboru
Remediační skript
Soubor: Set-SecureBootCertificateUpdate.ps1
- Parametry:
-ServerName,-WhatIf,-Force - WhatIf mode pro ověření před spuštěním
- Nastavit příslušné registry klíče dle KB5068202
- Spustit nebo počkat na scheduled task
- Zalogovat výsledek
Omezení a rizika
Hyper-V VM
- Aktualizace Secure Boot certifikátů ve VM závisí na tom, zda hypervizor poskytuje virtualizovaný UEFI podporující aktualizace
- Generation 1 VM (BIOS) — Secure Boot nepodporují vůbec
- Generation 2 VM — mají virtualizovaný UEFI, ale aktualizace certifikátů závisí na verzi hypervizoru
- Known issue s Event 1795 byl opraven (březen 2026) — ověřit verzi Windows Server hostitele
VMware ESXi
- Secure Boot ve VMware VM závisí na konfiguraci VM (EFI firmware + Secure Boot v nastavení VM)
- VMware neposkytuje automatické předání nových certifikátů do VM — aktualizace musí proběhnout přes Windows jako na fyzickém stroji
- Na starších ESXi verzích může být virtualizovaný UEFI omezený
Fyzické servery
- Starší servery (zejména pre-2018) mohou vyžadovat firmware update od OEM před aplikací nových Secure Boot certifikátů
- Servery end-of-life od výrobce mohou nemít dostupný firmware update — dokumentovat jako výjimku
Obecná rizika
- Neúspěšná aktualizace certifikátů NEOHROZÍ boot serveru — server bude dál fungovat se starými certifikáty
- Aktualizace vyžaduje restart pro aplikaci Boot Manageru (ne jen certifikátů)
- Po aplikaci počítat s min. 48 hodinami a jedním nebo více restarty
Reference dokumentace
- KB5062710 — Přehled: Windows Secure Boot certificate expiration and CA updates
- KB5062713 — IT Pro guidance
- KB5068202 — Registry key updates
- KB5068198 — GPO metoda
- KB5068197 — WinCS APIs
- KB5085046 — Troubleshooting
- KB5085790 — Known issues and resolutions
- KB5086397 — Azure Local / HyperConverged Infrastructure
- Secure Boot DB and DBX variable update events
Výstupy projektu (deliverables)
Invoke-SecureBootAudit.ps1— detekční skript pro jednotlivý serverStart-SecureBootFleetAudit.ps1— wrapper pro hromadný audit celé sítěSet-SecureBootCertificateUpdate.ps1— remediační skript s WhatIf podporouREADME.md— dokumentace použití všech skriptů- Vzorový výstup — příklad JSON a CSV výstupu auditu
Priorita a časový rámec
Urgentní — první dvě expirace jsou 24. a 27. června 2026 (týden od dnešního data). Audit je nutné provést okamžitě, aby bylo jasné, na kolika serverech je nutná akce.
Doporučené pořadí práce:
- Detekční skript (Fáze 1) — okamžitě
- Hromadný wrapper + export do CSV — obratem po detekci
- Analýza výsledků a kategorizace
- Remediační skript — po otestování na pilotních serverech