KEK- und DB-Zertifikate aktualisieren

Dieses Dokument enthält eine Anleitung zum Aktualisieren der Variablen „Allowed Signature Database“ (db) und „Key Exchange Key“ (KEK) auf Compute-Instanzen, die Sie vor dem 7. November 2025 erstellt haben, damit aktualisierte Zertifikate für Secure Boot vertrauenswürdig sind.

KEK und Datenbankaktualisierung sind eine Alternative für Kunden, die ihre betroffenen Compute-Instanzen nicht neu erstellen.

Hinweis

Bevor Sie Ihre KEK- und db-Zertifikate für Secure Boot aktualisieren, prüfen Sie, ob für Ihre Instanzen ein Update erforderlich ist, und treffen Sie die folgenden Vorbereitungen, um potenzielle Probleme beim Booten oder Entschlüsseln zu vermeiden:

  • Voraussetzungen prüfen:Prüfen Sie, ob für Ihre Instanzen ein Update der Secure Boot-Zertifikate erforderlich ist.
  • Datenintegrität und Schlüsselwiederherstellung:Suchen Sie Ihre Wiederherstellungsschlüssel für die Festplattenverschlüsselung (BitLocker oder LUKS FDE) und sichern Sie wichtige Daten. Das Ändern von Sicherheitsvariablen kann den Zugriff auf Festplatten sperren, wenn die Konfiguration falsch ist.
  • Empfohlene Reihenfolge für Linux-Updates:Bei Linux-Instanzen empfehlen wir, die db-UEFI-Variable auf Microsoft UEFI CA 2023 zu aktualisieren, bevor Sie auf neue Shims aktualisieren. Diese Reihenfolge trägt dazu bei, ein potenzielles Szenario mit CA-Fehler zu verhindern, wenn ein Shim-Update, das nur mit der Microsoft UEFI CA 2023 signiert ist, angewendet wird, während die Datenbank nur das Zertifikat von 2011 enthält.
  • Benutzerdefinierte PK- oder KEK-Konfigurationen:Wenn auf Ihrer Instanz benutzerdefinierte Secure Boot-Variablen (z. B. ein benutzerdefiniertes PK oder KEK) verwendet werden, können die in diesem Leitfaden bereitgestellten Standard-Aktualisierungsdateien (DBUpdate3P2023.bin oder kek2023update.bin) nicht direkt angewendet werden. Die UEFI-Firmware erfordert, dass Update-Dateien mit dem privaten Schlüssel des KEK oder PK signiert werden, der auf dem System vorhanden ist. Wenn Sie benutzerdefinierte Schlüssel verwenden, müssen Sie die Update-Binärdateien mit Ihren eigenen privaten Schlüsseln signieren oder die Updates über Ihre benutzerdefinierte Zertifizierungsstelle verwalten.
  • Google Cloud Backup- und DR-Appliances:Das sind verwaltete Appliances. Sie müssen die Secure Boot-Zertifikate auf diesen Geräten nicht manuell aktualisieren. Google Cloud verwaltet alle Updates automatisch.

Datenbank und KEK unter Linux aktualisieren

So aktualisieren Sie die Datenbank mit zulässigen Signaturen (db) und den Schlüsselaustauschschlüssel (KEK):

Debian oder Ubuntu

Sie können die Secure Boot-Zertifikate unter Debian oder Ubuntu mit fwupd, efitools oder sbsigntool aktualisieren.

Wir empfehlen, fwupd zum Aktualisieren Ihrer Zertifikate zu verwenden. Für diese Methode ist die fwupdmgr-Version 2.0.10 oder höher erforderlich. Prüfen Sie Ihre Version mit dem Befehl sudo fwupdmgr --version.

Führen Sie folgende Befehle aus:

sudo fwupdmgr refresh
sudo fwupdmgr update 5bc922b7bd1adb5b6f99592611404036bd9f42d0
sudo fwupdmgr update b7a1d3d90faa1f6275d9a98da4fb3be7118e61c7

Option 2: Aktualisierung mithilfe von efitools

So aktualisieren Sie die Variablen db und KEK mit dem Paket efitools:

Datenbank aktualisieren
  1. Laden Sie die binäre Datei für die Aktualisierung der Datenbank mit zulässigen Signaturen (db) von Microsoft herunter:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
    
  2. Aktualisieren Sie die Variable db:

     sudo chattr -i /sys/firmware/efi/efivars/db-*
     sudo efi-updatevar -a -f DBUpdate3P2023.bin db
     sudo chattr +i /sys/firmware/efi/efivars/db-*
    
KEK aktualisieren
  1. Laden Sie das Archiv .cab mit dem Zertifikatsupdate herunter:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    
  2. Installieren Sie das Dienstprogramm gcab:

     sudo apt update && sudo apt install gcab -y
    
  3. Extrahieren Sie das Archiv und prüfen Sie, ob der SHA-256-Hash der extrahierten Datei kek2023update.bin mit 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf übereinstimmt:

     gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     sha256sum kek2023update.bin
    
  4. Wenden Sie das Update an:

     sudo chattr -i /sys/firmware/efi/efivars/KEK-*
     sudo efi-updatevar -a -f kek2023update.bin KEK
     sudo chattr +i /sys/firmware/efi/efivars/KEK-*
    

