VeraCrypt
VeraCrypt copied to clipboard
DcsBoot.efi contains an invalid section name
DcsBoot.efi contains an invalid section name:
$ fwupdtool firmware-parse DcsBoot.efi pefile
failed to read section 0x2: invalid section name
Looking deeper, it's indeed 8 bytes of NUL.
$ fwupdtool firmware-parse /home/hughsie/Downloads/DcsBoot.efi pefile -vv
FuStructPeCoffSection:
virtual_size: 0x18c
virtual_address: 0x3920
size_of_raw_data: 0x1a0
pointer_to_raw_data: 0x3920
characteristics: 0x42000040
Expected behavior
I expected all sections to have a name -- the others do, e.g. .data, .text etc. Although https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#section-table-section-headers doesn't explicitly forbid it, it's certainly not in the spirit of the PE/COFF standard.
It also breaks deployment of the dbx update on Linux systems as we check all the PE files in the ESPs for blocked Authenticode hashes before we update the dbx key.