UNIX-like reverse engineering framework and command-line toolset
LGPL-3.0 License
Bot releases are visible (Hide)
Published by trufae about 3 years ago
Version: 5.4.0
Previous: 5.3.1
Commits: 258
Contributors: 20
Shell
Search
Analysis
Debugger
Signatures
The build system and CI packaging has been improved quite a lot, simplifying the release process and testing.
Windows
Authors
Alex Bender Apkunpacker Azox Davide Pizzolotto Dennis Goodlett Enshin Andrey Ilya Trukhanov László Vaskó Maijin Murphy Paul I RHL120 Royos90 Sylvain Pelissier aemmitt-ns gogo hot3eed lasek0 pancake pancake
anal
asm
assembler
bin
build
./preconfigure
for packaging purposessystem()
on arm64 macOS targets (#18877)ci
cons
core
debug
disasm
esil
fs
io
panels
projects
rvc
search
shell
signatures
tools
vc
visual
windows
Published by radare over 3 years ago
This release comes with a large list of bug fixes contained in 246 commits from the last 6 weeks thanks to 19 contributors. Kudos to everyone hanging out in the chats, testing, discussing, asking, helping and building up this community that makes r2 what it is. Hope all the users appreciate and enjoy this update as much as we did coding for it.
Greetings to: Alex Bender Anthoine Bourgeois condret David CARLIER Dennis Goodlett Giovanni Di Santi gogo2464 Jing Liu meme Michal Ambroz murphy pancake Rene Laemmert RHL120 Shadorain Siguza Simon Vareille StefanBruens Sylvain Pelissier
I could shout: aaaa is no longer breaking the debugged process! or Go scripting support!, but the list of changes and security bug fixes is quite large to summarize in just one line.
Some important bugs has been fixed in the build system, not just reflected in the README
and the CI but also for both meson and acr, previous old installations of r2 no longer breaks the build. The rpath builds are now fixed for both acr and meson, this is required for r2env! also, and most important one, all the sdb databases are now precompiled in C and loaded at compile time instead of having to map disk files. This fixes the need to depend on side files installed in the system to make your static binary builds of r2 to work. This feature is now enabled by default and tested in the CI, but it can be also optionally disabled if you prefer the old behaviour which is more flexible. musl static builds are now officially supported and tested in the CI.
Friendly reminder that license documentation has been updated in doc/license.md
and you can check at runtime all the licenses of the core and plugins used in your builds of r2 in case you need to care of such things.
Support for the S390 architecture and the z/OS architecture has been improved from RBin, RCharset and RAsm by adding support to extract ebcdic37 strings with rabin2 honoring cfg.charset
and loading MVS OFF S/390 module objects, in addition, the latest S390 disassembler from GNU Binutils has been imported, which works side by side with the Capstone one.
Some important bugs has been fixed in the debugger. From infinite loops, fixed reg profile for arm64 debuggers, reseting the heap analysis on restart and other undefined behaviours that happened randomly on Linux and macOS. We greatly recommend you to update!
Multiline comments are better displayed on hexdumps and disasm, the order of flags and xrefs is now sorted to be more meaningful to the reader. The variable asm.sub.jmp is now working again. Other improvements with asm.meta=false
for displaying data in the middle of code and better displaying of switch table comments. A new variable asm.hint.imm
is now accessible from visual mode to pick immediates from instructions using hot keys. All those additions make visual and panels look even better!
The commandline have received some bold updates. The newshell
parser has been removed from the codebase, which resulted in the following changes: improved commandline parser to fix all the tests working in newshell with the good-old-C-based parser, deprecate the backslash and single quote aliases for =!
and promote the use of :
. This is an important change for r2frida
users!. The autocompletion tab is working again and has been extended to support more config var types. The whole refactoring end up with 30s less in CI builds and 512KB less sources.
New commands!
afxm
: x/y map of function xrefswcf
: write file contents + cache patches into given fileaev
: the visual esil debugger (same as VbE)aeis
: initialize stack for given argc, argv, envpx/w
: long standing issue improves gdb-like examine commands in r2===stderr
: allows to redirect r2's stderr thru the new r2pipe.side apipx--
context hexdump command (like pd--
):
this always-undefined command is now replacing \
and '
aliasesCommand changes:
px
now honors cfg.charset in the ascii columnpr
: supports printing raw null bytes'
and \
commands as deprecated. use :
@@@e
and @@@E
to iterate over entries and exportsThe RBin library ships with some important security bug fixes, covering some public CVEs for corrupted PE, Python and MACHO files. Additionally a cache has been added to greatly speedup the loading of DWARF files and adding support for two new file formats (OFF for zOS/S390 and WAD (the DOOM map files).
From the analysis perspective this release comes with some important changes: capstone5 is now the default disassembler and analysis library for most common architectures. The anal.calls variable is now honored in aa
, which results in better code coverage when performing automatic analysis. Running aaaa
no longer breaks the debugged process! There's some little improvements in the type propagation analysis and the missing char**
type is now included, which works in sync with the new aeis
command to redefine the stack contents for a specific argc, argv, envp.
ESIL has deprecated the REPEAT
keyword and extended the Thumb emulation by supporting the ldrd
instruction, The arm64 assembler has been also improved a little bit warming engines for the r2wars. Non-intel users will also enjoy a more native experience along all the tools because.
A new IO plugin is available in default builds, the socket://
, this plugin was implemented in r1.. but it never really reached r2 codebase until now! This plugin connects or listens to a tcp host:port and records a flag for every read operation that happens, writes are sent to the endpoint, this enables r2 to be used for protocol debugging, which can be easily scriptable with r2pipe for fuzzing or testing purposes. The old tcp
plugin is now named tcp-slurp://
to avoid confussions.
Signature search, matching, storing and management has been improved, handling collisions of multiple metrics to better decide which match pick, bytes are now available as a metric for signature matching, diffing and comparison. This makes z/
run quiet faster and generate better results than before.
Better error messaging has been added in visual, panels as well in many commands like the infamous pf
which use to spit confusing messages, now supports writing enums and bitfield values in mapped structs. Same goes for the pa
command which now suggests pd
in case the user mistypes it (as it seems to be from the feedback from users).
=!
or :
from now on.anal
asm
bin
build
charset
cons
debug
di
diff
zd
disasm
emu
esil
hash
io
lang
p…
pa
commandprojects
r2pipe
search
shell
signatures
zd
tools
types
util
visual
write
Published by trufae over 3 years ago
See 5.2.0 release notes for changes since 5.1.x
Bug Fixes:
Performance:
aaaa
now takes 6s instead of 4 minutes)Improvements:
ih
json outputbluy
Debugger improvements on Linux:
Published by trufae over 3 years ago
Version: 5.2.0
Previous: 5.1.1
Commits: 316
Contributors: 35
Alexandr Alexandr Alexis Ehret Alucowie Basstorm Dennis Goodlett Florian M"arkl Francesco Tamagni Khairul Azhar Kasmiran Lars Wrenger Murphy Pamplemousse Paul I RHL120 Reviakin Evgeny Roman Valls Guimera Sylvain Pelissier Taggggy condret el-goe gogo gogo2464 intruder-kat ivan tkachenko meme mio mrglm murphy pancake ramikg soroosh-chabi temp1337 valdaarhun wargio
android
api
bin
build
charset
ci
cmd
cons
core
crypto
debug
debug"
decompiler
diff
disasm
dwarf
emu
esil
fs
graph
hash
io
json
r2 -vj
lang
reg
search
shell
test
tools
util
visual
visual"
Associated releases:
See below for the changelogs:
This release comes with several improvements for the V850 (in concret e2) cpu. The default disassembler is not really supporting many of the instructions of this architecture, but you can use r2ghidra
as disassembler and analyzer which comes with a bunch of improvements for this architecture. Here's a list of the most relevant changes:
omd
command makes creating memory layouts for embedded firmwares much easier, but at the end it's just a simplified version of om
.slurp://
uri handler which does the same as oom
to reload the given disk file into a malloc:// which is ideal for loading firmware dumps with ram contents for proper emulation.pFa
command (thanks @meme)pf [fFG]
and wv[fFG]
=RS
directive to define the default register size.pdc, pdd, pdg, pdz
to their respective decompilerspdc
pseudo-decompiler output (show orphaned bbs) + pdcj support/ad
command results are now correct and tested.sixref
command (see siguza's plugin in the arm64 section)lsr
, whoami
and uid
commandsdmi
commands to load more symbols in debugger moderagg2
.gnu_debugdata
sections on ELF binariespdj
and other CL
listingsw
, ps
, psz
and psj
(thanks @gogo2464 )graph.mini
)afbg
)This is a minor bug fix release after 5.1.0 was out. But as usual it comes with some new features! Contents are mainly bug fixes and behaviour and abi compat should be fine 5.0.0, this is, all the built packages for 5.1.x will work. Highlights:
The new /cu command search for UDS tables useful for reverse engineering ECU firmwares. The code has been taken from binbloom and integrated as all the other search commands in r2, so you can have json, quiet, and r2 commands outputs for it.
This feature has been there for more than 10 years, but barely tested or used, after a user request and some testing the afbc command to improve to support specifying the color by name or following the CSS syntax like its supported in the color themes.
In addition the @ key have been handled in the graph view to toggle graph.layout variable, so you can easily rotate between portrait and landscape modes.
You can now use the visual mode to search for 2bpp bitmaps usually embedded in Gameboy roms. This is part of the retro-r2 project which aims to improve the support for old game consoles
The custom charset encoding support have been extended over the w
command to be able to encode an ascii string into pokered charset encoding and write it directly. The decoding support was already added in ps
, and the integration and improvement of this feature will slowly come in next releases, as it fits into the retro-r2 plan and has been a long awaited feature by the rom hacking scene. Kudos @gogo2464 for that stuff!
Do you need to get access to a shell on a machine under nat or firewall? Try out the new =r
command! it will take the host:port as argument and try to connect there to expose an r2 shell. This was implemented to get a shell in the GHA CI to debug an issue, but I guess this feature could have more uses :)
Analysis
Assembler
With the aim in mind to cook gameboy roms with just rasm2, the assembler directives have been documented in the help message and manpage, the .fill one now works with only 1 parameter.
bin
build
shell
Published by trufae over 3 years ago
I will try to be more verbose with the release notes this time, it could help everyone to understand better the changes that happen, project directions and new features, as well as be more entertaining, even readable by Siri.
As I'm writing these lines I know I will be missing something, so please, if you think this summary is missing any important details let us know and our apologize in advance!
This is the second release after the fork, we are still putting things in place and optimizing the development for what we had in mind. Probably many people expected a public statement about the events, but this post end up being used as a therapy and focused on spending the time for what it matters: have fun, move fast and code for what matters most for the users and contributors without losing time and nerves in personal conflicts or strict roadmaps, just fixing, improving and keep vibing the amazing community in r2land.
There are frequent back and forth pulls of changes from both projects (see sys/derizin.sh for more details), and future directions of both projects will probably differ enough to lower that pace. If you are curious about other side projects:
About r2ghidra, it was rebranded (previously named r2ghidra-dec), and has been updated with all the changes in rz-ghidra, but adds ACR build support (which works on FreeBSD), removes the need for bison and flex, See https://github.com/radareorg/r2ghidra for more details about the 5.1.0 release.
On r2cutter, the repository, project and icon has been renamed from Cutter to r2Cutter as well as updated the r2 dependency to the latest 5.1.0, but the CI hasnt been massaged yet
to do the release builds, so no release of r2cutter is planned until this issue gets fixed.
r2dec is still available and working, just remember to update your package database with r2pm update
.
Alexander von Gluck IV Alexis Ehret Allen McIntosh Anton Kochkov Aswin C Briand Djoko Carson McManus ChD1 Dennis Goodlett Eduard Eduard MURESAN Fangrui Song Florian Maerkl Francesco Tamagni Fredrik Fornwall Giovanni GustavoLCR Kamil Rytarowski Khairul Azhar Kasmiran Liumeo Murphy Paul I Qijia Liu RHL120 Riccardo Schirone Riccardo Schirone Sahil Siddiq Sylvain Pelissier aemmitt-ns aemmitt-ns condret eagleoflqj gogo gogo2464 ivan tkachenko laohuai liumeo mrglm pancake pancake pancake ratijas wargio yossizap yossizap
This release comes with a large list of bug fixes, many of them you may probably not even noticed, but some of them are important for users and packagers, it has been
tested on a large list of platforms, not just in the CI, but also in sparc, mips, powerpc and other funky hardware (Thanks @unixfreaxjp !). We are not forgetting the new Macs, and
this release comes with few fixes for fat binaries, kernel caches and arm64 floating point emulation (kudos to @mrmacete and @aemmitt-ns for them!).
Projects: One of the most awaited feature is now finally available for testing, the git
support has been enabled by default and some options and backward compatibility transitional
code have been removed. Please test this out and let us know if you spot any issue! thanks @trufae for this!
The CI have been rewritten for simplicity and it's now building and publishing Android, iOS, macOS, Linux and Windows artifacts on every commit, ASAN, LGTM and COVERITY are still there, but all jobs run in github actions.
Lots of improvements in the support for JSON have been added by @liumeo also, several memory leaks have been cutted down, which are always welcome.
Support for streaming large files over mg, and added support in r2frida is now available thanks to @as0ler!
The r2wars game runs on top of r2, but it needs some tweaks for the esil vm to work,
this version optimizes this by checking configuration options outside hot loops.
Those 'hacks' will be eventually removed when r2wars gets able to emulate syscalls,
traps and low level stepping for context switching at esil-expression level.
The arm64 assembler has been extended support more instructions and be more formal and correct.
It's always great to welcome a new supported architecture for assembling code (disassembler for i4004 was already available). Kudos to Liumeo for this nice addition!
COFF: handle empty sections (#447)
Dont demangle with libs unless requested
Add bin.cache evar to use io.cache when bins need to patch relocs
Fix Mach-O rebase on fat slices
Add additional ELF header fields to rz-bin output
Fix PE Delay Imports for multiple delayed DLLs (rizin)
Lowercase DEX method attributes and move r_num_bit_count()
Initial implementation of the DEX annotation parser
The DEX annotation metadata is now parsed in the DEX plugin, this means, that parsing is actually a bit slower (it's parsing more information) but provides more context and information of the application classes and methods. Use bin.verbose=true to get that information.
This metadata must be imported into r2 somehow, but this interface hasnt been defined yet, so only plaintext representation is supported at load time. Probably finding a good tree representation for an Sdb instance could work.
Some confusing usage and documentation have been updated and the default diffing algorithm is now faster. (Thanks MaskRay for spotting it and Liumeo for massaging it)
The whole CI scripts have been rewritten to run everything in GithubActions, and adjust the test of PRs to 20min, ASAN is only running in master (takes 1h), and every commit is compiled for linux, macos, windows, ios and android. No breaking commits can be merged. And all artifacts are available to download for every single commit and architecture.
As long as the Sanitized build takes 1h to run the testsuite we decided to make it run only in the master branch, if any regression happens there it's easy to fix with the crash logs in GHA.
This is the setup of jobs in the current CI:
You may not know about RTable yet, but it's an api and command modifier that will be used more and more over time. In short, RTable provides an API to create tables with columns with types and rows with data and an api and query syntax to operate over those tables in the same way as you would do in an SQL database but using the cryptic syntax of commands we like in r2land.
This release introduces a new output for SQL. This means that any information stored in r2 can be exported in SQL statements and processed in your favourite SQL database. This is an example usage:
$ r2 -AA /bin/ls
> afl,:sql > functions.sql
> !sqlite3
sqlite> .read functions.sql
sqlite> .tables
fcns
sqlite> select count(name) from fcns;
128
Native support for Linux/RISC-V is now available as well as remote debugging via GDB,
the ESIL emulation have been improved a little bit.
@condret find out (and fixed) a bug in the way rep instructions were constructed in ESIL in x86.
Thanks to @aemmitt-ns (Austin Emmitt) for implementing support for floating point arithmetics in ESIL as well as adding support for most FPU instructions for ARM64. That's an important move forward in order to improve the language to handle more instructions and architectures.
A work in progress support for RIOBanks is not yet included in this release.
But hopefully in the next release @condret and @trufae will be manage to finish the new API and commands and integrate them into the ESIL to support memory banks in GameBoy emulation for example (as well as add support later for other archs).
Those new types of plugins are right now just a place holder to call init/fini and do whatever you want from there. But in the next release ESIL plugins will provide the ability to expose some functionalities to the ESIL VM, syscall implementations in userland, libc emulation functions, custom esil operations, hardware devices, etc. Join the Discord, Telegram or IRC channels to raise the topic if you are interested on more details.
This feature has been added pair to pair with the r2frida implementation, this
way enables r2 to download all the files and its contents without any file size
limitation from the remote device to your host. All the RFS plugins API has been
changed to if you are using custom RFS plugins you may take care of that.
Support for uploading is not yet implemented, but it is planned in the near future.
Thanks Murphy for that great contrib!
Those changes and new command are required for the projects to be able to save and
restore the status of files, binfile and iomaps in proper order and reference.
The refactoring of the io.ar plugin spotted a regression in open_many() which is not yet
fixed, brave volunteers are welcome!
The most requested feature for r2 has been reworked to actually
make it work and improved several use cases that weren't handled
before:
git
is in paththis means that everytime you run Ps
after saving the changes
in will prompt you for a commit message. The ability to rollback
to any previous state of the project by just calling git reset
and Po
becomes very handy when bad things happen or you just
want to track your progress.
As long as projects are in plain text they are readable in git diff
.
Improved support to ease the workflow to support multiple users sharing
the same project via git will be implemented in future releases.
o*
outputAs long as the user can create custom maps on specific files, the projects
need to determine if there's any binobject associated with a specific
file for processing a map. This puzzle is solved by the o* command which
now prints the right commands to reconstruct the same IO environment starting
from a clean session.
The P command is now much more stable and all the subcommands work as expected, some tests have been added and project renaming can be done via command or via evar prj.name
. The magic behind this evar-project-action is done by using the RConfig.getter APIs that have been there for a while but barely used, the value is updated at get time from the project instance details. This way it's possible to rename a project like this:
> e prj.name
test
> e prj.name=case1
Projects are working, but they are far from perfect, one of these missing corners is the
debugging support, the main reason for that is the lack of integration of aslr rebasing in projects, this will be eventually implemented, but for now it's better to avoid the user to mess the thing.
In any case, it's always recommended to have your own manually writen scripts to do setup some flags, memory patches or breakpoints, so you are more in control of what you run in a living process.
k anal/cc/default.cc
Some improvements in the way calling conventions are handled inside r2 enabled the use of anal.cc like it's done in prj.name, with a 'live' evar. default calling convention is
defined by the architecture but can be redefined by the rbin plugin or the analysis information. In addition the user can also specify a custom CC for each function, all those details are preserved with the anal.cc evar and the tc and afc commands.
This includes honoring the settings defined by the user in the cfg.json evars,
this nice feature was introduced by @hexploitable in the previous 5.0 release.
[0x00000000]> e cfg.json.num =?
none
string
hex
One of the changes introduced in Rizin is the ability to use regexps to check the output of an r2r test, but after doing some cleanup in the regex code some issues were spotted in the logic, so it's not encouraged to write tests using regexps yet. Unit tests has been added, but it still requires to be fixed.
The bugs are logic bugs, not exploitable, but some match expressions won't work. But at least the feature is in sync.
Other commits taken from RZ grouped by author are:
Paul I
xvilka
wargio
ret2libc
kazarmi
yossizap
Florian
Sometimes a shellcode or a piece of program is doing some operations with IP addresses and it stores the IP address on a 32 bit register value. rax2 now provides a handy commandline option to ease this conversion. This feature was already available as a hint for the disassembly to convert instruction arguments to ip addresses.
$ rax2 -I 192.168.1.32
0x2001a8c0
$ rax2 -I 0x2001a8c0
192.168.1.32
$
Those two variables have been added in order to ease writing some scripts that navigate thru
the code moving forward and backward honoring the instruction boundaries of the current analysis information.
So $i is the address of the next instruction and $I of the previous. Things get more interesting when the braces join the game: Using $i{3} gives you the address of 3 instructions forward. and the same goes for $I{3} to go backward.
asl
commandThe asl command has been modified to use RNum when parsing the argument, so its possible to
Plugin delegates return int instead of RFSFile to avoid leaks and uafs, needed for streaming largs files over mg.
Add esil.dummy in your plugins.cfg if the build fail with missing R_ESIL_PLUGINS error.
In human words: rotating color themes is working again!
This new API is wrapping eprintf() but its also able to buffer the
results and flush them after r_cons_flush().
FUTURE: The need for this API is to improve the r2pipe API and handle
a 3rd communication pipe to handle asyncronous error messages. This is
a long term plan and should be backward compatible, so no r2pipe scripts may break.
Those commits improve the experience in panels, fixing an anoying
bug in the menus, improving the cursor mode. The default color
theme for the frames makes it easier the eye.
The heavy webuis were removed in 5.0, but we are still shipping
t/iled and p/anel ones, it's known that the webui repo needs some
attention
The bindings have been also updated with some more valadoc documentation
that can be read in here:
This documentation and API can be used for any bindings generated by
valabind, this is: python, nodejs, ruby, go, v, ... the work to stabilize
the apis in this module focused in RConfig, some fixes have been done in
this module.
As usual, every release of r2 comes with a large list of security vulnerabilities, bugs and crash fixes. The list below sumarizes the most relevant ones:
symstall
Merged some patches coming from Termux to improve the debugger support on android-x86. The r2r testsuite executable is always built and should be available to all the user installations.
Also, some issues has been fixed in sys/install as well as new CI jobs to verify no regressions happen on install/uninstall/spacesinpaths, etc.
Published by trufae almost 4 years ago
Commits: 510
Contributors: 65
Improve signature matching, threshold, refactor and optimize related code
Directly apply Callee Args in Type Matching
Takeover variables when splitting functions
Always register the derived CC from the reg profile
Add bbhash to detect modifications in functions (and reanalize if patched)
Implement basic block listing commands (abl*)
Implement tcc-* commmand to unload all calling conventions
X86
MIPS
ARM
v850
TMS320
PowerPC
RISC-V
SPC700 plugins moved to extras
asm.filter
to asm.sub.names
asm.var.sub
to asm.sub.var
afc=
command.Published by github-actions[bot] about 4 years ago
Version: 4.5.1
Previous: 4.5.0
Commits: 20
Contributors: 9
bin
build
core
port
util
Published by github-actions[bot] over 4 years ago
Version: 4.5.0
Previous: 4.4.0
Commits: 426
Contributors: 58
Analysis
asm
r_asm_is_valid
and r_asm_set_syntax
APImov r64, 0xffffffffffffffff
mov r32, -imm32
encodingbin
build
--without-dylink
configure flag to disable libdl features--without-r2r
configure option to disable compilation of r2rcons
crypto
debug
di
io
fd://
(handle://
on windows) pluginself://
plugin for Solaris and Haiku OSlang
magic
socket
util
rabin2
radare2
asm.jmpsub
-> asm.sub.jmp
asm.var.submin
-> asm.sub.varmin
asm.tailsub
-> asm.sub.tail
asm.section.sub
-> asm.sub.section
asm.var.subonly
-> asm.sub.varonly
asm.regsub
-> asm.sub.reg
asm.relsub
-> asm.sub.rel
anal.in=raw
-> anal.in=range
asm.bytespace
-> asm.bytes.space
scr.ansicon
-> scr.vtmode
(only on Windows build)anal.vars.stackname
: (true/false) Name variables based on their offset on the stackasm.bytes.right
: (true/false) Display the bytes at the right of the disassemblybin.str.enc=ascii
is a new optionaxv
and afvx
and afv=
commands to visualize var R/W accessesafvxj
to print JSON output of afvx
dmia
command to list all info of a target lib and accept more print modes in dmi
drtj
command/E
command with /Ej
zb
command to find n closest matching graph zignaturee cfg.newshell=true
)aao
objc analysisrafind2
rafind2 -F
to find the contents of the filerasign2
r2pm
This release could not be done without the help of several people, who
contributed with many fixes and improvements. Above you can only find some short
highlights of what was done in this release, but many more important changes
have been committed and you can find them in our git log.
Published by radare over 4 years ago
Version: 4.4.0
Previous: 4.3.1
Commits: 328
Contributors: 41
anal
asm
bin
iij
asserts for ld-uclibc with a null importiij
for ld-uclibc with a null importiij
asserts for ld-uclibc with a null importbuild
core
debug
diff
disasm
egg
graph
io
we
json
lang
ports
refactor
reg
search
socket
test
tests
tools
types
tl
util
visual
Published by radare over 4 years ago
Binaries: http://radare.mikelloc.com/release/4.3.1
See 4.3.0 changelog for full details compared to 4.2.0
Published by radare over 4 years ago
Version: 4.3.0
From: 4.2.1
To: 4.3.0
Commits: 214
Contributors: 33
anal
asm
bin
iS
hash outputs (#16044)build
cons
core
debug
disasm
esil
graph
json
panels
projects
refactor
refactor"
test
types
util
visual
afij
(#16051)r2
will crash when loading a PE file withPE_(bin_pe_compute_authentihash)
function returningNULL
if it encounters an unsupported digest function. This resultsNULL
being passed to strcmp
which causes the segfault.PE_(bin_pe_compute_authentihash)
NULL
and to set bin->is_authhash_valid
to NULL
.str
is not correctly terminated, so when it ispk_js
, that function reads a very long string, outsidepd 3; .; .; .;
the .
refers to pd 3
.env
command trim key/value strings before setting env variablespd
(#15925)Published by radare over 4 years ago
Published by radare over 4 years ago
On February 2, 2020, GitHub will capture a snapshot of every active public repository, to be preserved in the GitHub Arctic Code Vault. This data will be stored on 3,500-foot film reels, provided and encoded by Piql, a Norwegian company that specializes in very-long-term data storage. The film technology relies on silver halides on polyester. This medium has a lifespan of 500 years as measured by the ISO; simulated aging tests indicate Piql’s film will last twice as long.
Version: 4.2.0
From: 4.1.1
To: 4.2.0
Commits: 175
Contributors: 23
anal
asm
bin
cons
ms
shellcore
debug
diff
disasm
esil
io
json
panels
r_debug
search
signatures
table
test
tests
util
visual
windows
for
loop initial declarations are only allowed in C99 modev fmt
to indent the new testsuitePublished by radare almost 5 years ago
Published by radare almost 5 years ago
Version: 4.1.0
From: 4.0.0
To: 4.1.0
Commits: 252
Contributors: 40
anal
arch
asm
bin
build
command
config
cons
core
debug
dp
processes info support to gdbrood
in linux to avoid execvp freezingdp
outputdisasm
doc
gdbclient
io
json
network
r_debug
search
signatures
test
util
visual
windows
dp=
wouldn't fully switch to the given process since itdpt
thread switching, leaving the debugger ininsns
global (#15613)dp
in any other debugger. vFile is the only way to get detailed pid info unfortunately.dp=
, the debug plugin would set a new tid baseddp=
wouldn't fully switch to the given process since it wasdpt
thread switching, leaving the debugger in an undefined state.sj
afvsj
shows offsets of sp-based variables as strings.No receipt for 'radare2.pkg' found at '/'.
/
for each returned path by the pkgutil
command, to makesudo
command for each file, which speeds up thesys/macos-cert.sh
script generates a new certificate in
sys/macos-cert.sh
, change manual certificatedrm
to be ready for the YMM registers (#15394)Published by radare almost 5 years ago
Version: 4.0.0
From: 3.9.0
To: 4.0.0
Commits: 299
Contributors: 48
anal
aar
and ao
api
asm
bin
build
cons
core
uname
debug
drm[bwdq]
command, add xmm0h/l and xmm8-15 registers (#15354)drm
command, add drm xmm0
functionality (#15214)drf
output formattingdiff
disasm
emu
esil
io
io_self
json
lang
panel
panels
r2pie
rasm2
script
search
table
util
visual
wasm
windows
zign
Published by radare about 5 years ago
In r2land we are happy to celebrate that the artichoke seasson is back with a new release \o/
Binaries: http://radare.mikelloc.com/release/3.9.0
Version: 3.9.0
PreviousVersion: 3.8.0
Commits: 102
Contributors: 31
TimeSinceLastRelease: 2 weeks
anal
cons
core
debug
emu
io
Published by radare about 5 years ago
Version: 3.8.0
From: 3.7.1
To: 3.8.0
Commits: 188
Contributors: 30
analysis
bin
build
core
debug
diff
disasm
doc
??
graph
io
panel
panels
r2pipe
rop
search
util
visual
windows
r_main_free
agd*
based commands (#14809)