Option 3: Über sbsigntool aktualisieren

So aktualisieren Sie die Variablen db und KEK mit dem Dienstprogramm sbkeysync aus dem Paket sbsigntool: Installieren Sie sbsigntool und gcab:

sudo apt update && sudo apt install sbsigntool gcab -y
Datenbank aktualisieren
  1. Laden Sie die Binärdatei für das db-Update von Microsoft herunter:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
    
  2. Schlüssel synchronisieren:

     sudo mkdir -p /etc/secureboot/keys/db
     sudo cp DBUpdate3P2023.bin /etc/secureboot/keys/db/
     sudo chattr -i /sys/firmware/efi/efivars/db-*
     sudo sbkeysync --verbose
     sudo chattr +i /sys/firmware/efi/efivars/db-*
    
KEK aktualisieren
  1. Laden Sie das KEK-Zertifikatsupdate herunter und extrahieren Sie es:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    
  2. Prüfen Sie, ob der SHA-256-Hash der extrahierten kek2023update.bin-Datei mit 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf übereinstimmt:

     sha256sum kek2023update.bin
    
  3. Schlüssel synchronisieren:

     sudo mkdir -p /etc/secureboot/keys/KEK
     sudo cp kek2023update.bin /etc/secureboot/keys/KEK/
     sudo chattr -i /sys/firmware/efi/efivars/KEK-*
     sudo sbkeysync --verbose
     sudo chattr +i /sys/firmware/efi/efivars/KEK-*
    

Red Hat Enterprise Linux (RHEL)

Sie können die Secure Boot-Zertifikate unter RHEL mit sbsigntools aktualisieren. RHEL-Images haben möglicherweise eine ältere Version von fwupd, die UEFI-Zertifikatsupdates nicht sofort unterstützt.

So aktualisieren Sie die Variablen db und KEK mit dem sbkeysync-Dienstprogramm aus dem sbsigntools-Paket:

  1. Aktivieren Sie das EPEL-Repository und installieren Sie sbsigntools und cabextract:

    sudo dnf install epel-release -y
    sudo dnf install sbsigntools cabextract -y
    
  2. So aktualisieren Sie die Variable db:

    1. Laden Sie die binäre Datei für die Aktualisierung der Datenbank mit zulässigen Signaturen (db) von Microsoft herunter:

      wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
      
    2. Schlüssel synchronisieren:

      sudo mkdir -p /etc/secureboot/keys/db
      sudo cp DBUpdate3P2023.bin /etc/secureboot/keys/db/
      sudo chattr -i /sys/firmware/efi/efivars/db-*
      sudo sbkeysync --verbose
      sudo chattr +i /sys/firmware/efi/efivars/db-*
      
  3. So aktualisieren Sie die Variable KEK:

    1. Laden Sie das KEK-Zertifikatsupdate herunter und extrahieren Sie es:

      wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
      cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
      
    2. Prüfen Sie, ob der SHA-256-Hash der extrahierten kek2023update.bin-Datei mit 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf übereinstimmt:

      sha256sum kek2023update.bin
      
    3. Schlüssel synchronisieren:

      sudo mkdir -p /etc/secureboot/keys/KEK
      sudo cp kek2023update.bin /etc/secureboot/keys/KEK/
      sudo chattr -i /sys/firmware/efi/efivars/KEK-*
      sudo sbkeysync --verbose
      sudo chattr +i /sys/firmware/efi/efivars/KEK-*
      

SUSE Linux Enterprise Server (SLES)

Sie können die Secure Boot-Zertifikate unter SLES oder openSUSE mit sbsigntools oder efitools aktualisieren. SLES-Images enthalten möglicherweise eine ältere Version von fwupd oder gar keine.

Option 1: Aktualisierung mithilfe von sbsigntools

Wenn Sie die Variablen db und KEK mit dem Dienstprogramm sbkeysync aus dem Paket sbsigntools aktualisieren möchten, aktivieren Sie den SUSE Package Hub und installieren Sie sbsigntools und cabextract:

sudo SUSEConnect -p PackageHub/15.5/x86_64
sudo zypper install sbsigntools cabextract -y
Datenbank aktualisieren
  1. Laden Sie die Binärdatei für das db-Update von Microsoft herunter:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
     ```
    
  2. Schlüssel synchronisieren:

     sudo mkdir -p /etc/secureboot/keys/db
     sudo cp DBUpdate3P2023.bin /etc/secureboot/keys/db/
     sudo chattr -i /sys/firmware/efi/efivars/db-*
     sudo sbkeysync --verbose
     sudo chattr +i /sys/firmware/efi/efivars/db-*
     ```
    
