uefi_retool
v1.2.0
A tool for UEFI firmware reverse engineering.
Usage:
ida_plugin/uefi_analyser.py script and ida_plugin/uefi_analyser directory to IDA plugins directoryconfig.json file
PE_DIR is a directory that contains all executable images from the UEFI firmwareDUMP_DIR is a directory that contains all components from the firmware filesystemLOGS_DIR is a directory for logsIDA_PATH and IDA64_PATH are paths to IDA Pro executable filespip install -r requirements.txtpython uefi_retool.py command to display the help messagepython uefi_retool.pyUsage: uefi_retool.py [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
get-images Get executable images from UEFI firmware.
get-info Analyze the entire UEFI firmware.
get-pp Get a list of proprietary protocols in the UEFI firmware.
python uefi_retool.py get-images --helpUsage: uefi_retool.py get-images [OPTIONS] FIRMWARE_PATH
Get executable images from UEFI firmware. Images are stored in "modules"
directory.
Options:
--help Show this message and exit.
Example:
python uefi_retool.py get-images test_fw/fw-tp-x1-carbon-5th.binpython uefi_retool.py get-info --helpUsage: uefi_retool.py get-info [OPTIONS] FIRMWARE_PATH
Analyze the entire UEFI firmware. The analysis result is saved to .json
file.
Options:
-w, --workers INTEGER Number of workers (8 by default).
--help Show this message and exit.
Example:
python uefi_retool.py get-info -w 6 test_fw/fw-tp-x1-carbon-5th.binpython uefi_retool.py get-pp --helpUsage: uefi_retool.py get-pp [OPTIONS] FIRMWARE_PATH
Get a list of proprietary protocols in the UEFI firmware. The result is
saved to .json file.
Options:
-w, --workers INTEGER Number of workers (8 by default).
--help Show this message and exit.
Example:
python uefi_retool.py get-pp -w 6 test_fw/fw-tp-x1-carbon-5th.bintools/update_edk2_guids.py is a script that updates protocol GUIDs list from edk2 projectIDA plugin for UEFI analysis