Cutter

Бесплатно
Открытый исходный код
Windows
macOS
Linux

Сайт: cutter.re

Cutter — кроссплатформенная открытая среда для обратного инжиниринга и анализа бинарных файлов, разработанная как графическая надстройка над движком Rizin (ранее основанным на radare2). Программа предназначена для исследователей безопасности, реверс-инжиниринга, анализа вредоносного ПО и отладки двоичных компонентов: она объединяет визуальные представления дизассемблированного кода, графовые представления функций и интегрированный декомпилятор с возможностью расширения через плагины и скрипты. Cutter реализует удобный интерфейс для навигации по секциям исполняемых файлов, поиска по сигнатурам и анализа потоков выполнения, сохраняя при этом гибкость и мощь командной строки базового движка.

Проект развивается как свободное программное обеспечение с открытым исходным кодом и ориентирован на широкую совместимость: поддерживаются основные форматы исполняемых файлов и платформы, включая ELF, PE и Mach-O, а также архитектуры x86, x86_64, ARM и другие, реализованные в движке анализа. Cutter включает возможности для интерактивной отладки, интеграции с внешними инструментами, а также для автоматизации задач анализа посредством скриптов на Python и других языках, что делает его пригодным как для отдельных исследователей, так и для командных рабочих процессов. В случае отсутствия подробной документации по конкретным аспектам реализации, общая функциональность и сценарии использования обоснованы типичными свойствами графических интерфейсов над движком бинарного анализа.

  • Графический интерфейс: многооконная среда с панелями для кода, графов функций, сегментов памяти и вывода командной строки.
  • Дизассемблер и навигация: представление ассемблерного кода, выделение функций, перекрестные ссылки и средства поиска по адресу и сигнатуре.
  • Графовое представление функций: визуализация потока управления и взаимосвязей между блоками кода.
  • Интегрированный декомпилятор: преобразование байткода в псевдокод для упрощения анализа логики программы.
  • Скрипты и автоматизация: поддержка плагинов и скриптов (включая Python) для расширения функциональности и автоматизации задач.
  • Отладка: возможности интерактивной отладки с управлением потоками выполнения, установкой точек останова и наблюдением за регистрами и памятью.
  • Поддержка форматов и архитектур: совместимость с основными исполняемыми форматами и архитектурами через движок анализа.
  • Расширяемость: система плагинов и API для интеграции с внешними инструментами и кастомизации интерфейса.
  • Интерактивное редактирование: изменения инструкций и данных в памяти для тестирования гипотез при анализе.
  • Совместимость с движком Rizin: использование нижележащих возможностей анализа, команд и базовых плагинов движка.
Подробнее