KEK aktualisieren
  1. Laden Sie das KEK-Zertifikatsupdate herunter und extrahieren Sie es:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     ```
    
  2. Prüfen Sie, ob der SHA-256-Hash der extrahierten kek2023update.bin-Datei mit 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf übereinstimmt:

     sha256sum kek2023update.bin
     ```
    
  3. Schlüssel synchronisieren:

     sudo mkdir -p /etc/secureboot/keys/KEK
     sudo cp kek2023update.bin /etc/secureboot/keys/KEK/
     sudo chattr -i /sys/firmware/efi/efivars/KEK-*
     sudo sbkeysync --verbose
     sudo chattr +i /sys/firmware/efi/efivars/KEK-*
     ```
    

Option 2: Aktualisierung mithilfe von efitools

So aktualisieren Sie die Variablen db und KEK mit dem Paket efitools:

Datenbank aktualisieren
  1. Laden Sie die binäre Datei für die Aktualisierung der Datenbank mit zulässigen Signaturen (db) von Microsoft herunter:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
     ```
    
  2. Aktualisieren Sie die Variable db:

     sudo chattr -i /sys/firmware/efi/efivars/db-*
     sudo efi-updatevar -a -f DBUpdate3P2023.bin db
     sudo chattr +i /sys/firmware/efi/efivars/db-*
     ```
    
KEK aktualisieren
  1. Laden Sie das Archiv .cab mit dem Zertifikatsupdate herunter:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     ```
    
  2. Aktivieren Sie den SUSE Package Hub und installieren Sie das Dienstprogramm gcab:

     sudo SUSEConnect -p PackageHub/15.5/x86_64
     sudo zypper install gcab -y
     ```
    Note: Replace `15.5` with your SLES version if different.
    
  3. Extrahieren Sie das Archiv und prüfen Sie, ob der SHA-256-Hash der extrahierten Datei kek2023update.bin mit 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf übereinstimmt:

     gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     sha256sum kek2023update.bin
     ```
    
  4. Wenden Sie das Update an:

     sudo chattr -i /sys/firmware/efi/efivars/KEK-*
     sudo efi-updatevar -a -f kek2023update.bin KEK
     sudo chattr +i /sys/firmware/efi/efivars/KEK-*
     ```
    

Datenbank und KEK unter Windows aktualisieren

Sie müssen diese Zertifikatsupdates nicht anwenden, wenn Sie Secure Boot auf dieser Instanz nicht verwenden oder nicht planen, es zu verwenden. Windows-Betriebssysteme ignorieren in der Regel Versuche, diese Secure Boot-Zertifikatsupdates anzuwenden, wenn Secure Boot nicht aktiviert ist, da das Update nicht erforderlich ist.

Wenn Sie Secure Boot später verwenden möchten, müssen Sie es zuerst auf der Instanz aktivieren, um die Secure Boot-Zertifikate zu aktualisieren.

Auf Windows-Instanzen werden Updates auf kompatiblen Versionen durch Registrierungseinstellungen und geplante Aufgaben ausgelöst:

  1. Achten Sie darauf, dass auf Ihren Windows-Instanzen die aktuellen monatlichen Updates installiert sind.
  2. Führen Sie als Administrator in PowerShell folgenden Befehl aus:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x5944
    Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"
    
  3. Starten Sie die Instanz neu, um Vorgänge für Firmware-Variablen zu ermöglichen. In einigen Umgebungen sind zwei Neustarts erforderlich, wenn Virtualisierungssicherheitsfunktionen aktiv sind.

Aktualisierung bestätigen

Nachdem Sie die Updates mit fwupd, efitools, sbsigntool oder PowerShell angewendet haben, prüfen Sie, ob die Zertifikate für 2023 in den UEFI-Variablen Ihrer Instanz vorhanden sind.

Linux

Unabhängig vom Tool, das zum Anwenden des Updates verwendet wird, werden die Zertifikate in die UEFI-NVRAM-Variablen der Instanz geschrieben. Sie können sie direkt mit mokutil (empfohlen) oder efi-readvar überprüfen:

  • mokutil verwenden (empfohlen): mokutil ist standardmäßig auf den meisten Linux-Distributionen installiert.

    sudo mokutil --kek | grep "KEK 2K CA 2023"
    sudo mokutil --db | grep "UEFI CA 2023"
    
  • efi-readvar verwenden:Wenn Sie efitools installiert haben, führen Sie Folgendes aus:

    sudo efi-readvar -v KEK | grep "KEK 2K CA 2023"
    sudo efi-readvar -v db | grep "UEFI CA 2023"
    

Wenn sowohl die Variable KEK als auch die Variable db die Zertifikate für 2023 enthalten, wurde die Aktualisierung erfolgreich angewendet und es sind keine weiteren Maßnahmen erforderlich.

Windows

Führen Sie in einer PowerShell-Eingabeaufforderung mit Administratorrechten Folgendes aus:

# Check for Microsoft KEK 2K CA 2023
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI KEK).bytes) -match 'Microsoft Corporation KEK 2K CA 2023'

# Check for UEFI CA 2023
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI db).bytes) -match 'UEFI CA 2023'

# Confirm general Secure Boot enrollment state
Confirm-SecureBootUEFI