Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat gumpalan AWS biner untuk UEFI Secure Boot
Anda dapat menggunakan langkah-langkah berikut untuk mengkustomisasi variabel UEFI Secure Boot selama pembuatan AMI. KEK yang digunakan dalam langkah-langkah ini berlaku per September 2021. Jika Microsoft memperbarui KEK, Anda harus menggunakan KEK terbaru.
Untuk membuat gumpalan AWS biner
-
Buat daftar tanda tangan PK kosong.
touch empty_key.crt cert-to-efi-sig-list empty_key.crt PK.esl
-
Unduh sertifikat KEK.
https://go.microsoft.com/fwlink/?LinkId=321185
-
Bungkus sertifikat KEK dalam daftar tanda tangan UEFI (
siglist
).sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_Win_KEK.esl MicCorKEKCA2011_2011-06-24.crt
-
Unduh sertifikat db Microsoft.
https://www.microsoft.com/pkiops/certs/MicWinProPCA2011_2011-10-19.crt https://www.microsoft.com/pkiops/certs/MicCorUEFCA2011_2011-06-27.crt
-
Hasilkan daftar tanda tangan 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
-
Unified Extensible Firmware Interface Forum tidak lagi menyediakan file DBX. Mereka sekarang disediakan oleh Microsoft di GitHub. Unduh pembaruan DBX terbaru dari repositori pembaruan Microsoft Secure Boot di secureboot_objects. https://github.com/microsoft/
-
Buka paket biner pembaruan yang ditandatangani.
Buat
SplitDbxContent.ps1
dengan konten skrip di bawah ini. Atau, Anda dapat menginstal skrip dari PowerShell Galerimenggunakan 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
Gunakan skrip untuk membongkar file DBX yang ditandatangani.
PS C:\Windows\system32> SplitDbxContent.ps1 .\dbx.bin
Ini menghasilkan dua file —
signature.p7
dancontent.bin
. Gunakancontent.bin
pada langkah berikutnya. -
Buat penyimpanan variabel UEFI menggunakan skrip
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
-
Periksa gumpalan biner dan penyimpanan variabel UEFI.
./uefivars.py -i aws -I uefiblob-microsoft-keys-empty-pk.bin -o json | less
-
Anda dapat memperbarui gumpalan dengan meneruskannya ke alat yang sama lagi.
./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
Keluaran yang diharapkan
Replacing PK Replacing KEK Replacing db Replacing dbx