Перейти к содержимому

Ghidra

Опубликовано: National Security Agency

Набор средств Ghidra для обратной инженерии

Открытый исходный кодApache-2.0

Основное

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

Об этом приложении

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

Работа организована в виде проекта, содержащего одну или несколько импортированных программ. Автоматические проходы анализа находят функции, перекрёстные ссылки, строки и таблицы переходов; далее представление листинга, граф функции, дерево символов, менеджер типов данных и просмотрщик байтов позволяют разбирать двоичный файл и фиксировать полученные сведения. Процессоры описываются на расширяемом языке спецификаций, поэтому охват выходит далеко за пределы x86 и ARM, распространяясь на встраиваемые и более старые архитектуры.

Ghidra написана на Java и работает везде, где доступна подходящая среда выполнения Java. Сценарии можно писать на Java или Python, более крупные расширения подключаются к фреймворку, а отдельный серверный компонент позволяет нескольким аналитикам совместно работать над одним проектом. Программа предполагает, что читатель уже свободно владеет ассемблером.

Linux

Мы не размещаем этот файл у себя, не сканируем его и не изучаем его содержимое. Прочитайте, что пишет источник, и решайте сами.