Aggiorna i certificati KEK e db

Questo documento fornisce istruzioni per aggiornare le variabili Allowed Signature Database (db) e Key Exchange Key (KEK) sulle istanze di Compute che hai creato prima del 7 novembre 2025 per considerare attendibili i certificati aggiornati per l'avvio protetto.

L'aggiornamento di KEK e db è un'alternativa per i clienti che non ricreano le istanze di Compute interessate.

Prima di iniziare

Prima di aggiornare i certificati KEK e db dell'avvio protetto, verifica se le tue istanze richiedono un aggiornamento e completa le seguenti preparazioni per evitare potenziali problemi di avvio o decriptaggio:

  • Verifica dei prerequisiti: Verifica che le tue istanze richiedano un aggiornamento dei certificati di avvio protetto.
  • Integrità dei dati e recupero delle chiavi: individua le chiavi di ripristino della crittografia del disco (BitLocker o LUKS FDE) ed esegui il backup dei dati critici. La modifica delle variabili di sicurezza può bloccare l'accesso ai dischi se la configurazione non è corretta.
  • Consigli per la sequenza di aggiornamento di Linux: per le istanze Linux, ti consigliamo di aggiornare la variabile UEFI db a Microsoft UEFI CA 2023 prima di eseguire l'aggiornamento ai nuovi shim. Questa sequenza aiuta a prevenire un potenziale scenario di mancata corrispondenza della CA se viene applicato un aggiornamento dello shim firmato solo con Microsoft UEFI CA 2023 mentre il database contiene solo il certificato 2011.
  • Configurazioni PK o KEK personalizzate: se la tua istanza utilizza variabili di avvio protetto personalizzate (ad esempio un PK o KEK personalizzato), i file di aggiornamento standard (DBUpdate3P2023.bin o kek2023update.bin) forniti in questa guida non verranno applicati direttamente. Il firmware UEFI richiede che i file di aggiornamento siano firmati dalla chiave privata di KEK o PK presente sul sistema. Se utilizzi chiavi personalizzate, devi firmare i file binari di aggiornamento con le tue chiavi private o gestire gli aggiornamenti tramite la tua autorità di certificazione personalizzata.

Aggiornare db e KEK su Linux

Per aggiornare Allowed Signature Database (db) e Key Exchange Key (KEK), seleziona l'opzione per il tuo sistema operativo:

Debian o Ubuntu

Puoi aggiornare i certificati di avvio protetto su Debian o Ubuntu utilizzando fwupd, efitools o sbsigntool.

Ti consigliamo di utilizzare fwupd per aggiornare i certificati. Questo metodo richiede la versione 2.0.10 o successive di fwupdmgr. Verifica la tua versione eseguendo sudo fwupdmgr --version.

Esegui questi comandi:

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

Opzione 2: aggiorna utilizzando efitools

Per aggiornare le variabili db e KEK utilizzando il pacchetto efitools:

Aggiorna db
  1. Scarica il file binario di aggiornamento di Allowed Signature Database (db) da Microsoft:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
     ```
    
  2. Aggiorna la variabile 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-*
     ```
    
Aggiorna KEK
  1. Scarica l'archivio .cab contenente l'aggiornamento del certificato:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     ```
    
  2. Installa l'utilità gcab:

     sudo apt update && sudo apt install gcab -y
     ```
    
  3. Estrai l'archivio e verifica che l'hash SHA-256 del file kek2023update.bin estratto corrisponda a 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:

     gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     sha256sum kek2023update.bin
     ```
    
  4. Applica l'aggiornamento:

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

Opzione 3: aggiorna utilizzando sbsigntool

Per aggiornare le variabili db e KEK utilizzando l'utilità sbkeysync del pacchetto sbsigntool:

  1. Installa sbsigntool e gcab:

     sudo apt update && sudo apt install sbsigntool gcab -y
     ```
    
Aggiorna db
  1. Scarica il file binario di aggiornamento db da Microsoft:

     wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
     ```
    
  2. Sincronizza la chiave:

     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-*
     ```
    
Aggiorna KEK
  1. Scarica ed estrai l'aggiornamento del certificato KEK:

     wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
     ```
    
  2. Verifica che l'hash SHA-256 del file kek2023update.bin estratto corrisponda a 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:

     sha256sum kek2023update.bin
     ```
    
  3. Sincronizza la chiave:

     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)

