Commit graph

96 commits

Author SHA1 Message Date
Nikolaj Schlej
7337f15ec9 Implement parsing for AMD-specific Zlib-compressed GUIDed section
Fix incorrect overflow check in parsing volume block map
2022-12-23 22:49:37 -08:00
Nikolaj Schlej
934ce1f3f8 Kaitai-based Intel ACM and BootGuard parsers
As the first step towards automated parsing, this change set replaces outdated BootGuard-related parsers with shiny new KaitaiStruct-based ones.
It also does the following:
- improves Intel FIT definitions by using the relevant specification
- adds sha1, sha384, sha512 and sm3 digest implementations
- updates LZMA SDK to v22.01
- moves GUIDs out of include files to prevent multiple instantiations
- enforces C++11
- adds Kaitai-based parsers for Intel FIT, BootGuard v1 and BootGuard v2 structures
- makes many small refactorings here, there and everywhere
2022-09-10 13:14:29 +02:00
Richard Hughes
d93f1ae749 Remove an extraneous meson parameter 2022-09-02 13:02:51 +02:00
Richard Hughes
eef00f73a4 Add Meson buildsystem
This allows UEFIExtract to build on a greater variety of targets and more
importantly allows us to build with the system-defined hardening protections
present in enterprise distributions.
2022-09-01 20:44:13 +02:00
joevt
f9c35f77a6 Improve firmware parser and tool robustness
closes #241
2021-10-07 18:51:39 +03:00
glgspg
10295bd0dd Added security info to UEFIExtract 2020-11-09 14:33:43 +01:00
Nikolaj Schlej
24cf452024 UE/UF: remove cmake 3.15+ property, need a different solution 2020-11-08 11:05:42 -08:00
Nikolaj Schlej
55b7a759ff UE/UF: user static CRT by default for Windows builds, take 2 2020-11-07 18:11:16 -08:00
Nikolaj Schlej
92d0a8f754 Revert "UE/UF: user static CRT by default for Windows builds"
This reverts commit d69aca6554.
2020-11-07 18:05:12 -08:00
Nikolaj Schlej
d69aca6554 UE/UF: user static CRT by default for Windows builds 2020-11-07 17:57:13 -08:00
Nikolai SAOUKH
a2d7169a82 cmake files: add EOL to last line(s) 2020-07-20 13:15:08 +03:00
vit9696
0f2ede398d Implement LZMAF86 support
references #197
2020-03-06 23:54:20 +03:00
Nikolaj Schlej
90ff19692d Add support for IFWI 1.7 and 2.0 layouts, improve ME parser, fix small issues spotted by static analysis 2019-08-19 11:36:02 -07:00
vit9696
2cbd78fb9e Fix directory creation error in UEFIExtract default mode 2019-03-08 03:07:58 +03:00
vit9696
d9325c22fe Fix #152, caused by multiple body match 2018-11-24 22:48:41 +03:00
vit9696
7ab6dd4285 Fix header&body extraction 2018-11-14 19:09:48 +03:00
vit9696
5b26775463 Rename readMisaligned to readUnaligned 2018-11-12 09:24:55 +03:00
vit9696
4dcd6b26a3 Implement gzip unpacking, fixes #149 2018-11-11 16:33:13 +03:00
vit9696
aa0ab13411 Fix duplicates in UEFIExtract 2018-11-11 14:15:11 +03:00
vit9696
14e72cb03a More #147 fixes 2018-10-11 11:39:09 +03:00
vit9696
bc3193420c Fix #144 2018-10-10 23:41:53 +03:00
vit9696
021da9df4c Fix file extraction in UEFIExtract 2018-10-10 23:32:58 +03:00
vit9696
49e8e02b77 Remove debug code added by mistake 2018-10-10 17:23:45 +03:00
vit9696
7e1e1ab61e Bugfixes for #147 2018-10-10 17:20:00 +03:00
vit9696
0a634ebcbd Merge recent updates but without broken builder and with minor refactoring and bugfixes 2018-10-08 12:58:12 +03:00
vit9696
8f6c8ef5cc Untie guid database from Qt 2018-08-02 05:37:09 +03:00
vit9696
6982aace9b Remove UEFIDump 2018-08-02 04:12:03 +03:00
vit9696
4d50d581fa Remove Qt deps from UEFIFind and fix issues 2018-08-02 03:41:11 +03:00
vit9696
7d16c1d48d Buildfix 2018-07-13 00:31:46 +03:00
vit9696
c9db871c12 Rough attempt to deglue UEFIExtract from Qt 2018-07-13 00:17:08 +03:00
vit9696
aee2831b25 Fix info extension 2018-06-13 21:58:26 +03:00
vit9696
c70d448056 Add file extraction mode to UEFIExtract 2018-06-13 19:53:18 +03:00
vit9696
d23c1a682a Do not overwrite extracted files in UEFIExtract 2018-06-12 17:14:32 +03:00
vit9696
dccc335886 Fix subguid search in uefiextract 2018-06-08 09:32:12 +03:00
vit9696
53a0887112 Allow specialised output in UEFIExtract 2018-06-02 21:59:57 +03:00
vit9696
4f9f31ef71 Unify version scheme and fix minor issues 2018-05-22 00:59:23 +03:00
vit9696
fc2cd74755 Increment version 2018-05-08 19:35:14 +03:00
vit9696
23c4006979 Version bump 2018-05-04 21:52:25 +03:00
Alex Matrosov
e3ace324ee bugfix 2018-04-29 22:33:19 -07:00
Cr4sh
a4e38090b0 NE Alpha 46 2018-02-15 06:02:53 +03:00
Alex Matrosov
63088afd87 A45
+ FFSv3 support with large files and large sections
+ proper names for Flash Descriptor v2 regions (#89)
+ better alignment calculations (#96)
+ improved NVRAM parser
+ post IBB hash support for Boot Guard
+  bugfixes
+ companion tool updated
2017-12-10 17:56:00 -08:00
Alex Matrosov
68df5a64a3 NE Alpha 43
add visual validation of Intel Boot Guard coverage
2017-10-11 22:59:23 -07:00
Cr4sh
0f0bc32a42 NE Alpha 40 2017-02-14 09:39:16 +03:00
Cr4sh
0e09dfe1b2 NE Alpha 38 2017-01-14 03:24:56 +03:00
Cr4sh
4160a6a580 NE Alpha 35 2016-11-03 02:40:38 +07:00
Alex Matrosov
cb430456bf NE Alpha 33
- human readable JEDEC ID
- NVRAM parser separated from FFS parser
- added support for LZMAF86 sections
- solved a bug with parsing of VSS variables with invalid sizes
2016-10-09 23:05:04 -07:00
Nikolaj Schlej
03567dbe66 FIT checksum bugfix
- and small refactorings
2016-07-18 06:49:31 +02:00
Nikolaj Schlej
59a6f298ee Move fitParser to ffsParser
- required to set fixed properly
2016-07-14 21:22:51 +02:00
Nikolaj Schlej
4381bc6103 Bugfix for UE 0.12.2
- some testing code leaked to UE, reverted
2016-07-09 11:18:11 +02:00
Nikolaj Schlej
589dbd5719 UT NE A30, UE 0.12.1, UD 0.1.0
- engine modifications require to make a new release of UT and UE
- UEFIDump 0.1.0 with Qt-free engine, at last
2016-07-09 10:42:49 +02:00