1
0
mirror of https://github.com/pbatard/rufus.git synced 2026-10-24 02:28:58 +03:00

[dbx] update DBX paths and DBX to latest

* With the use of KEK 2023 to sign the newer DBXs, the paths have been altered so use the new paths.
* Also detect if local DBX files were deleted by the user so that we can re-download them.
* Addresses part of #3039.
This commit is contained in:
Pete Batard
2026-09-09 11:06:16 +01:00
parent b4a62a4e01
commit 18ae93bf37
14 changed files with 37 additions and 35 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
res/dbx/dbx_arm.efiauth2 Normal file

Binary file not shown.

BIN
res/dbx/dbx_ia32.efiauth2 Normal file

Binary file not shown.

View File

@@ -7,11 +7,11 @@ struct {
char* url;
uint64_t timestamp;
} dbx_info[] = {
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/x86/DBXUpdate.bin", 1760555920 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/amd64/DBXUpdate.bin", 1760555920 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/arm/DBXUpdate.bin", 1740428422 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/arm64/DBXUpdate.bin", 1740428422 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/ia64/DBXUpdate.bin", 0 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/riscv64/DBXUpdate.bin", 0 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/loongarch64/DBXUpdate.bin", 0 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_ia32.efiauth2", 1788300339 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_x64.efiauth2", 1788300339 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_arm.efiauth2", 1788300339 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_aarch64.efiauth2", 1788300339 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_ia64.efiauth2", 0 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_riscv64.efiauth2", 0 },
{ "https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_loongarch64.efiauth2", 0 },
};

View File

