Este documento fornece instruções para atualizar as variáveis de banco de dados de assinatura permitida (db) e de chave de troca de chaves (KEK) em instâncias de computação criadas antes de 7 de novembro de 2025 para confiar em certificados atualizados para a Inicialização segura.
A atualização de KEK e db é uma alternativa para clientes que não recriam as instâncias de computação afetadas.
Observação sobre os requisitos de reinicialização:ao contrário do Windows, o Linux não exige uma reinicialização do sistema para que as atualizações de assinatura de KEK e db sejam gravadas nas variáveis UEFI. O Linux grava atualizações imediatamente no armazenamento de NVRAM ou firmware após a execução do comando.
Antes de começar
Antes de atualizar os certificados de KEK e db da Inicialização segura, verifique se as instâncias exigem uma atualização e conclua os preparativos a seguir para evitar possíveis problemas de inicialização ou descriptografia:
- Verificação de pré-requisitos: Verifique se as instâncias exigem uma atualização de certificados de Inicialização segura.
- Integridade de dados e recuperação de chaves:localize as chaves de recuperação de criptografia de disco (BitLocker ou LUKS FDE) e faça backup dos dados críticos. A mudança de variáveis de segurança pode bloquear o acesso aos discos se a configuração estiver incorreta.
- Recomendação de sequenciamento de atualização do Linux:para instâncias do Linux, recomendamos atualizar a variável UEFI
dbpara a CA UEFI da Microsoft 2023 antes de atualizar para novos shims. Essa sequência ajuda a evitar um possível cenário de incompatibilidade de CA se uma atualização de shim assinada apenas com a CA UEFI da Microsoft 2023 for aplicada enquanto o banco de dados contém apenas o certificado de 2011. - Configurações personalizadas de PK ou KEK:se a instância usa variáveis de Inicialização segura personalizadas (como um
PKouKEKpersonalizado), os arquivos de atualização padrão (DBUpdate3P2023.binoukek2023update.bin) fornecidos neste guia não serão aplicados diretamente. O firmware UEFI exige que os arquivos de atualização sejam assinados pela chave privada doKEKouPKpresente no sistema. Se você usar chaves personalizadas, assine os binários de atualização com suas próprias chaves privadas ou gerencie as atualizações pela sua autoridade de certificação personalizada.
Atualizar db e KEK no Linux usando fwupd
As versões 2.0.10 ou mais recentes do fwupdmgr são compatíveis com esse método. Verifique sua versão executando sudo fwupdmgr --version.
Observação sobre RHEL 8/9 e SLES 15:os repositórios corporativos para RHEL 8/9 e SUSE Linux Enterprise Server (SLES) 15 fornecem versões anteriores do fwupdmgr (o RHEL 8 apresenta a versão 1.7.8, o RHEL 9 apresenta a versão 1.9.13 e o SLES 15 SP6 apresenta a versão 1.9.10), que não atendem ao limite de versão necessário. Se você estiver executando o RHEL 8/9 ou o SLES 15, faça uma destas ações: crie o fwupd da origem ou use os métodos sbsigntool/sbsigntools ou efitools descritos mais adiante.
Observação sobre SLES 12/15: os repositórios corporativos para SLES 12/15 não fornecem fwupd, e os repositórios do SUSE Package Hub para SLES 15 fornecem versões anteriores do fwupdmgr, que não atendem ao limite de versão necessário. Se você estiver executando o SLES 12, crie o fwupd da origem. Se você estiver executando o SLES 15, faça uma destas ações: crie o fwupd da origem ou use os métodos efitools ou sbsigntools descritos mais adiante usando backports disponíveis no SUSE Package Hub.
Execute o comando a seguir:
sudo fwupdmgr refresh
sudo fwupdmgr update 5bc922b7bd1adb5b6f99592611404036bd9f42d0
sudo fwupdmgr update b7a1d3d90faa1f6275d9a98da4fb3be7118e61c7
Atualizar db e KEK no Linux usando efitools
As etapas a seguir orientam você na atualização das variáveis db e KEK usando o pacote efitools.
Atualizar db
Faça o download do binário de atualização do repositório da Microsoft:
wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.binTorne a variável mutável, removendo o flag de proteção contra gravação:
sudo chattr -i /sys/firmware/efi/efivars/db-*Atualize a variável executando
efi-updatevar:sudo efi-updatevar -a -f DBUpdate3P2023.bin dbRestaure o flag de proteção contra gravação para proteger a variável:
sudo chattr +i /sys/firmware/efi/efivars/db-*
Atualizar KEK
Faça o download do arquivo
.cabque contém a atualização do certificado:wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabSe você não tiver o
gcabinstalado, instale-o. Por exemplo, execute uma destas ações:No Debian ou Ubuntu :
sudo apt update sudo apt install gcabNo SUSE Linux Enterprise Server (SLES) ou openSUSE (requer o SUSE Package Hub):
sudo SUSEConnect -p PackageHub/15.5/x86_64 sudo zypper install gcab(Observação: substitua
15.5pela versão do SLES, se for diferente).
Extraia o arquivo usando
gcab:gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabVerifique se o arquivo tem o hash MD5 esperado:
6a1c58e1b8391c0e3f2e97f83917807a.md5sum kek2023update.binTorne a variável
KEKmutável:sudo chattr -i /sys/firmware/efi/efivars/KEK-*Aplique a atualização:
sudo efi-updatevar -a -f kek2023update.bin KEKRestaure o flag de proteção contra gravação para proteger a variável:
sudo chattr +i /sys/firmware/efi/efivars/KEK-*
Atualizar db e KEK no Linux usando sbsigntool ou sbsigntools
As etapas a seguir orientam você na atualização das variáveis db e KEK usando o utilitário sbkeysync do pacote sbsigntool ou sbsigntools.
Observação sobre o nome e a disponibilidade do pacote :
- Debian e Ubuntu nomeiam o pacote de utilitários
sbsigntool(sem um "s" no final). Para instalar, execute:sudo apt install sbsigntool. - Distribuições baseadas em Red Hat Enterprise Linux (RHEL), CentOS e Fedora nomeiam o pacote de utilitários
sbsigntools(com um "s" no final). O repositório EPEL (Extra Packages for Enterprise Linux) fornece esse pacote. Para instalar no RHEL, ative o repositório EPEL (sudo dnf install epel-release) e execute:sudo dnf install sbsigntools. - SUSE Linux Enterprise Server (SLES) e openSUSE também nomeiam o pacote de utilitários
sbsigntools. O repositório do SUSE Package Hub fornece esse pacote. Para instalar, ative o SUSE Package Hub (por exemplo,sudo SUSEConnect -p PackageHub/15.5/x86_64, substituindo15.5pela versão do SLES) e execute:sudo zypper install sbsigntools.
Atualizar db
Faça o download do binário de atualização do repositório da Microsoft:
wget https://github.com/microsoft/secureboot_objects/raw/refs/heads/main/PostSignedObjects/Optional/DB/amd64/DBUpdate3P2023.binColoque o arquivo na pasta apropriada para
sbkeysync, tornedbmutável e execute a sincronização: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 --verboseRestaure o flag de proteção contra gravação para proteger a variável:
sudo chattr +i /sys/firmware/efi/efivars/db-*
Atualizar KEK
Para atualizar a variável KEK, faça o download do arquivo de gabinete de atualizações do KEK da Microsoft, extraia o binário de atualização e sincronize-o usando o utilitário sbkeysync. As seções a seguir explicam como extrair o binário com base na sua distribuição:
Faça o download do arquivo
.cabque contém a atualização do certificado KEK:wget https://fwupd.org/downloads/1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabExtraia o arquivo
.cabpara receber o binário de atualização do KEK (kek2023update.bin):No Debian/Ubuntu usando o utilitário
gcab:sudo apt update && sudo apt install gcab -y gcab --extract 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabEm distribuições baseadas em RHEL/CentOS (como RHEL 8/9) usando o utilitário
cabextractdo EPEL:sudo dnf install epel-release -y sudo dnf install cabextract -y cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cabNo SUSE Linux Enterprise Server (SLES) e openSUSE usando o utilitário
cabextractdo SUSE Package Hub:sudo SUSEConnect -p PackageHub/15.5/x86_64 sudo zypper install cabextract -y cabextract -f 1953fae13600a35944e93cd244476a6f6ce5fdbf620709b2f6f378fac2ae3bef-KEK-google_compute_engine.cab(Observação: substitua
15.5pela versão do SLES, se for diferente).
Verifique se o arquivo
kek2023update.binextraído tem o hash MD5 esperado:6a1c58e1b8391c0e3f2e97f83917807a.md5sum kek2023update.binColoque o binário na pasta apropriada para
sbkeysync, torne a variávelKEKmutável e execute a sincronização: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 --verboseRestaure o flag de proteção contra gravação para proteger a variável:
sudo chattr +i /sys/firmware/efi/efivars/KEK-*
Atualizar db e KEK no Windows
Não é necessário aplicar essas atualizações de certificado se você não usar ou planejar usar a Inicialização segura nessa instância. Os sistemas operacionais Windows geralmente ignoram tentativas de aplicar essas atualizações de certificado de Inicialização segura se a Inicialização segura não estiver ativada, porque a atualização é desnecessária.
Se você pretende usar a Inicialização segura mais tarde, primeiro ative a Inicialização segura na instância para atualizar os certificados de inicialização segura.
Em instâncias do Windows, as configurações do registro e as tarefas agendadas acionam atualizações em versões compatíveis:
- Verifique se as instâncias do Windows têm atualizações mensais recentes aplicadas.
Como administrador no PowerShell, execute:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot" -Name "AvailableUpdates" -Value 0x5944 Start-ScheduledTask -TaskName "\Microsoft\Windows\PI\Secure-Boot-Update"Reinicie a instância para permitir operações em variáveis de firmware. Alguns ambientes exigem reinicializações duplas se os recursos de segurança de virtualização estiverem ativos.