Commit Graph

58 Commits

Author SHA1 Message Date
Nikolaj Schlej
b8567d32cc Fix FfsParser issues found by fuzzing
Resolve alignment issue with guidToUstring
2023-02-26 16:27:27 -08:00
Nikolaj Schlej
7eb565d788 Switch AMI NVAR parser to Kaitai 2023-02-19 12:24:20 -08:00
Nikolaj Schlej
6f9dc0ab88 Fix Unicode search 2023-02-16 22:11:39 -08:00
Nikolaj Schlej
cb6ef45d0c Add -h/--help and -v/--version support to commandline tools 2023-02-15 16:54:32 -08:00
Nikolaj Schlej
c4ed9c310d Fix the issue with CMake install for UEFIExtract and UEFIFind
Trying to fix the issue with CMake install #2
2023-02-15 16:35:01 -08:00
Nikolaj Schlej
4053a8fe72 Add install targets to CMake files 2023-02-12 13:08:35 -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
1675498d4d Add UEFIFind as a meson target 2022-09-02 13:02:51 +02:00
joevt
f9c35f77a6 Improve firmware parser and tool robustness
closes #241
2021-10-07 18:51:39 +03: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
vit9696
1ac6e6a4f0 Multiple improvements and bugfixes
1. Fixes #158, UEFITool and UEFIFind failed to lookup pattern crossing header/body boundary
2. Fixes #159, filter out more symbols in fileanems, which are prohibited by different filesystems
3. Add more known file GUIDs
4. Add basic support for FMP images
5. Fix unaligned read in uint24ToUint32
6. Fix compilation with latest cmake requiring directory path
2019-01-20 13:23:28 +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
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
b60a49bef3 Fix not working comparison 2018-06-03 03:42:35 +03:00
vit9696
a5b2f00f9b Make imagefile first arg of UEFIFind 2018-06-02 20:56:17 +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
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
9b85fac61b UEFIFind and nvramparser.cpp bugfixes 2017-07-22 21:43:20 +03: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
Nikolaj Schlej
0114a72fa5 Build fixes for Windows builds
- now to test in OSX and Linux
2016-07-09 10:01:41 +02:00
Nikolaj Schlej
9045fc6cc0 Merge Qt/non-Qt codebase
- added UEFIDump tool, which is now Windows-only UEFIExtract with some
limitations, made as PoC for non-Qt engine usage
- ensured that Qt classes will be used, if available
- checked build of UT and UE
- porting of UEFIFind to non-Qt engine TBD
2016-07-07 07:57:45 +02:00
Laptander
0b49227ade Add nvram source and header to .pro files 2016-04-20 21:42:30 +03:00
Nikolaj Schlej
80a2d57f62 Removed '_' symbols in include guards
which are violating DCL51-CPP rule, closing #46
2016-04-09 12:47:19 +02:00
Nikolaj Schlej
f729dd58b7 UE 0.10.8 / UF 0.10.6
- removed usage of QSet, QPair and Q_FOREACH
- removed dependency from QObject for FfsDumper and UEFIFind classes
2016-03-01 09:12:37 +01:00
Nikolaj Schlej
4cf6b4f37b UT NE A19
Thanks to lordkag for #41:
- improved parsing of Intel flash descriptor
- improved detection of Tiano/EFI 1.1 compression type
- added 2 UEFI capsule GUIDs used by Lenovo
- solved potential crash on very low memory available
- UEFIExtract and UEFIFind update to include the latest parser changes
2016-02-02 02:08:08 +01:00
Nikolaj Schlej
d1add47500 UF 0.10.4.1
- solved a problem with left on empty QByteArray
2015-12-29 23:39:53 +01:00
Nikolaj Schlej
5497248d40 UF QT4 compatibility
- toStdString() replaced with constData() for QByteArray
- solved a problem with return codes interpreted as chars
2015-12-12 20:28:44 +01:00
Nikolaj Schlej
2b21053fca UF 0.10.4
- rebuilt with new engine version
- bumped version number
2015-12-12 20:14:45 +01:00
Nikolaj Schlej
bf6f3cb785 Another bump of version numbers
- due to #37 fix for ffsParser
2015-10-05 23:15:47 +02:00
Nikolaj Schlej
e0750a7b68 Bump version numbers
due to previous fixes for #34 and #35
2015-10-02 11:46:54 +02:00
Nikolaj Schlej
788397f60c UF 0.10.1
- added newline to the messages
- corrected a typo in quick help string
2015-09-19 07:58:58 +02:00
Nikolaj Schlej
89c54dba8d UEFIFind 0.10.0
Port of UBU helper utility to new_engine branch
2015-09-13 14:15:26 +02:00
Nikolaj Schlej
1f0a80d035 First commit of the new_engine branch
- new ffsParser is done, supports FFSv3, non-UEFI data everywhere, fixed
files, offsets for uncompressed data and many other things
- command-line utilities are removed until the end of new engine's
development
2015-03-13 07:48:53 +01:00