Radare2

Exploitation v6.1.8 · 23.06.2026 активный

Открытый фреймворк для обратной разработки и анализа бинарных файлов. Включает дизассемблер, отладчик, hex-редактор, скриптование через Python и r2lang, поддержку десятков архитектур (x86, ARM, MIPS, RISC-V и др.) и форматов (ELF, PE, Mach-O). Полноценная альтернатива IDA Pro; также существует графический интерфейс Cutter.

v6.1.8
23.06.2026 current

Установка
git clone https://github.com/radareorg/radare2
cd radare2 && sys/install.sh
# Открыть бинарник
r2 ./binary
# Полный анализ
[0x00000000]> aaa
[0x00000000]> pdf @ main
показать оригинал переведено ИИ

screenshot

Radare2: Свободный фреймворк для реверс-инжиниринга для Unix-гиков

Latest packaged version Tests Status build tcc CII Best Practices Build Status Discord

Текущая ветка master в git — 6.2.1, следующая версия будет 6.2.2.

Описание

r2 — это полная переработка radare. Он предоставляет набор библиотек, инструментов и плагинов для упрощения задач реверс-инжиниринга. Распространяется под лицензией LGPLv3, хотя каждый плагин может иметь свою лицензию (подробности см. в r2 -Lj).

Проект radare начинался как простой консольный шестнадцатеричный редактор, ориентированный на форензику. Сегодня r2 — это полнофункциональный низкоуровневый инструмент командной строки с поддержкой скриптинга через встроенный интерпретатор Javascript или через r2pipe.

r2 может редактировать файлы на локальных жёстких дисках, просматривать память ядра и отлаживать программы локально или через удалённые серверы gdb/windbg. Широкая архитектурная поддержка r2 позволяет анализировать, эмулировать, отлаживать, модифицировать и дизассемблировать любые бинарные файлы.

screenshot

Установка

Скачайте последние релизные бинарные файлы.

Рекомендуемый способ установки radare2 — из исходников Git-репозитория:

git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
  • Запустите sys/install.sh для установки по умолчанию (acr+make+symlink)
  • Поддерживаются сборки через meson/ninja (также работают muon/samu) и make.

Nix

radare2 предоставляет пакеты Nix в dist/nix.

Сборка из исходников

  • r2 можно установить из git или через pip с помощью r2env.
  • Для сборки под Windows требуются meson и компиляторы msvc или mingw.
  • Чтобы удалить текущую сборку r2, выполните make uninstall.
  • Чтобы удалить ВСЕ системные установки r2, выполните: sudo 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.

  • iaito: Официальный графический интерфейс на Qt
  • keystone: Ассемблирование инструкций с помощью библиотеки Keystone
  • decai: Декомпилятор на основе ИИ
  • r2ai: Запуск языковой модели в локальном режиме с Llama внутри r2!
  • r2dec: Декомпилятор на основе r2, написанный на JS, доступен через команду pdd
  • r2diaphora: Diaphora — движок бинарного сравнения поверх radare2
  • r2flutter: Анализ AOT-снимков Dart/Flutter для Android и iOS
  • r2frida: Плагин frida io. Запустите r2 с r2 frida://0 для его использования
  • r2ghidra: Автономный нативный декомпилятор Ghidra, доступен через pdg
  • r4ghidra: Почувствуйте радость radare внутри Ghidra
  • r2papi: Высокоуровневый API поверх r2pipe
  • r2pipe: Скриптинг radare2 из любого языка программирования
  • r2poke: Интеграция с GNU/Poke для расширенных возможностей парсинга бинарных файлов
  • goresym: Импорт символов GoReSym в виде флагов
  • r2yara: Запуск Yara из r2 или использование примитивов r2 из Yara
  • radius2: Быстрый движок символьного исполнения на основе boolector и esil
  • r2sarif: Импорт/расширение/экспорт документов SARIF
  • r2hermes: Дизассемблер и анализатор байт-кода React Native Hermes
  • r2renef: Плагин IO для Radare2 — динамическая инструментация Android
  • r2unity: Анализ метаданных Unity IL2CPP и нативных бинарных файлов с помощью radare2
  • warrp Нативный плагин radare2 для формата WARP из Binary Ninja

Использование

Это первые шаги по работе с 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

Ресурсы

  • Официальная книга: Изучите использование r2
  • COMMUNITY.md: Вовлечение сообщества и общие рекомендации
  • CONTRIBUTING.md: Информация о сообщении об ошибках и участии в разработке. См. также Contributing
  • DEVELOPERS.md: Рекомендации по разработке для r2
  • SECURITY.md: Инструкции по сообщению об уязвимостях
  • USAGE.md: Некоторые примеры команд
  • INSTALL.md: Инструкции по установке с помощью make или meson

Документация

Узнайте больше о r2, посмотрев выступления на YouTube с r2con. Также существует множество блогпостов, презентаций и официальная книга radare2, но всегда полезно присоединиться к одному из официальных чатов и задать там свои вопросы или поделиться отзывами.

Сообщество

Поддерживаемые платформы

Операционные системы

Windows (начиная с 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, DEX, ART, Java class, загрузочный образ Android, исполняемые файлы Plan9, Amiga HUNK, ZIMG, загрузчики MBN/SBL, дамп ядра ELF, 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.

Статус пакетирования

  • Snap package
  • Termux package
  • Alpine Linux 3.23 package Alpine Linux 3.22 package
  • Arch package
  • Fedora 42 Fedora 41
  • Homebrew package MacPorts package
  • Haiku Ports Void Linux
Войдите, чтобы оставить комментарий