Radare2 3.6.0 EGO – New Features & Fixes
Release Notes
- Version: 3.6.0
- From: 3.5.1
- To: 3.6.0
- Commits: 365
- Contributors: 30
Changes
anal
- Fix syscall resolutions for s110 operating system
- wzr/zr/xzr register on arm64 is wired to ground
- Fix naming of entrypoint symbols in files with class information (DEX/C++)
- Fix – Implement
a*
as an alias forafl*;ah*;ax*
- Fix and improve ESIL for arm64
- Fix – Implement
afl.
command - Fix
afl*
not saving function bits - Add experimental `axm command
- Implement refs for iget/iput Dalvik instructions
- Implement esil for OR and MUL dalvik instructions
RAnalOp.Type.CAST.toString()
and implicit refptr init- Improve
af
performance affected by `aflc - Honor R_ANAL_OP_MASK_ESIL in
anal.dalvik
- Improvements in dalvik analysis
- Add Stackframe Anal Hint
- Add opcode mask field in
ao
andaoj
- Add opcode description in
ao
- Show pseudo in
ao
andaoj
- Improve anal and parse plugins for Thumb
- Implement ESIL for stxb and stxh THUMB instructions
- Fix issue when analyzing the last DEX method
asm
- Handle LEA operand rip in x86.nz
bin
- Fix code section size in dex files
- Handle mod_init/mod_fini as word sections in mach-o
- Handle the interpos section as words in the disasm
- Fix ObjC detection in macho binaries
- Get rid of the ELF-specific C++ detection
- Add
-O
a/l/ for macho to add libraries - Honor more segments vs sections, for jmptbl, fatmacho, zeropage
- Fix
iS
/iSS
in macho and kernelcache - For : Implement ob= listing bin map coverage
- A couple of fixes for base address support
- Add missing ARM64v8 and ARM64e defines for the mach0 parser
- Kill RBinFile.objs RList
- Implement RBinFile.at and make it work with e bin.at
- Fix some RBin file format crashes
- Speedup loading fuzzed ELF files with huge nrel field
- Faster macho loading by reusing symbol parsing for getMain()
- Remove symbol table size hard limit in macho
- Fix regressions in dyldcache and xnu_kernelcache plugins
- Completely eliminate the bytes apis in RBin
- Fix – Honor
-qq
for classes and imports - Initial extermination of the *_bytes methods in RBin
- Fix – Implement
.ic**
command to import bin.class info as anal.class - Handle DEX files with no entrypoint properly
- Properly handle ELFs with no entrypoint defined
- Little ELF segment labelling change UNKNOWN -> NONE
build
- Continuous Fuzzing Integration with Fuzzit
- Add sys/build-shlib.sh and fix static builds
config
- Improve the list of supported decompilers in
e cmd.pdc=?
cons
- Little va_list leaking
- Fix – Don’t use ansi with
aaa
notifications if no ansicon - Add bold to
eco bright
items that were originally bold in default palette - Fix – Add
eco bright
(r2 default palette but with bright colors for all) - Add bright colors to the colors table
- Fix – Fix non-ansicon UTF printing
- Fix THE glitch affecting panels box colors
- Default to
scr.color=COLOR_MODE_16
for Alacritty on Windows - Dfferent color for up and down in disasm reflines
- Implement
reset
command to reset the terminal settings - Enable color prompt on Windows
- Fix Color_GRAY/BGGRAY
- palloc return checks
core
- Fix – Add
sort
,join
anduniq
- Simplify RConfig.eval and improve e with e, for csv
- Add r_sys_exit to proper quit
- Honor hashbang and PATH when interpretting extension-less scripts
- Honor ^C in
@@@F
and@@@s
- Implement
$O
variable pointing at cursor - Implement
|.
(alias for.
)
debug
- Improvements to windows heap parsing
- Set
cmd.gprompt=.dr*
whencfg.debug=true
- Initial implementation GetSingleBlock for Windows heap
- Initial implementation of heap parsing for Windows
debugger
- Improvements to windows heap parsing
disasm
- Avoid printing nulls on invalid code or missing bin info for Dalvik
- Add
asm.movlea
configuration option - Improve comments alignment in the disassembly
- Fix arm64 parse for BL instructions
- fix, improve and add some sh pseudo
- Support
asm.hint.pos=-1
for leftish key hints - Initial cleanup in RParse, delete mreplace plugin
- Toggle
asm.dwarf
inV#
andpds
- Add support for base64 in
CL
command - Faster
dtd
(trace disassembling) using API instead of RCore.cmd - Fix: Issue with upgoing refline at XREFS
- Fix
CL
command and make asm.dwarf work without source files - Fix
asm.varsub
in a hacky way to fix the disasm output - Fix project’s
asm.cpu
behaviour - Priorize strings in case multiple metas match
- Set the RBinSection.format as dwords for the constpool in DEX
- Initial import of the RISCV capstone plugins for asm and anal
esil
- Skip {urc}{jmp,call,ret} in
aesou
- Fix issues with negative
esil.timeout
values - Fixes related to ARM64 ESIL emulation
- Make
$r{}
work without the debugger - Add
cmd.esil.stepout
to run r2 commands (before and after emulation) - Fix recursivity issue when calling
aes
incmd.esil.step
- Fix
cmd.esil.step
handling of return value
graph
- Implement
fg
command to create a graph of flags (WIP) - Implement
graph.ntitles
to toggle graph title nodes
hash
- Initial implementation of pasasword generators under
/Cc
- Fixes for fletcher8
- Add support for fletcher8, 16, 32 and 64 hash algorithms
heap
- Implement GetSingleSegmentBlock for LFH and VS Windows heap
json
- Use asserts in pj api to catch this issue earlier
meta
- Fix
CC-
,CC-*
andCCf
– commands to work as expected
network
- Handle R2_CURL env var in RSocket.httpGet
panels
- Add more configs for disassembly are supported in the menu
- Emulate menu is added
- Settings menu is added, and decompiler is configurable in there
- Something like Ctrl w + T in vim implemented
- Almighty menu has got debug items too if it is in debug mode
- Search->Cursor->Xref/Ref enabled
- Cursor works better in many panels
izz~
andiz~
available from both the menu and ” modal- Force cache the result of Decompiler and Graph panels plus better auto updating, and refactoring
- Cut out the widget as a struct and name it Modal
- Enable deleting an item from the list in ” widget
- New item can be created and inserted to the ‘”‘ widget.
- Centered the ‘”‘ widget plus v and h commands are added to it.
- Added l command to the console which works like Ctrl l and Refactoring
- dwm style default layout
- Implement Console frame in visual panels
- Enable creating a panel from the list of all kind of the panels and replace the current panel with it
- Autocompletion is supported for Breakpoints and so is cursor to seek to and del them
- Cursor is available in strings panel
- Cursor is supported in Symbols panel
performance
- More code cleanup in RBin, speedup method resolution
- Honor
hex.section
inprc
andpxa
- Implement
pV
command – likepv
but for bytes instead of values - Fix
pv [arg]
behaviour - Added support for
pd
andpx
without space - Honor
hex.section
inpxW
andpxQ
- Honor
hex.section
inpxb
- Improve
pxr
for null words and relocs and usehex.section
inpxs
+pxr
- Fix –
ps[puzwW+]j
- Fix – Add
hex.section
option for the hexdump - Add Objective-C and Rust (
pco
,pcr
) - Add Kotlin, Java and Swift
pc
sub-commands
r2pm
- Honor the 2nd arg of R2PM_TGZ with ZIP files
refactor
- Change the signature of r_str_trim to avoid confusions
- Deprecate the RBinObject.id field
- Rewrite the RBuffer API to make it safer and adjust the codebase
refactoring
- Deprecate the RBinObject.id field
remote
- Improve the
r2web://
IO plugin and fix a couple of bugs in there - Speedup
r2web://
- Make -C http work like the tcp and rap remotes, expose the shell via ==
- Honor rap.loop in rap server and add examples in
=?
- Fix issues with the tcp server
.:
and=+tcp
, use index instead of fd - Fix some UAF in rap server, handle HTTP over rap and tcp properly
search
- Fix – Fix search on multiple maps
- Add
/cc
for case insensitive instruction - Add
search.in=bin.segment[.s[rwx]]
and fixbin.section[.s[rwx]]
- Fix hexpairs search containing whitespace
- Fix
/r
for dalvik and enable VA
shell
- Handle
e cmd.pdc=<tab>
and improvee cmd.pdc=?
autocompletion
signatures
- Improve zignatures
- Make zignature comparison fuzzy
- Implement the zc command
trace
- Sort
dte
output
visual
- Improve the vv mode for editing variables
windows
- Fix command redirection
- Dynamically find radare2 install dir on Windows
- Add mfc100u and a script to generate them
- Set
scr.ansicon=1
if running under Windows 10 Creators Update or later scr.ansicon=2
: Show esc seqs (for debugging) if using non-ConEmu-hosted cmd.exe- Fix QueryDosDevice returned length check
- Fix
ood; ood
bug on winxp->win10 - Fix r_sys_pid_to_path (supports winxp -> win10)
Directly related posts: