
UNIX-ähnliches Reverse-Engineering-Framework und Kommandozeilen-Toolset
Der aktuelle master-Branch von git ist 6.2.0, das nächste Release wird 6.2.1 sein.
r2 ist eine vollständige Neufassung von radare. Es bietet eine Reihe von Bibliotheken, Werkzeugen und
Plugins, um Reverse-Engineering-Aufgaben zu erleichtern. Es wird unter LGPLv3 vertrieben, wobei
jedes Plugin unterschiedliche Lizenzen haben kann (siehe r2 -Lj für Details).
Das radare-Projekt begann als einfacher kommandozeilenbasierter Hexadezimal-Editor mit Fokus auf Forensik. Heute ist r2 ein voll ausgestattetes Low-Level-Kommandozeilenwerkzeug mit Unterstützung für Skripterstellung über den eingebetteten Javascript-Interpreter oder über r2pipe.
r2 kann Dateien auf lokalen Festplatten bearbeiten, Kernel-Speicher anzeigen und Programme lokal oder über entfernte gdb/windbg-Server debuggen. Die breite Architekturunterstützung von r2 ermöglicht es Ihnen, jede Binärdatei zu analysieren, zu emulieren, zu debuggen, zu modifizieren und zu disassemblieren.
Laden Sie die neuesten veröffentlichten Binärdateien herunter.
Die empfohlene Methode, radare2 zu installieren, ist aus dem Quellcode des Git-Repositorys:
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
sys/install.sh für die standardmäßige acr+make+symlink-Installation ausradare2 bietet Nix-Pakete unter dist/nix an.
git oder über pip mit r2env installiert werden.make uninstall aus.sudo make purgeUnter Windows verwenden Sie die .bat-Skripte und 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
Mit dem r2pm-Werkzeug können Sie viele Plugins und Werkzeuge durchsuchen und installieren, die radare2 verwenden.
pddr2 frida://0, um es zu verwendenpdgDies sind die ersten Schritte zur Verwendung von r2; lesen Sie das Buch oder suchen Sie nach Tutorials für weitere Details.
$ 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
Viele Plugins sind standardmäßig in r2 enthalten. Sie können seine Fähigkeiten jedoch erweitern, indem Sie den Paketmanager r2pm verwenden.
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
Erfahren Sie mehr über r2, indem Sie YouTube-Vorträge von r2con ansehen. Es gibt auch viele Blogbeiträge, Slide-Decks und das offizielle radare2-Buch, aber es ist immer eine gute Idee, einem der offiziellen Chats beizutreten und dort Ihre Fragen oder Ihr Feedback zu hinterlassen.
#radare, #radare_side#radare:matrix.orgWindows (seit XP für x86/x64/arm64), Linux, Darwin, GNU/Hurd, Apples {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 und N3DS ...
Mounten Sie im Userland verschiedene Dateisysteme wie NTFS, FAT, HFS+, EXT, APFS, BeosFS, BFS, MINIX, ReiserFS, SFS, ubifs, ufs, jfs, ISO9660, UDF, xfs