Бесплатный фреймворк для обратной разработки от АНБ США. Поддерживает дизассемблирование, декомпиляцию в псевдо-C, анализ графа вызовов, скриптинг на Java и Python, кросс-платформенную работу. Конкурент IDA Pro — используется для анализа вредоносного ПО, CTF и исследований уязвимостей.
# Скачать с releases (требует JDK 17+): wget https://github.com/NationalSecurityAgency/ghidra/releases/latest # Распаковать и запустить: unzip ghidra_*.zip && cd ghidra_* && ./ghidraRun

Ghidra — это рамка (фреймворк) для обратного инжиниринга программного обеспечения (SRE), созданная и поддерживаемая Управлением национальной безопасности (NSA). Эта рамка включает в себя комплект многофункциональных инструментов высокого уровня для анализа программного обеспечения, которые позволяют пользователям анализировать скомпилированный код на различных платформах, включая Windows, macOS и Linux. Возможности включают дизассемблирование, ассемблирование, декомпиляцию, построение графов и написание скриптов, а также сотни других функций. Ghidra поддерживает широкий спектр наборов инструкций процессоров и исполняемых форматов и может работать как в интерактивном, так и в автоматизированном режиме. Пользователи также могут создавать собственные компоненты расширений Ghidra и/или скрипты на Java или Python.
В поддержку миссии NSA в области кибербезопасности, Ghidra была создана для решения проблем масштабирования и командной работы в сложных усилиях по SRE, а также для предоставления настраиваемой и расширяемой исследовательской платформы для SRE. NSA применила возможности Ghidra для SRE к различным задачам, связанным с анализом вредоносного кода и получением глубоких выводов для аналитиков SRE, которые стремятся лучше понять потенциальные уязвимости в сетях и системах.
Если вы являетесь гражданином США и вам интересны такие проекты, чтобы разрабатывать Ghidra и другие инструменты кибербезопасности для NSA, чтобы помочь защитить нашу страну и её союзников, рассмотрите возможность подачи заявки на работу в нашей организации.
ПРЕДУПРЕЖДЕНИЕ: Известны о безопасности определённых уязвимости в определённых версиях Ghidra. Прежде чем продолжить, пожалуйста, ознакомьтесь с Советами по безопасности Ghidra, чтобы лучше понять, как они могут вас затронуть.
Для установки официального предварительно собранного кросс-платформенного релиза Ghidra:
* Установите JDK 21 64-бит
* Загрузите файл релиза Ghidra
- ПРИМЕЧАНИЕ: Официальный кросс-платформенный файл релиза имеет имя
ghidra_<version>_<release>_<date>.zip, который можно найти в выпадающем списке "Assets".
Загрузка файлов с названием "Source Code" на этом шаге будет неверной.
* Распакуйте файл релиза Ghidra
- ПРИМЕЧАНИЕ: Не распаковывайте поверх существующей установки
* Запустите Ghidra: ./ghidraRun (ghidraRun.bat для Windows)
- или запустите PyGhidra: ./support/pyghidraRun (support\pyghidraRun.bat для Windows)
Для получения дополнительной информации и советов по устранению неполадок при установке и запуске релиза Ghidra, пожалуйста, обратитесь к документу Начало работы, который можно найти в корневой директории установки Ghidra.
Для создания последней разрабатываемой сборки для вашей платформы из этого исходного репозитория:
unzip ghidra-master
cd ghidra-master
ПРИМЕЧАНИЕ: Вместо загрузки сжатого исходного кода вы можете склонировать репозиторий GitHub:
git clone https://github.com/NationalSecurityAgency/ghidra.git
ПРИМЕЧАНИЕ: Если есть подключение к Интернету и вы не устанавливали Gradle, команду ./gradlew (или gradlew.bat) можно использовать вместо команды gradle в следующих инструкциях.
gradle -I gradle/support/fetchDependencies.gradle
gradle buildGhidra
Сжатая разрабатываемая сборка будет находиться в build/dist/.
Для получения более подробной информации о сборке Ghidra, пожалуйста, прочитайте Руководство разработчика.
Если возникают проблемы со сборкой, пожалуйста, проверьте раздел Известные проблемы для возможных решений.
Установки Ghidra поддерживают написание пользователями пользовательских скриптов и расширений через плагин GhidraDev
для Eclipse. Плагин и соответствующие инструкции можно найти в релизе Ghidra по пути
Extensions/Eclipse/GhidraDev/ или по этой ссылке. В качестве альтернативы для редактирования скриптов можно
использовать Visual Studio Code, нажав на иконку Visual Studio Code в Диспетчере скриптов.
Полноценные проекты Visual Studio Code можно создать из окна Ghidra CodeBrowser через
Инструменты -> Создать проект модуля VSCode.
ПРИМЕЧАНИЕ: И плагин GhidraDev для Eclipse, и интеграции с Visual Studio Code поддерживают только разработку для полностью собранных установок Ghidra, которые можно загрузить со страницы Релизы.
Для разработки самого инструмента Ghidra настоятельно рекомендуется использовать Eclipse, для которого процесс разработки Ghidra был значительно адаптирован.
gradle prepdev eclipse buildNatives
Когда Eclipse завершит сборку проектов, Ghidra может быть запущена и отлажена с помощью предоставленной конфигурации запуска Ghidra в Eclipse.
Для получения более подробной информации о разработке Ghidra, пожалуйста, прочитайте Руководство разработчика.
Если вы хотите внести исправления ошибок, улучшения и новые функции в Ghidra, пожалуйста, ознакомьтесь с нашим Руководством участника, чтобы узнать, как вы можете участвовать в этом проекте с открытым исходным кодом.