Radare2
20 Листопада, 2016
Radare2 (также известный как r2) – свободный кроссплатформенный фреймворк для реверс-инжиниринга написанный на С, который включает дизассемблер, шестнадцатеричный редактор, анализатор кода и т. д.. Используется при реверсе и отладке вредоносного программного обеспечения и прошивок. Работает под управлением операционных систем Microsoft Windows, Mac OS X, Linux, iOS и Android.
Проект Radare начал разрабатывать хакер с ником pancake в 2006 году и долгое время по сути он был единственным разработчиком. Изначально проект задумывался как шестнадцатеричный редактор с простым консольным интерфейсом, позволялявший находить и восстанавливать данные с жестких дисков. Поэтому его называли «инструментом для компьютерной криминалистической экспертизы». В дальнейшем, по сообщению авторов, произошло изменение концепции проекта, и целью разработчиков стало создание полноценной платформы, предназначенной для анализа бинарных файлов, в частности – исполняемых.
В 2010 году произошел «редизайн» фреймворка, после чего проект стал разрастаться и пополняться новыми функциями, что позволяет его использовать не только как редактор, но и как дизассемблер и анализатор как кода, так и шеллкодов.
Состав Radare2
Фреймфорк Radare2 доступен в виде библиотек и утилит:
- Rasm2 – ассемблер/дизассемблер фреймворка, выполнен как отдельное приложение и позволяет дизассемблировать как бинарные, так и отдельные строки.
- Rabin2 – утилита для работы с различными исполняемыми файлами (ELF, PE, Java class, Mach-O).
Используется для получения различной информации о файле: импортируемые функции, экспортируемые символы, секции, подключаемые библиотеки и прочее.
- Rahash2 – утилита для получения хеш-значений во многих форматах как от бинарных файлов, так и от определенных частей данных.
- Radiff2 – утилита для сравнения бинарных файлов.
- Rafind2 – утилита для поиска как строк с помощью и без регулярных выражений, так и данных в шестнадцатеричном формате или по бинарному шаблону.
- Ragg2 – экспериментальная утилита для компиляции небольших программ для x86/x64- и ARM-архитектур.
- Rax2 – утилита для конвертации данных в различных форматах.
- Rarun2 – позволяет запускать программу с различными параметрами среды, аргументами, правами и директориями.
Поддерживаемые архитектуры Radare2
- Intel 4004
- Семейство Intel x86/x86-64
- ARM
- Серия Atmel AVR
- Brainfuck
- Motorola 68k
- Hitachi/Renesas H8/300
- Ricoh 5A22
- MOS 6502
- Smartcard PSOS Virtual Machine
- Виртуальная машина Java
- Семейство MIPS:
mipsb/mipsl/mipsr/mipsrl/r5900b/r5900l
- PowerPC
- Семейство SPARC
- TMS320Cxxx
- Argonaut RISC Core
- Серия Intel 51:
8051/80251b/80251s/80930b/80930s
- Zilog Z80
- LH5801
- CR16
- Cambridge Silicon Radio (CSR)
- Android/VM Dalvik
- DCPU-16
- Байт-код EFI
- Gameboy
- Байт-код Java
- Malbolge
- MSIL/CIL
- Nios II
- SuperH
- SPC700
- System z
- TMS320
- V850
- Whitespace
- XCore
- Pebble
Поддерживаемые форматы файлов Radare2
- COFF и производные, в том числе Win32/64 PE
- ELF и производные
- Mach-O (Mach) и производные
- Картриджи Game Boy и Game Boy Advance
- MZ (MS-DOS)
- Классы Java
- dyld дампы кэша
- Dex (Dalvik EXecutable)
- Xbox (формат xbe)
- Исполняемые файлы Plan9
- Виртуальная машина фильтров Winrar
- Файловые системы (семейство ext, ReiserFS, HFS+, NTFS, FAT, …)
- Форматы отладочной информации DWARF и PDB
- Бинарные файлы без формата (Raw binary)
Ссылки
Сайт Radare2
Скачать Radare2