Ghidra

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

Сайт: ghidra-sre.org

Ghidra — это свободный фреймворк для обратного инжиниринга программного обеспечения и анализа двоичных файлов, разработанный агентством национальной безопасности США (NSA) и впервые выпущенный в открытом доступе. Программный пакет предназначен для исследования исполняемых файлов, извлечения структур, понимания логики программ и восстановления исходно-подобного представления кода. Ghidra поддерживает множество архитектур и форматов исполняемых файлов и используется специалистами по безопасности, исследователями и разработчиками для анализа вредоносного ПО, оценки уязвимостей и изучения бинарных форматов.

Фреймворк включает набор инструментов для дизассемблирования, декомпиляции, статического и динамического анализа, отладки и визуализации структур программы. Архитектура Ghidra ориентирована на расширяемость: предлагается система плагинов и API для скриптинга, что позволяет автоматизировать задачи, интегрировать собственные анализаторы и адаптировать поведение под специфические нужды. Интерфейс сочетает графические средства представления потоков управления и структур данных с возможностью детального анализа инструкций на уровне ассемблера и высокоуровневого псевдокода.

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