Puoi aggiornare i certificati di avvio protetto su RHEL utilizzando sbsigntools. Le immagini RHEL potrebbero avere una versione precedente di fwupd che non supporta gli aggiornamenti dei certificati UEFI out-of-the-box.

Per aggiornare le variabili db e KEK utilizzando l'utilità sbkeysync del pacchetto sbsigntools:

  1. Attiva il repository EPEL e installa sbsigntools e cabextract:

    sudo dnf install epel-release -y
    sudo dnf install sbsigntools cabextract -y
    
  2. Per aggiornare la variabile db:

    1. Scarica il file binario di aggiornamento di Allowed Signature Database (db) da Microsoft:

      wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
      
    2. Sincronizza la chiave:

      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. Per aggiornare la variabile KEK:

    1. Scarica ed estrai l'aggiornamento del certificato KEK:

      wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
      cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
      
    2. Verifica che l'hash SHA-256 del file kek2023update.bin estratto corrisponda a 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:

      sha256sum kek2023update.bin
      
    3. Sincronizza la chiave:

      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)

Puoi aggiornare i certificati di avvio protetto su SLES o openSUSE utilizzando sbsigntools o efitools. Le immagini SLES potrebbero avere una versione precedente di fwupd o non fornirla affatto.

Opzione 1: aggiorna utilizzando sbsigntools

Per aggiornare le variabili db e KEK utilizzando l'utilità sbkeysync del pacchetto sbsigntools:

  1. Attiva SUSE Package Hub e installa sbsigntools e cabextract:

    sudo SUSEConnect -p PackageHub/15.5/x86_64
    sudo zypper install sbsigntools cabextract -y
    
Aggiorna db
  1. Scarica il file binario di aggiornamento db da Microsoft:

    wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
    
  2. Sincronizza la chiave:

    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-*
    
Aggiorna KEK
  1. Scarica ed estrai l'aggiornamento del certificato KEK:

    wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    
  2. Verifica che l'hash SHA-256 del file kek2023update.bin estratto corrisponda a 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:

    sha256sum kek2023update.bin
    
  3. Sincronizza la chiave:

    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-*
    

Opzione 2: aggiorna utilizzando efitools

Per aggiornare le variabili db e KEK utilizzando il pacchetto efitools:

Aggiorna db
  1. Scarica il file binario di aggiornamento di Allowed Signature Database (db) da Microsoft:

    wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.bin
    
  2. Aggiorna la variabile 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-*
    
Aggiorna KEK
  1. Scarica l'archivio .cab contenente l'aggiornamento del certificato:

    wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    
  2. Attiva SUSE Package Hub e installa l'utilità gcab:

    sudo SUSEConnect -p PackageHub/15.5/x86_64
    sudo zypper install gcab -y
    
  3. Estrai l'archivio e verifica che l'hash SHA-256 del file kek2023update.bin estratto corrisponda a 99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:

    gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab
    sha256sum kek2023update.bin
    
  4. Applica l'aggiornamento:

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

Aggiornare db e KEK su Windows

Non devi applicare questi aggiornamenti dei certificati se non utilizzi o non prevedi di utilizzare l'avvio protetto su questa istanza. In genere, i sistemi operativi Windows ignorano i tentativi di applicare questi aggiornamenti dei certificati di avvio protetto se l'avvio protetto non è abilitato perché l'aggiornamento non è necessario.

Se intendi utilizzare l'avvio protetto in un secondo momento, devi prima abilitarlo sull'istanza per aggiornare i certificati di avvio protetto.

Nelle istanze Windows, le impostazioni del Registro di sistema e le attività pianificate attivano gli aggiornamenti sulle versioni compatibili:

  1. Assicurati che alle tue istanze Windows siano stati applicati gli aggiornamenti mensili recenti.
  2. Come amministratore in PowerShell, esegui:

    Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x5944
    Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"
    
  3. Riavvia l'istanza per consentire le operazioni sulle variabili del firmware. Alcuni ambienti richiedono doppi riavvii se le funzionalità di sicurezza della virtualizzazione sono attive.