当前 git master 分支为 6.2.0,下一个版本将是 6.2.1。
r2 是对 radare 的完全重写。它提供了一组库、工具和
插件,以简化逆向工程任务。以 LGPLv3 分发,尽管
每个插件可以有不同许可证(详见 r2 -Lj)。
radare 项目最初是一个专注于取证分析的简单命令行十六进制编辑器。 如今,r2 是一个功能完备的底层命令行工具,支持通过内嵌的 Javascript 解释器或 r2pipe 进行脚本编程。
r2 可以编辑本地硬盘上的文件、查看内核内存,并在本地或通过远程 gdb/windbg 服务器调试程序。r2 广泛的架构支持让您能够分析、 仿真、调试、修改和反汇编任何二进制文件。
下载最新的发布二进制文件。
推荐的 radare2 安装方式是从 Git 仓库源码安装:
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
sys/install.sh 进行默认的 acr+make+symlink 安装radare2 在 dist/nix 下提供 Nix 打包。
git 安装,或通过 pip 使用 r2env 安装。make uninstallsudo make purge在 Windows 上,请使用 .bat 脚本和 msvc:
preconfigure.bat REM setup python, meson, ninja
configure.bat REM run meson b + vs project
make.bat REM run ninja -C b
prefix\bin\radare2.exe
使用 r2pm 工具,您可以浏览并安装许多使用 radare2 的插件和工具。
pdd 命令访问r2 frida://0 启动 r2 即可使用pdg 访问的独立原生 ghidra 反编译器这些是使用 r2 的入门步骤,如需更多细节请阅读书籍或查找教程
$ r2 /bin/ls # open file in read-only
> aaa # analyse the program (r2 -A)
> afl # list all functions (try aflt, aflm)
> px 32 # print 32 byte hexdump current block
> s sym.main # seek to main (using flag name)
> f~foo # filter flags matching 'foo' (internal |grep)
> iS;is # list sections and symbols (rabin2 -Ss)
> pdf; agf # disassembly and ascii-art function graph
> oo+;w hello # reopen in read-write and write a string
> ?*~... # interactive filter in all command help
> q # quit
许多插件默认已包含在 r2 中。但您可以通过使用 r2pm 包管理器来扩展其功能。
r2pm -s <word> # search packages matching a word
r2pm -Uci <pkg> # update database and clean install a package
r2pm -u <pkg> # uninstall the given package
r2pm -l <pkg> # list installed packages
通过观看 r2con 的 YouTube 演讲 来了解更多关于 r2 的知识。此外还有许多博客文章、幻灯片和官方 radare2 书籍,但加入任何官方聊天频道并在那里提出您的问题或反馈始终是一个好主意。
#radare、#radare_side#radare:matrix.orgWindows (since XP for x86/x64/arm64), Linux, Darwin, GNU/Hurd, Apple's {Mac,i,iPad,watch}OS, Android, Wasmer, [Dragonfly, Net, Free, Open] BSD, Z/OS, QNX, SerenityOS, Solaris, AIX, Haiku, Vinix, FirefoxOS.
i386, x86-64, Alpha, ARM, AVR, BPF, sBPF, MIPS, PowerPC, SPARC, RISC-V, SH, m68k, S390, XCore, CR16, HPPA, ARC, Blackfin, Z80, H8/300, V810, PDP11, m680x, V850, CRIS, XAP (CSR), PIC, LM32, 8051, 6502, i4004, i8080, Propeller, EVM, OR1K Tricore, CHIP-8, LH5801, T8200, GameBoy, SNES, SPC700, MSP430, Xtensa, xcore, NIOS II, Java, Dalvik, Pickle, WebAssembly, MSIL, EBC, TMS320 (c54x, c55x, c55+, c64x), Hexagon, Brainfuck, Malbolge, whitespace, DCPU16, LANAI, lm32, MSIL, InfernoDis, UXN, Cosmac, PythonBytecode, Sharp sm5xx MCPus, FreeScale QIQa, MCORE, mcs96, RSP, SuperH-4, VAX, KVX, Am29000, LOONGARCH, JDH8, s390x, STM8.
ELF, Mach-O, Fatmach-O, PE, PE+, MZ, COFF, XCOFF, OMF, TE, XBE, SEP64, BIOS/UEFI, BFLT, Pebble apps, Apple Dyldcache, Kernelcache, MCLF trustlets, DEX, ART, Java class, Android boot image, Plan9 executables, Amiga HUNK, ZIMG, MBN/SBL bootloader, ELF coredump, MDMP (Windows minidump), PDP11, XTAC, CGC, DotNet, WASM (WebAssembly binary), Commodore VICE emulator, DOL, QNX, WAD, OFF, TIC-80, GB/GBA, PSX, PRG (C64), Apple Classic PEF, NDS, z64, and N3DS ...
在用户态挂载多种文件系统,如 NTFS、FAT、HFS+、EXT、APFS、BeosFS、BFS、MINIX、ReiserFS、SFS、ubifs、ufs、jfs、ISO9660、UDF、xfs