Відбувся реліз фреймворку для реверс-інжинірингу Rizin та пов'язаної з ним графічної оболонки Cutter. Проект Rizin розпочався як форк фреймворку Radare2 та продовжив його розвиток з ухилом на зручний API та фокусом на аналіз коду без форензики. З моменту форки проект перейшов на принципово відмінний механізм збереження сесії («проектів») у вигляді стану на базі серіалізації. Крім того, кодова база значно перероблена у бік зручності супроводу. Код проекту написаний мовою Сі та поширюється під ліцензією LGPLv3.
Графічна оболонка Cutter написана C++ з використанням Qt та поширюється під ліцензією GPLv3. Cutter, як і сам Rizin, націлений на процес зворотної розробки програм у машинному коді або байткоді (наприклад, JVM або PYC). Для Cutter/Rizin існують плагіни декомпіляції на основі Ghidra, JSdec та RetDec.
У новому випуску:
- Додано підтримку створення сигнатур FLIRT, які потім можуть бути завантажені в IDA Pro;
- У постачання включено базу стандартних сигнатур для популярних бібліотек;
- Покращено розпізнавання функцій та рядків виконуваних файлів на Go для x86/x64/PowerPC/MIPS/ARM/RISC-V;
- Реалізовано нову мову проміжного представлення RzIL на базі BAP Core Theory (SMT-подібна мова);
- Додана можливість автовизначення базової адреси для «сирих» файлів;
- Реалізовано підтримку завантаження у налагоджувальному режимі «зліпків» пам'яті на базі Windows PageDump/Minidump форматів;
- Поліпшено роботу з віддаленими відладниками на базі WinDbg/KD.
- На даний момент на новий RzIL переведено підтримку архітектур ARMv7/ARMv8, AVR, 6052, brainfuck. До наступного релізу планується завершити переклад для SuperH, PowerPC та частково x86.
Також додатково випущено:
- rz-libyara – плагін для Rizin/Cutter для підтримки завантаження та створення сигнатур у форматі Yara;
- rz-libdemangle – бібліотека розшифровування імен функцій для мов C++/ObjC/Rust/Swift/Java;
- rz-ghidra – плагін для Rizin/Cutter для декомпіляції (з урахуванням C++ коду Ghidra);
- jsdec – плагін для Rizin/Cutter для декомпіляції оригінальної розробки;
- rz-retdec - плагін для Rizin/Cutter для декомпіляції (на базі RetDec);
- rz-tracetest – утиліта перехресної перевірки коректності трансляції машинного коду RzIL шляхом порівняння з трасою емуляції (на базі QEMU, VICE).
Джерело: opennet.ru