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-metadataversion to fix import errors (#296) - Treat
libmagic,stringsasComponentExternalToolsso 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
.altinstructionssection when linking - Use
SUBALIGN(0)for.bsssections - Force literal pool at end of function for AARCH64 using
-mpc-relative-literal-loads
Added
-fno-optimize-sibling-callsflag added to AVR toolchain.-fno-picflag 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
-mmcuvalue 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/--fileoption toofrak guicommand to pre-load some files into OFRAK before opening the GUI, so they can be explored right away (#266) - Add
-i/--importoption to the CLI to import and discover additional OFRAK Python packages when starting OFRAK. (#269) - Add Identifier to tag
ComplexBlocksasLinkableSymbolsand Analyzer to copy attributes from aComplexBlockto itsLinkableSymbol. (#226) - Add method to create new
LinkableSymbolsfrom symbols defined in a patch file. (#226)
Changed
- Remove need to create Resources to pass source code and headers to
PatchFromSourceModifierandFunctionReplaceModifier(#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
ComponentExternalToolwould 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
0x10in the GUI went to the previous line (#254) - Fix installing on Windows, as well as small GUI style fixes for Windows (#261)
- Fixed
Uf2Fileidentifier 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. FlashOobResourceUnpackercontinues 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_execcalls 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
SegmentInjectorModifierthat 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)