
UNIX-подобный фреймворк для обратной разработки и набор инструментов командной строки
Текущая ветка master в git — 6.2.2, следующий релиз будет 6.2.4.
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+symlinkradare2 предоставляет Nix-пакеты в dist/nix.
git или через pip с помощью r2env.make uninstallsudo make purgeНа Windows используйте .bat-скрипты и msvc:
preconfigure.bat REM настройка python, meson, ninja
configure.bat REM запуск meson b + vs project
make.bat REM запуск ninja -C b
prefix\bin\radare2.exe
С помощью инструмента r2pm вы можете просматривать и устанавливать множество плагинов и инструментов, использующих radare2.
pddr2 frida://0 для его использованияpdgЭто первые шаги для использования r2. Читайте книгу или ищите учебные пособия для получения более подробной информации
$ r2 /bin/ls # открыть файл в режиме только для чтения
> aaa # проанализировать программу (r2 -A)
> afl # список всех функций (попробуйте aflt, aflm)
> px 32 # вывести 32-байтовый hexdump текущего блока
> s sym.main # перейти к main (используя имя флага)
> f~foo # отфильтровать флаги, соответствующие 'foo' (внутренний |grep)
> iS;is # список секций и символов (rabin2 -Ss)
> pdf; agf # дизассемблирование и ascii-art граф функций
> oo+;w hello # переоткрыть в режиме чтения-записи и записать строку
> ?*~... # интерактивный фильтр во всей справке по командам
> q # выход
Многие плагины включены в r2 по умолчанию. Но вы можете расширить его возможности, используя менеджер пакетов r2pm.
r2pm -s <слово> # поиск пакетов, соответствующих слову
r2pm -Uci <pkg> # обновить базу данных и выполнить чистую установку пакета
r2pm -u <pkg> # удалить указанный пакет
r2pm -l <pkg> # список установленных пакетов
Узнайте больше о r2, посмотрев выступления на youtube с r2con. Также есть множество записей в блогах, слайдов и официальная книга radare2, но всегда полезно присоединиться к любому из официальных чатов и задать свои вопросы или оставить отзыв там.
#radare, #radare_side#radare:matrix.orgWindows (начиная с XP для x86/x64/arm64), Linux, Darwin, GNU/Hurd, Apple {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, Apple Dyldcache, Kernelcache, MCLF trustlets, DEX, ART, классы Java, образ загрузки Android, исполняемые файлы Plan9, Amiga HUNK, ZIMG, загрузчик MBN/SBL, ELF coredump, MDMP (Windows minidump), PDP11, XTAC, CGC, DotNet, WASM (бинарный WebAssembly), эмулятор Commodore VICE, DOL, QNX, WAD, OFF, TIC-80, GB/GBA, PSX, PRG (C64), Apple Classic PEF, NDS, z64 и N3DS ...
Монтирование в пользовательском пространстве нескольких файловых систем, таких как NTFS, FAT, HFS+, EXT, APFS, BeosFS, BFS, MINIX, ReiserFS, SFS, ubifs, ufs, jfs, ISO9660, UDF, xfs