Radare2: Справочник команд и установка
Быстрый справочник команд Radare2
| Категория | Команда | Описание |
|---|---|---|
| Анализ | `aa` | Проанализировать все (функции, блоки, переходы) |
| `afl` | Список найденных функций | |
| `af @ <addr>` | Проанализировать функцию по адресу | |
| `aac` | Анализировать кросс-ссылки и вызовы | |
| Дизассемблирование | `pd 20` | Показать 20 строк дизассемблированного кода |
| `pdf @ main` | Показать дизассемблирование функции `main` | |
| `px 32 @ <addr>` | Показать 32 байта в hex с указанного адреса | |
| Навигация | `s <addr>` | Перейти по адресу (например, `s main`, `s 0x00400510`) |
| `afn <newname>` | Переименовать текущую функцию | |
| `f` | Показать метки/флаги | |
| Визуальные режимы | `V` | Войти в визуальный режим (vim-подобный интерфейс) |
| `VV` | Граф вызовов (CFG) | |
| `V!` | Режим в curses (TUI) | |
| Отладка | `ood <binary>` | Запуск отладчика |
| `db <addr>` | Установить breakpoint | |
| `dc` | Продолжить выполнение | |
| `ds` | Шаг в функцию | |
| `dso` | Шаг с обходом | |
| `dr` | Показать регистры | |
| `drr` | Подробный вывод регистров | |
| Работа с памятью | `wx <hex>` | Записать байты (например, `wx 9090`) |
| `pxw 16` | Показать 16 слов (4 байта) в hex | |
| Строки и символы | `iz` | Показать строки (анализируемые) |
| `is` | Показать символы/экспорты | |
| `iI` | Показать информацию об импортах | |
| Скрипты и API | `. <file>` | Выполнить скрипт (например, `. script.r2`) |
| `#!pipe` | Использовать r2pipe-подключение | |
| Помощь | `?` | Общая справка |
| `?v` | Показать версии команд | |
| `?*` | Показать все доступные справки |
Установка Radare2
Windows
- Способ 1: Portable-сборка
- Распакуйте в удобное место (например, `C:\Tools\radare2`)
- Добавьте путь `bin` в `PATH`
- Способ 2: Через MSYS2
- Установите MSYS2: [https://www.msys2.org/](https://www.msys2.org/)
- Откройте MSYS2-консоль:
```
pacman -Syu
pacman -S radare2
```
- Способ 3: Chocolatey
- Через PowerShell от имени администратора:
```
choco install radare2
```
Linux
- Debian/Ubuntu:
```
sudo apt update sudo apt install radare2 ```
- Arch Linux / Manjaro:
```
sudo pacman -S radare2 ```
- Fedora:
```
sudo dnf install radare2 ```
- Альтернативный способ (из исходников):
```
git clone https://github.com/radareorg/radare2 cd radare2 ./sys/install.sh ```
Android (через Termux)
- Установите Termux: [https://f-droid.org/packages/com.termux/](https://f-droid.org/packages/com.termux/)
- Откройте Termux и выполните:
```
pkg update pkg install radare2 ```
- Проверка:
```
r2 -v ```
Полезные ссылки
- Официальный сайт: https://rada.re/
- Cutter (GUI): https://cutter.re/
- Документация: https://book.rada.re/
- Сообщество: https://reddit.com/r/radare2 | Telegram, Discord, IRC
Заключение
Radare2 — мощный, кроссплатформенный и скриптуемый фреймворк для бинарного анализа, который можно использовать как в терминале, так и с помощью графических оболочек, таких как Cutter. Он отлично подходит для CTF, реверса прошивок, изучения протоколов и низкоуровневой отладки. Освоение CLI может занять время, но гибкость оправдывает усилия.