
UNIX-подобный фреймворк для обратной разработки и набор инструментов командной строки
Текущая ветка git master — 6.2.5, следующий релиз будет 6.2.6.
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 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.
pddr2 frida://0, чтобы использовать егоpdgЭто первые шаги по использованию 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