![](https://habrastorage.org/getpro/habr/post_images/d89/650/b6b/d89650b6be05766b3b29bcf6366e5e62.png)
Свободный фреймворк для дизассемблирования и реверс-инжиниринга radare2 запустил краудфандинговую
кампанию с целью собрать 12000 EUR на проведение собственного Summer of Code.
В этом году radare2 не прошел отбор в Google Summer of Code, что не остановило нас, и мы решили всё равно выполнить задуманное (web интерфейс, бинарные шаблоны, миграция на sdb, ROP-компилятор, ESIL — Evaluable Strings Intermediate Language, парсер PDB и протокола Windbg, сигнатурный анализ, bokken — графический интерфейс на PyGtk, поддержка новых архитектур).
![](https://habrastorage.org/getpro/habr/post_images/166/63f/5ed/16663f5ed4e3a8c9ff5c1076be59413b.png)
Фреймфорк написан полностью на языке Си и доступен в виде подключаемых библиотек. Также в состав входят утилиты по сравнению файлов, ассемблеры, мини-компилятор shell-кодов. Большая часть кода распространяется по лицензии LGPL, что позволяет использовать его в коммерческих проектах. Основной парадигмой дизассемблера является его интерактивность.
Среди поддерживаемых архитектур: 8051, x86 (16, 32, 64 бита), arm (включая ARM64/AArch64), avr, arc (ARCtangent A4 и ARCompact), mips, powerpc, sparc, h8, cr16, TI TMS320*, EBC (EFI bytecode), java, dalvik, bf, rarvm. Radare2 компилируется и работает на следующих платформах: GNU/Linux, Windows, OSX, *BSD, Solaris, Android и iOS. Поддерживает скриптование на Vala, Python (ctypes), JavaScript, Perl, Ruby, Go, Guile, Lua, Java, OCaml. Поддерживает как прямую отладку, так и работу с протоколами gdb, winedbg.
Разработка вёдется на GitHub-е, так что каждый может отправить Pull Request с исправлением какого-либо бага, или добавлением новой возможности.
В процессе написания книга по использованию radare2 (пока не закончена).
Также доступны несколько примеров использования:
План на лето с подробным описанием заданий находится тут: rada.re/rsoc
Официальный сайт проекта: rada.re
Скриншот radare2 в действии:![](https://habrastorage.org/getpro/habr/post_images/057/a68/569/057a6856958bc48639e8f3a5209950f3.gif)
![](https://habrastorage.org/getpro/habr/post_images/057/a68/569/057a6856958bc48639e8f3a5209950f3.gif)
Скриншот реверсинга BIOS с помощью radare2:![](https://habrastorage.org/r/w1560/getpro/habr/post_images/d80/169/c7b/d80169c7b5198efd573fce52e19a3643.png)
![](https://habrastorage.org/getpro/habr/post_images/d80/169/c7b/d80169c7b5198efd573fce52e19a3643.png)