.github | ||
binr | ||
dist | ||
doc | ||
libr | ||
man | ||
mk | ||
pkgcfg | ||
shlr | ||
sys | ||
test | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
autogen.sh | ||
COMMUNITY.md | ||
config-user.mk.acr | ||
configure | ||
configure-plugins | ||
configure.acr | ||
configure.bat | ||
configure.hook | ||
CONTRIBUTING.md | ||
COPYING | ||
COPYING.LESSER | ||
DEVELOPERS.md | ||
Doxyfile | ||
env.sh | ||
global.mk | ||
INSTALL.md | ||
make.bat | ||
Makefile | ||
meson_options.txt | ||
meson.build | ||
package.json | ||
preconfigure | ||
preconfigure.bat | ||
README.md | ||
SECURITY.md | ||
USAGE.md | ||
vsfix.bat |
Radare2: Unix-Like Reverse Engineering Framework
The current packaged version is 5.5.4
. See the
Releases page for binary
downloads. The current git master
branch is 5.5.5
, and the next release will
be 5.6.0
.
r2 is a complete rewrite of radare. It provides a set of libraries, tools and plugins to ease reverse engineering tasks.
The radare project started as a simple command-line hexadecimal editor focused on forensics. Today, r2 is a featureful low-level command-line tool with support for scripting. r2 can edit files on local hard drives, view kernel memory, and debug programs locally or via a remote gdb server. r2's wide architecture support allows you to analyze, emulate, debug, modify, and disassemble any binary.
Installation
r2 can be installed via git
or pip
.
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
pip install r2env
Resources
- Official radare2 book: Read about r2 usage.
- COMMUNITY.md: Community engagement and loose guidelines.
- CONTRIBUTING.md: Information about reporting issues and contributing. See also the Contributing section below.
- DEVELOPERS.md: Development guidelines for r2.
- SECURITY.md: Instructions for reporting vulnerabilities.
- USAGE.md: Some example commands.
- INSTALL.md: Full instructions for different installation methods.
Plugins
Many plugins are included with r2 by default. You can find more plugins using the r2pm package manager.
r2pm update # update (or initialize) the package database
r2pm install <pkg> # install a package
Some of the most installed packages are:
- esilsolve: The symbolic execution plugin, based on esil and z3.
- iaito: The official Qt graphical interface.
- radius: A fast symbolic execution engine based on boolector and r2.
- r2dec: A decompiler based on r2 written in JS, accessed with the
pdd
command. - r2ghidra: The native ghidra decompiler plugin, accessed with the
pdg
command. - r2frida: The frida io plugin. Start r2 with
r2 frida://0
to use it.
Contributing
There are many ways to contribute to the project. Contact the community, check out the github issues, or grep for TODO/FIXME/XXX comments in the source.
To contribute code, push your changes to a branch on your fork of the
repository. Please ensure that you follow the coding and style guidelines and
that your changes pass the testing suite, which you can run with the r2r
tool. If you are adding significant code, it may be necessary to modify or add
additional tests in the test/
directory.
For more details, see CONTRIBUTING.md and DEVELOPERS.md.
Documentation
To learn more about r2 we encourage you to watch youtube talks from r2con. In addition to reading blogposts, slides or the official radare2 book, here are some methods to contact us:
Community
- irc.libera.chat:
#radare
,#radare_side
- Matrix:
#radare:matrix.org
- Telegram: Main Channel and Side Channel
- Discord server
- Twitter: @radareorg
- Website: https://www.radare.org/
Supported Platforms
Operating Systems
Windows (since XP), Linux, Darwin, GNU/Hurd, Apple's {Mac,i,iPad,watch}OS, Android [Dragonfly, Net, Free, Open] BSD, Z/OS, QNX, SerenityOS, Solaris, Haiku, Vinix, FirefoxOS.
Architectures
i386, x86-64, ARM, MIPS, PowerPC, SPARC, RISC-V, SH, m68k, m680x, AVR, XAP, S390, XCore, CR16, HPPA, ARC, Blackfin, Z80, H8/300, V810, V850, CRIS, XAP, PIC, LM32, 8051, 6502, i4004, i8080, Propeller, Tricore, CHIP-8, LH5801, T8200, GameBoy, SNES, SPC700, MSP430, Xtensa, NIOS II, Java, Dalvik, WebAssembly, MSIL, EBC, TMS320 (c54x, c55x, c55+, c66), Hexagon, Brainfuck, Malbolge, whitespace, DCPU16, LANAI, MCORE, mcs96, RSP, SuperH-4, VAX, AMD Am29000, LOONGARCH.
File Formats
ELF, Mach-O, Fatmach-O, PE, PE+, MZ, COFF, OMF, TE, XBE, BIOS/UEFI, Dyldcache, DEX, ART, CGC, Java class, Android boot image, Plan9 executable, ZIMG, MBN/SBL bootloader, ELF coredump, MDMP (Windows minidump), WASM (WebAssembly binary), Commodore VICE emulator, QNX, WAD, OFF, TIC-80 Game Boy (Advance), Nintendo DS ROMs and Nintendo 3DS FIRMs, various filesystems.