Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Créez le blob AWS binaire pour UEFI Secure Boot
Vous pouvez utiliser les étapes suivantes pour personnaliser les variables Secure Boot UEFI lors de la création de l’AMI. La KEK utilisée dans ces étapes est en date de septembre 2021. Si Microsoft met à jour la KEK, vous devez utiliser la KEK la plus récente.
Pour créer le AWS blob binaire
-
Créez une liste de signatures PK vide.
touch empty_key.crt cert-to-efi-sig-list empty_key.crt PK.esl
-
Téléchargez les certificats KEK.
https://go.microsoft.com/fwlink/?LinkId=321185
-
Enveloppez les certificats KEK dans une liste de signatures UEFI (
siglist
).sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_Win_KEK.esl MicCorKEKCA2011_2011-06-24.crt
-
Téléchargez les certificats db de Microsoft.
https://www.microsoft.com/pkiops/certs/MicWinProPCA2011_2011-10-19.crt https://www.microsoft.com/pkiops/certs/MicCorUEFCA2011_2011-06-27.crt
-
Générez la liste de signatures db.
sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_Win_db.esl MicWinProPCA2011_2011-10-19.crt sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_UEFI_db.esl MicCorUEFCA2011_2011-06-27.crt cat MS_Win_db.esl MS_UEFI_db.esl > MS_db.esl
-
Le forum Unified Extensible Microware Interface ne fournit plus les fichiers DBX. Ils sont désormais fournis par Microsoft le GitHub. Téléchargez la dernière mise à jour DBX depuis le référentiel de mises à jour Microsoft Secure Boot à l'adresse https://github.com/microsoft/secureboot_objects
. -
Décompressez le binaire de mise à jour signé.
Créez
SplitDbxContent.ps1
à l'aide du contenu du script ci-dessous. Vous pouvez également installer le script depuis PowerShell Galleryà l'aide de Install-Script -Name SplitDbxContent
.<#PSScriptInfo .VERSION 1.0 .GUID ec45a3fc-5e87-4d90-b55e-bdea083f732d .AUTHOR Microsoft Secure Boot Team .COMPANYNAME Microsoft .COPYRIGHT Microsoft .TAGS Windows Security .LICENSEURI .PROJECTURI .ICONURI .EXTERNALMODULEDEPENDENCIES .REQUIREDSCRIPTS .EXTERNALSCRIPTDEPENDENCIES .RELEASENOTES Version 1.0: Original published version. #> <# .DESCRIPTION Splits a DBX update package into the new DBX variable contents and the signature authorizing the change. To apply an update using the output files of this script, try: Set-SecureBootUefi -Name dbx -ContentFilePath .\content.bin -SignedFilePath .\signature.p7 -Time 2010-03-06T19:17:21Z -AppendWrite' .EXAMPLE .\SplitDbxAuthInfo.ps1 DbxUpdate_x64.bin #> # Get file from script input $file = Get-Content -Encoding Byte $args[0] # Identify file signature $chop = $file[40..($file.Length - 1)] if (($chop[0] -ne 0x30) -or ($chop[1] -ne 0x82 )) { Write-Error "Cannot find signature" exit 1 } # Signature is known to be ASN size plus header of 4 bytes $sig_length = ($chop[2] * 256) + $chop[3] + 4 $sig = $chop[0..($sig_length - 1)] if ($sig_length -gt ($file.Length + 40)) { Write-Error "Signature longer than file size!" exit 1 } # Content is everything else $content = $file[0..39] + $chop[$sig_length..($chop.Length - 1)] # Write signature and content to files Set-Content -Encoding Byte signature.p7 $sig Set-Content -Encoding Byte content.bin $content
Utilisez le script pour décompresser les fichiers DBX signés.
PS C:\Windows\system32> SplitDbxContent.ps1 .\dbx.bin
Cela produit deux fichiers —
signature.p7
etcontent.bin
.content.bin
À utiliser à l'étape suivante. -
Créez un magasin de variables UEFI à l’aide du script
uefivars.py
../uefivars.py -i none -o aws -O uefiblob-microsoft-keys-empty-pk.bin -P ~/PK.esl -K ~/MS_Win_KEK.esl --db ~/MS_db.esl --dbx ~/content.bin
-
Vérifiez le blob binaire et le magasin de variables UEFI.
./uefivars.py -i aws -I uefiblob-microsoft-keys-empty-pk.bin -o json | less
-
Vous pouvez mettre à jour le blob en le transmettant à nouveau au même outil.
./uefivars.py -i aws -I uefiblob-microsoft-keys-empty-pk.bin -o aws -O uefiblob-microsoft-keys-empty-pk.bin -P ~/PK.esl -K ~/MS_Win_KEK.esl --db ~/MS_db.esl --dbx ~/content.bin
Sortie attendue
Replacing PK Replacing KEK Replacing db Replacing dbx