@@ -19,13 +19,13 @@ get_commit_date() {
# Also use api.github.com (which is rate limited) so we don't get the stupid 404 GitHub page on error, which is 10
# times larger than our largest DBX update binary...
declare -a dbx_urls=(
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/x86/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/amd64/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/arm/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/arm64/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/ia64/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/riscv64/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/DBX/loongarch64/DBXUpdate.bin'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_ia32.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_x64.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_arm.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_aarch64.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_ia64.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_riscv64.efiauth2'
'https://api.github.com/repos/microsoft/secureboot_objects/contents/PostSignedObjects/SignedByKEK2023/dbx_loongarch64.efiauth2'
)
cat << EOF > dbx_info.h

Binary file not shown.

View File

@@ -507,7 +507,10 @@ static void CheckForDBXUpdates(int verbose)
vuprintf("DBX update timestamp is %" PRId64, timestamp);
static_sprintf(reg_name, "DBXTimestamp_%s", efi_archname[i + 1]);
// Check if we have an external DBX that is newer than embedded/last downloaded
if (timestamp <= MAX(dbx_info[i].timestamp, (uint64_t)ReadSetting64(reg_name)))
if (timestamp <= dbx_info[i].timestamp)
continue;
static_sprintf(path, "%s\\%s\\dbx_%s.bin", app_data_dir, FILES_DIR, efi_archname[i + 1]);
if (PathFileExistsU(path) && timestamp <= (uint64_t)ReadSetting64(reg_name))
continue;
if (!already_prompted) {
r = Notification(MB_YESNO | MB_ICONWARNING, lmprintf(MSG_353), lmprintf(MSG_354));
@@ -518,7 +521,6 @@ static void CheckForDBXUpdates(int verbose)
IGNORE_RETVAL(_mkdir(FILES_DIR));
IGNORE_RETVAL(_chdir(FILES_DIR));
}
static_sprintf(path, "%s\\%s\\dbx_%s.bin", app_data_dir, FILES_DIR, efi_archname[i + 1]);
if (DownloadToFileOrBuffer(dbx_info[i].url, path, NULL, NULL, FALSE) != 0) {
WriteSetting64(reg_name, timestamp);
uprintf("Saved %s as 'dbx_%s.bin'", dbx_info[i].url, efi_archname[i + 1]);

View File

@@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 232, 326
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_ACCEPTFILES
CAPTION "Rufus 4.15.2403"
CAPTION "Rufus 4.15.2404"
FONT 9, "Segoe UI Symbol", 400, 0, 0x0
BEGIN
LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP
@@ -315,13 +315,13 @@ BEGIN
"IDR_MD5_BOOTAA64 RCDATA ""../res/md5/bootaa64.efi""\r\n"
"IDR_MD5_BOOTRISCV64 RCDATA ""../res/md5/bootriscv64.efi""\r\n"
"IDR_MD5_BOOTLOONGARCH64 RCDATA ""../res/md5/bootloongarch64.efi""\r\n"
"IDR_DBX_IA32 RCDATA ""../res/dbx/x86_DBXUpdate.bin""\r\n"
"IDR_DBX_X64 RCDATA ""../res/dbx/amd64_DBXUpdate.bin""\r\n"
"IDR_DBX_ARM RCDATA ""../res/dbx/arm_DBXUpdate.bin""\r\n"
"IDR_DBX_AA64 RCDATA ""../res/dbx/arm64_DBXUpdate.bin""\r\n"
"IDR_DBX_IA64 RCDATA ""../res/dbx/ia64_DBXUpdate.bin""\r\n"
"IDR_DBX_RISCV64 RCDATA ""../res/dbx/riscv64_DBXUpdate.bin""\r\n"
"IDR_DBX_LOONGARCH64 RCDATA ""../res/dbx/loongarch64_DBXUpdate.bin""\r\n"
"IDR_DBX_IA32 RCDATA ""../res/dbx/dbx_ia32.efiauth2""\r\n"
"IDR_DBX_X64 RCDATA ""../res/dbx/dbx_x64.efiauth2""\r\n"
"IDR_DBX_ARM RCDATA ""../res/dbx/dbx_arm.efiauth2""\r\n"
"IDR_DBX_AA64 RCDATA ""../res/dbx/dbx_aarch64.efiauth2""\r\n"
"IDR_DBX_IA64 RCDATA ""../res/dbx/dbx_ia64.efiauth2""\r\n"
"IDR_DBX_RISCV64 RCDATA ""../res/dbx/dbx_riscv64.efiauth2""\r\n"
"IDR_DBX_LOONGARCH64 RCDATA ""../res/dbx/dbx_loongarch64.efiauth2""\r\n"
"IDI_LANG_16 RCDATA ""../res/icons/lang-16.png""\r\n"
"IDI_INFO_16 RCDATA ""../res/icons/info-16.png""\r\n"
"IDI_SETTINGS_16 RCDATA ""../res/icons/settings-16.png""\r\n"
@@ -409,8 +409,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 4,15,2403,0
PRODUCTVERSION 4,15,2403,0
FILEVERSION 4,15,2404,0
PRODUCTVERSION 4,15,2404,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@@ -428,13 +428,13 @@ BEGIN
VALUE "Comments", "https://rufus.ie"
VALUE "CompanyName", "Akeo Consulting"
VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "4.15.2403"
VALUE "FileVersion", "4.15.2404"
VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "© 2011-2026 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html"
VALUE "OriginalFilename", "rufus-4.15.exe"
VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "4.15.2403"
VALUE "ProductVersion", "4.15.2404"
END
END
BLOCK "VarFileInfo"
@@ -510,13 +510,13 @@ IDR_MD5_BOOTARM RCDATA "../res/md5/bootarm.efi"
IDR_MD5_BOOTAA64 RCDATA "../res/md5/bootaa64.efi"
IDR_MD5_BOOTRISCV64 RCDATA "../res/md5/bootriscv64.efi"
IDR_MD5_BOOTLOONGARCH64 RCDATA "../res/md5/bootloongarch64.efi"
IDR_DBX_IA32 RCDATA "../res/dbx/x86_DBXUpdate.bin"
IDR_DBX_X64 RCDATA "../res/dbx/amd64_DBXUpdate.bin"
IDR_DBX_ARM RCDATA "../res/dbx/arm_DBXUpdate.bin"
IDR_DBX_AA64 RCDATA "../res/dbx/arm64_DBXUpdate.bin"
IDR_DBX_IA64 RCDATA "../res/dbx/ia64_DBXUpdate.bin"
IDR_DBX_RISCV64 RCDATA "../res/dbx/riscv64_DBXUpdate.bin"
IDR_DBX_LOONGARCH64 RCDATA "../res/dbx/loongarch64_DBXUpdate.bin"
IDR_DBX_IA32 RCDATA "../res/dbx/dbx_ia32.efiauth2"
IDR_DBX_X64 RCDATA "../res/dbx/dbx_x64.efiauth2"
IDR_DBX_ARM RCDATA "../res/dbx/dbx_arm.efiauth2"
IDR_DBX_AA64 RCDATA "../res/dbx/dbx_aarch64.efiauth2"
IDR_DBX_IA64 RCDATA "../res/dbx/dbx_ia64.efiauth2"
IDR_DBX_RISCV64 RCDATA "../res/dbx/dbx_riscv64.efiauth2"
IDR_DBX_LOONGARCH64 RCDATA "../res/dbx/dbx_loongarch64.efiauth2"
IDI_LANG_16 RCDATA "../res/icons/lang-16.png"
IDI_INFO_16 RCDATA "../res/icons/info-16.png"
IDI_SETTINGS_16 RCDATA "../res/icons/settings-16.png"