Ce document explique comment mettre à jour les variables de la base de données de signatures autorisées (db) et de la clé d'échange de clés (KEK) sur les instances de calcul que vous avez créées avant le 7 novembre 2025 pour qu'elles fassent confiance aux certificats mis à jour pour le démarrage sécurisé.
La mise à jour de la KEK et de la base de données est une alternative pour les clients qui ne recréent pas leurs instances de calcul concernées.
Avant de commencer
Avant de mettre à jour vos certificats KEK et db Secure Boot, vérifiez si vos instances nécessitent une mise à jour et effectuez les préparatifs suivants pour éviter d'éventuels problèmes de démarrage ou de déchiffrement :
- Vérification des prérequis : vérifiez que vos instances nécessitent une mise à jour des certificats de démarrage sécurisé.
- Intégrité des données et récupération des clés : localisez vos clés de récupération de chiffrement de disque (BitLocker ou LUKS FDE) et sauvegardez les données critiques. Si la configuration est incorrecte, la modification des variables de sécurité peut bloquer l'accès aux disques.
- Recommandation concernant l'ordre de mise à jour de Linux : pour les instances Linux, nous vous recommandons de mettre à jour la variable UEFI
dbvers Microsoft UEFI CA 2023 avant de passer aux nouveaux shims. Cette séquence permet d'éviter un éventuel scénario d'incompatibilité de l'autorité de certification si une mise à jour du shim signée uniquement avec l'autorité de certification Microsoft UEFI 2023 est appliquée alors que la base de données ne contient que le certificat de 2011. - Configurations personnalisées de clé publique ou de KEK clé : si votre instance utilise des variables Secure Boot personnalisées (telles qu'un
PKou unKEKpersonnalisés), ou si vous exécutez un système en dehors de Compute Engine, les fichiers de mise à jour standards (DBUpdate3P2023.binoukek2023update.bin) fournis dans ce document ne s'appliqueront pas directement. Le micrologiciel UEFI exige que les fichiers de mise à jour soient signés avec la clé privée deKEKouPKenregistrée sur le système, etkek2023update.binest signé spécifiquement par lePKCompute Engine par défaut. Si vous utilisez des clés personnalisées, vous devez signer les binaires de mise à jour avec vos propres clés privées ou gérer les mises à jour via votre autorité de certification personnalisée. Pour en savoir plus, consultez Résoudre les erreurs de mise à jour des clés de chiffrement de clé. - Cloud de Confiance by S3NS Dispositifs Backup and DR : il s'agit de dispositifs gérés. Vous n'avez pas besoin de mettre à jour manuellement les certificats Secure Boot sur ces appliances. Cloud de Confiance by S3NS gère automatiquement toutes les mises à jour.
Mettre à jour la base de données et la KEK sur Linux
Pour mettre à jour la base de données des signatures autorisées (db) et la clé d'échange de clés (KEK), sélectionnez l'option correspondant à votre système d'exploitation :
Debian ou Ubuntu
Vous pouvez mettre à jour les certificats de démarrage sécurisé sur Debian ou Ubuntu à l'aide de fwupd, efitools ou sbsigntool.
Option 1 : Mettre à jour à l'aide de fwupd (recommandé)
Nous vous recommandons d'utiliser fwupd pour mettre à jour vos certificats. Cette méthode requiert la version 2.0.10 ou ultérieure de fwupdmgr. Vérifiez votre version en exécutant sudo fwupdmgr --version.
Exécutez les commandes suivantes :
sudo fwupdmgr refresh
sudo fwupdmgr update 5bc922b7bd1adb5b6f99592611404036bd9f42d0
sudo fwupdmgr update b7a1d3d90faa1f6275d9a98da4fb3be7118e61c7
Option 2 : Mettre à jour à l'aide de efitools
Pour mettre à jour les variables db et KEK à l'aide du package efitools :
Mettre à jour la base de données
Téléchargez le fichier binaire de mise à jour de la base de données des signatures autorisées (
db) depuis Microsoft :wget https://github.com/microsoft/secureboot_objects/raw/main/PostSignedObjects/Optional/DB/DBUpdate3P2023.binMettez à jour la 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-*
Mettre à jour le KEK
Téléchargez l'archive
.cabcontenant la mise à jour du certificat :wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabInstallez l'utilitaire
gcab:sudo apt update && sudo apt install gcab -yExtrayez l'archive et vérifiez que le hachage SHA-256 du fichier
kek2023update.binextrait correspond à99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab sha256sum kek2023update.binAppliquez la mise à jour :
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 : Mettre à jour à l'aide de sbsigntool
Pour mettre à jour les variables db et KEK à l'aide de l'utilitaire sbkeysync du package sbsigntool, installez sbsigntool et gcab :
sudo apt update && sudo apt install sbsigntool gcab -y
Mettre à jour la base de données
Téléchargez le fichier binaire de mise à jour
dbdepuis Microsoft :wget https://github.com/microsoft/secureboot_objects/raw/main/PostSignedObjects/Optional/DB/DBUpdate3P2023.binSynchronisez la clé :
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-*
Mettre à jour le KEK
Téléchargez et extrayez la mise à jour du certificat KEK :
wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabVérifiez que le hachage SHA-256 du fichier
kek2023update.binextrait correspond à99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:sha256sum kek2023update.binSynchronisez la clé :
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)
Vous pouvez mettre à jour les certificats de démarrage sécurisé sur RHEL à l'aide de sbsigntools. Les images RHEL peuvent contenir une ancienne version de fwupd qui ne prend pas en charge les mises à jour des certificats UEFI prêtes à l'emploi.
Pour mettre à jour les variables db et KEK à l'aide de l'utilitaire sbkeysync du package sbsigntools, procédez comme suit :
Activez le dépôt EPEL et installez
sbsigntoolsetcabextract:sudo dnf install epel-release -y sudo dnf install sbsigntools cabextract -yPour mettre à jour la variable
db, procédez comme suit :Téléchargez le fichier binaire de mise à jour de la base de données des signatures autorisées (
db) depuis Microsoft :wget https://github.com/microsoft/secureboot_objects/raw/main/PostSignedObjects/Optional/DB/DBUpdate3P2023.binSynchronisez la clé :
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-*
Pour mettre à jour la variable
KEK, procédez comme suit :Téléchargez et extrayez la mise à jour du certificat KEK :
wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabVérifiez que le hachage SHA-256 du fichier
kek2023update.binextrait correspond à99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:sha256sum kek2023update.binSynchronisez la clé :
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)
Vous pouvez mettre à jour les certificats Secure Boot sur SLES ou openSUSE à l'aide de sbsigntools ou efitools. Il est possible que les images SLES disposent d'une ancienne version de fwupd ou ne la fournissent pas du tout.
Option 1 : Mettre à jour à l'aide de sbsigntools
Pour mettre à jour les variables db et KEK à l'aide de l'utilitaire sbkeysync du package sbsigntools, activez SUSE Package Hub et installez sbsigntools et cabextract :
sudo SUSEConnect -p PackageHub/15.5/x86_64
sudo zypper install sbsigntools cabextract -y
Mettre à jour la base de données
Téléchargez le fichier binaire de mise à jour
dbdepuis Microsoft :wget https://github.com/microsoft/secureboot_objects/raw/main/PostSignedObjects/Optional/DB/DBUpdate3P2023.bin ```Synchronisez la clé :
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-* ```
Mettre à jour le KEK
Téléchargez et extrayez la mise à jour du certificat KEK :
wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab ```Vérifiez que le hachage SHA-256 du fichier
kek2023update.binextrait correspond à99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:sha256sum kek2023update.bin ```Synchronisez la clé :
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 : Mettre à jour à l'aide de efitools
Pour mettre à jour les variables db et KEK à l'aide du package efitools :
Mettre à jour la base de données
Téléchargez le fichier binaire de mise à jour de la base de données des signatures autorisées (
db) depuis Microsoft :wget https://github.com/microsoft/secureboot_objects/raw/main/PostSignedObjects/Optional/DB/DBUpdate3P2023.bin ```Mettez à jour la 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-* ```
Mettre à jour le KEK
Téléchargez l'archive
.cabcontenant la mise à jour du certificat :wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab ```Activez le SUSE Package Hub et installez l'utilitaire
gcab:sudo SUSEConnect -p PackageHub/15.5/x86_64 sudo zypper install gcab -y ``` Note: Replace `15.5` with your SLES version if different.Extrayez l'archive et vérifiez que le hachage SHA-256 du fichier
kek2023update.binextrait correspond à99e340f5cfd7aa3698f80237b51e460fc6367111876f39b4a9e1d1aa495d5eaf:gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab sha256sum kek2023update.bin ```Appliquez la mise à jour :
sudo chattr -i /sys/firmware/efi/efivars/KEK-* sudo efi-updatevar -a -f kek2023update.bin KEK sudo chattr +i /sys/firmware/efi/efivars/KEK-* ```
Mettre à jour la base de données et la KEK sur Windows
Vous n'avez pas besoin d'appliquer ces mises à jour de certificat si vous n'utilisez pas ou ne prévoyez pas d'utiliser le démarrage sécurisé sur cette instance. Les systèmes d'exploitation Windows ignorent généralement les tentatives d'application de ces mises à jour de certificats de démarrage sécurisé si le démarrage sécurisé n'est pas activé, car la mise à jour n'est pas nécessaire.
Si vous prévoyez d'utiliser le démarrage sécurisé ultérieurement, vous devez d'abord l'activer sur l'instance pour mettre à jour les certificats de démarrage sécurisé.
Sur les instances Windows, les paramètres de registre et les tâches planifiées déclenchent les mises à jour sur les versions compatibles :
- Assurez-vous que les mises à jour mensuelles récentes ont été appliquées à vos instances Windows.
En tant qu'administrateur dans PowerShell, exécutez :
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x5944 Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"Redémarrez l'instance pour autoriser les opérations sur les variables du micrologiciel. Certains environnements nécessitent un double redémarrage si les fonctionnalités de sécurité de la virtualisation sont actives.
Vérifier la mise à jour
Après avoir appliqué les mises à jour à l'aide de fwupd, efitools, sbsigntool ou PowerShell, vérifiez que les certificats 2023 sont présents dans les variables UEFI de votre instance.
Linux
Quel que soit l'outil utilisé pour appliquer la mise à jour, les certificats sont écrits dans les variables NVRAM UEFI de l'instance. Vous pouvez les valider directement à l'aide de mokutil (recommandé) ou de efi-readvar :
Utiliser
mokutil(recommandé) :mokutilest installé par défaut sur la plupart des distributions Linux.sudo mokutil --kek | grep "KEK 2K CA 2023" sudo mokutil --db | grep "UEFI CA 2023"Utilisation de
efi-readvar: siefitoolsest installé, exécutez la commande suivante :sudo efi-readvar -v KEK | grep "KEK 2K CA 2023" sudo efi-readvar -v db | grep "UEFI CA 2023"
Si les variables KEK et db affichent les certificats de 2023, la mise à jour a été appliquée avec succès et aucune autre action n'est requise.
Windows
Dans une invite PowerShell d'administrateur, exécutez la commande suivante :
# 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
Résoudre les problèmes de mise à jour de la clé de chiffrement de clé
Lorsque vous mettez à jour la variable KEK sur Linux, la mise à jour de db (DBUpdate3P2023.bin) peut réussir, tandis que celle de KEK (kek2023update.bin) échoue avec l'une des erreurs suivantes :
Lorsque vous utilisez
sbkeysync:Inserting key update /etc/secureboot/keys/KEK/kek2023update.bin into KEK Error writing key update: Invalid argument Error syncing keystore file /etc/secureboot/keys/KEK/kek2023update.binLorsque vous utilisez
efi-updatevar:Cannot write to KEK, wrong filesystem permissions
Cause
Dans le démarrage sécurisé UEFI, les mises à jour db (DBUpdate3P2023.bin) sont signées par l'autorité de certification KEK 2011 de Microsoft Corporation, qui est enregistrée par défaut sur la plupart des systèmes de démarrage sécurisé UEFI. Toutefois, les mises à jour KEK doivent être signées par la clé de plate-forme (PK) enregistrée dans le micrologiciel du système. Lorsque le micrologiciel rejette la signature sur kek2023update.bin ou empêche l'écriture dans la variable UEFI, le noyau Linux renvoie une erreur.
Cette erreur se produit pour l'une des raisons suivantes :
- La variable UEFI
KEKest toujours marquée comme immuable : la commandechattr -in'a pas été exécutée avant la tentative d'opération d'écriture. - L'instance utilise un
PKpersonnalisé : l'archive1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabcontient un binairekek2023update.binsigné exclusivement par lePKCompute Engine par défaut. Si votre instance Compute Engine ou votre image personnalisée est associée à unPKpersonnalisé, le micrologiciel rejettekek2023update.bin. - Le système n'est pas une instance Compute Engine : si vous exécutez ces commandes sur du matériel physique ou une machine virtuelle en dehors de Compute Engine, le
PKdu système appartient au fabricant du matériel ou au fournisseur de l'hyperviseur plutôt qu'à Compute Engine, ce qui entraîne le rejet dekek2023update.binpar le micrologiciel.
Solution
Pour diagnostiquer et résoudre l'erreur, procédez comme suit :
Assurez-vous de supprimer l'attribut immuable de la variable
KEKimmédiatement avant d'exécutersbkeysyncouefi-updatevar:sudo chattr -i /sys/firmware/efi/efivars/KEK-*Inspectez le
PKenregistré sur votre instance :sudo mokutil --pkSelon le résultat de
sudo mokutil --pk, effectuez l'une des actions suivantes :- Si l'instance utilise un
PKpersonnalisé : signez le binaire de mise à jourKEKavec la clé privée correspondant à votrePKpersonnalisé, ou recréez l'instance de calcul à partir d'un instantané de disque en utilisant une image qui s'appuie sur les certificats de démarrage sécurisé Compute Engine par défaut. - Si vous mettez à jour une machine autre que Compute Engine : supprimez
/etc/secureboot/keys/KEK/kek2023update.binet obtenez la mise à jourKEKauprès du fabricant de votre matériel ou du fournisseur de votre plate-forme (par exemple, en exécutantsudo fwupdmgr updatesi votre fournisseur le prend en charge).
- Si l'instance utilise un