Releases: redballoonsecurity/ofrak
Releases · redballoonsecurity/ofrak
ofrak-v3.2.0
Added
- Add a JFFS2 packer and unpacker. (#326)
- Add method to Resource and data service to search for patterns in its data (#333)
- Add search bars to GUI in order to search for a string or bytes within a resource. (#345)
- Add Identifier, Unpacker, Packer for Intel Hex format. (#349)
- Add unpackers for EXT filesystems (versions 2 through 4). (#337)
- A new feature that allows users to create an OFRAK "project" that contains a collection of scripts and binaries. (#360)
Changed
- Support uploading files in chunks to handle files larger than 2GB from the GUI (#324)
Fixed
- Save resources affected by data patches and dependency updates on a resource being saved (#355)
ofrak-patch-maker-v4.0.2
Fixed
- Remove option to read or install toolchain.conf from/to "/etc/toolchain.conf" (#342)
ofrak-patch-maker-v4.0.1
ofrak-v3.1.0
Added
- Add
ElfLoadAlignmentModifier
, which reclaims unused alignment bytes between PT_LOAD segments in ELFs as free space. (#302) - Add a "copy to clipboard" button to the "Show Snippet" view for easy exporting. (#301)
- Add a settings pane to the OFRAK GUI that supports theming and changing colors (#309)
- Add a button and interface in the OFRAK GUI to specifically select any component to run on a resource (#287)
- Add DDR pad support to the OFRAK GUI (#322)
Fixed
- Fixed a bug where clicking "Unpack" or "Identify" (for example) too quickly after loading a large resource causes an error that freezes up the whole GUI (#297)
- Bump
importlib-metadata
version to fix import errors (#296) - Treat
libmagic
,strings
asComponentExternalTools
so that they are considered dependencies. (#299)
ofrak-type-v2.2.0
2.2.0
Added
ProcessorType.CORTEX_A72
- LinkableSymbolType enum for generalized representation of symbol types (essentially functions vs. data)
ofrak-patch-maker-v4.0.0
4.0.0
Changed
- Discard
.altinstructions
section when linking - Use
SUBALIGN(0)
for.bss
sections - Force literal pool at end of function for AARCH64 using
-mpc-relative-literal-loads
Added
-fno-optimize-sibling-calls
flag added to AVR toolchain.-fno-pic
flag added to the GNU_10_Toolchain to omit GOTs in patches (FEMs) against binaries that aren't dynamically linked. (see #245)- Add methods to parse relocation symbols from object files.
- Extend parsed symbol dictionary to include LinkableSymbolType.
- Extend AssembledObject and BOM types to include relocation and unresolved symbols.
- Add separate data sections support to LLVM toolchain, and add general flag for including subsections
Changed
- Switch to standard GCC-like frontend for LLVM, which supports C attribute(weak)
- Treat weak symbols as "undefined" in BOM, so alternative, strong definitions can be searched
- Pass
-mmcu
value to the AVR preprocessor. - Raise a more descriptive error on toolchain failure.
Fixed
- Toolchain
preprocess()
method now returns the path to the preprocessed file.
ofrak-v3.0.0
3.0.0
Added
- Add call to flush a resource to disk in the script whenever a user downloads a resource from the GUI. (#277)
- Generate dynamic, runnable script based on GUI actions and display the script in the GUI. (#265)
- Add
-f
/--file
option toofrak gui
command to pre-load some files into OFRAK before opening the GUI, so they can be explored right away (#266) - Add
-i
/--import
option to the CLI to import and discover additional OFRAK Python packages when starting OFRAK. (#269) - Add Identifier to tag
ComplexBlocks
asLinkableSymbols
and Analyzer to copy attributes from aComplexBlock
to itsLinkableSymbol
. (#226) - Add method to create new
LinkableSymbols
from symbols defined in a patch file. (#226)
Changed
- Remove need to create Resources to pass source code and headers to
PatchFromSourceModifier
andFunctionReplaceModifier
(#249) - Choose Analyzer components which output the entirety of a view, rather than piece by piece, which would choose the wrong Analyzer sometimes. (#264)
- Generate LinkableBinary stubs as strong symbols, so linker use them to override weak symbols in patch (#259)
- Limit stub file creation for linkable BOMs to only those required by a patch. (#226)
Fixed
- Fix bug where
ComponentExternalTool
would raise an error when checking whether a tool was installed returned a non-zero exit value (#289) - Fix bug where jumping to a multiple of
0x10
in the GUI went to the previous line (#254) - Fix installing on Windows, as well as small GUI style fixes for Windows (#261)
- Fixed
Uf2File
identifier so that it correctly tags UF2 files withUf2File
(#283)
ofrak-v2.2.1
Added
- Add GUI features
- Add a way to sort and filter by data length or offset (#220)
- Add caption to ElfProgramHeader (#223)
- Add baseline support for running pip-installing ofrak on Windows (#228, #239, #242, #246)
Changed
- Updates to Flash components: (#195)
- Flash components now support more than one occurrence of the same field type in
FlashAttributes
. FlashOobResourceUnpacker
continues to unpack even if blocks do not perfectly align at end of theFlashOobResource
(this is useful for real-world flash dumps).
- Flash components now support more than one occurrence of the same field type in
- Tweak how errors are raised when auto-running components, so the actual root cause is not buried (#219)
- Show mapped resource captions on hover in the hex view (#221)
- Change how resources are stored to making deleting (and thus packing) much faster (#201)
- Use non-blocking
asyncio.create_subprocess_exec
calls in components (#53)
Fixed
- Fix bug where initially loaded GUI resource has collapsed children (#209)
- Fix bug in GUI where "jump to offset" feature in hex view rounded up instead of down (#243)
- Support more OpenWRT TRX files by making fewer assumptions about the partitions (#216)
- Fix some OS-specific problems (libmagic install, log file path) preventing OFRAK install on Windows (#239)
ofrak-v2.2.0
Fixed
- Fix bug in data service that can cause mangled internal state #197
- Fix long-broken
OFRAK.set_id_service
#198 - Fix bug in
SegmentInjectorModifier
that resulted in deleting more resources than necessary #200
Added
- Replace unofficial p7zip with official 7zip package
- File browser dialog in the GUI
- Area in the GUI to jump to a given data offset
- GUI command line now has a flag to not automatically open the browser
Changed
ofrak-v2.1.1
Fixed
- GUI uses correct attribute class names again (not *AutoAttributes)