reverseenengineering:soft_ghidra

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
reverseenengineering:soft_ghidra [2025/06/23 23:58] – ↷ Имя страницы reverseenengineering:ghidra изменено на reverseenengineering:soft_ghidra Lexreverseenengineering:soft_ghidra [2025/07/18 12:37] (текущий) Lex
Строка 1: Строка 1:
-====== GHIDRA ======+====== Ghidra ====== 
 + 
 +**Ghidra** — это мощный набор инструментов для обратной разработки (reverse engineering), разработанный и поддерживаемый **Агентством национальной безопасности США (NSA)**. С момента своего открытия в 2019 году как проекта с открытым исходным кодом, Ghidra стала одним из самых популярных и уважаемых инструментов в области анализа исполняемого кода и программной безопасности. 
 + 
 +===== Основные возможности ===== 
 + 
 +  * Дизассемблирование (disassembly) и декомпиляция (decompilation) широкого спектра архитектур 
 +  * Поддержка множества форматов файлов: PE (EXE, DLL), ELF, Mach-O, BIN и др. 
 +  * Визуализация графов вызовов (call graphs), переходов (control flow), зависимостей и др. 
 +  * Интерактивный анализ кода: переименование функций, переменных, аннотации 
 +  * Встроенный декомпилятор с возможностью вывода в C-подобный код 
 +  * Расширяемость через скрипты (Python, Java) и собственные плагины 
 +  * Многофайловый анализ (Project-based), группировка бинарей 
 +  * Поддержка отладки через интеграцию Ghidra Debugger (GDB, WinDbg, и др.) 
 +  * Совместная работа над проектом (многопользовательский режим) 
 + 
 +===== Поддерживаемые архитектуры ===== 
 + 
 +  * x86 (32-bit и 64-bit) 
 +  * ARM, AARCH64 
 +  * PowerPC 
 +  * MIPS 
 +  * SPARC 
 +  * 68000, Z80, и др. 
 +  * Возможность добавления собственных процессоров (через Sleigh DSL) 
 + 
 +===== Системные требования ===== 
 + 
 +  * **Платформы:** Windows, Linux, macOS (официальная кроссплатформенность) 
 +  * **Java Runtime:** требуется Java 17+ 
 +  * **Аппаратные требования:** от 4 ГБ ОЗУ, SSD рекомендуется, желательно 64-битная ОС 
 + 
 +===== Установка и запуск ===== 
 + 
 +  1. Загрузить с официального сайта: https://ghidra-sre.org/ 
 +  2. Распаковать архив (установка не требуется) 
 +  3. Убедиться в наличии Java 17+ 
 +  4. Запустить `ghidraRun` (Linux/macOS) или `ghidraRun.bat` (Windows) 
 +  5. Создать новый проект и импортировать бинарный файл для анализа 
 + 
 +===== Интерфейс и компоненты ===== 
 + 
 +  * **CodeBrowser** — основной интерфейс анализа и декомпиляции 
 +  * **Decompiler Window** — просмотр C-подобного кода 
 +  * **Symbol Tree** — дерево символов, функций, данных 
 +  * **Listing View** — дизассемблер с аннотациями 
 +  * **Data Type Manager** — редактирование структур, массивов, примитивов 
 +  * **Script Manager** — запуск и написание пользовательских скриптов 
 +  * **Function Graph** — граф вызовов функции 
 +  * **Debugger** — подключение к внешнему процессу или образу памяти 
 + 
 +===== Расширяемость и скрипты ===== 
 + 
 +  * Поддержка скриптов на: 
 +    - Java (основной язык Ghidra) 
 +    - Jython (Python 2.7) 
 +    - Python 3 (через интеграцию с Ghidra 10+) 
 +    - JavaScript, BeanShell и др. 
 +  * Возможность автоматизации задач: автокомментарии, обработка секций, распознавание сигнатур и т. д. 
 +  * Ghidra Extension Manager — установка плагинов 
 +  * Ghidra API позволяет писать собственные плагины и GUI-инструменты 
 + 
 +===== Применение ===== 
 + 
 +  * Анализ вредоносного ПО (malware analysis) 
 +  * Реверс-инжиниринг проприетарных форматов 
 +  * Изучение уязвимостей и эксплойтов 
 +  * Исследование бинарей закрытых программ 
 +  * Создание сигнатур, автоматизация распознавания паттернов 
 +  * Анализ прошивок и встраиваемых систем 
 + 
 +===== Сравнение с аналогами ===== 
 + 
 +^ Инструмент        ^ Лицензия     ^ Графический интерфейс ^ Декомпилятор ^ Скрипты ^ Цена     ^ 
 +| **Ghidra**        | Apache 2.0   | Да                    | Да           | Да      | Бесплатно | 
 +| IDA Free / Pro    | Проприетарная| Да                    | Да (Pro)     | Да      | $$$       | 
 +| Radare2 / Cutter  | GPL          | Да (через Cutter)     | Частично     | Да      | Бесплатно | 
 +| Binary Ninja      | Проприетарная| Да                    | Да           | Да      | $$        | 
 + 
 +===== Юридические аспекты ===== 
 + 
 +  * Ghidra распространяется под **лицензией Apache 2.0**, с открытым исходным кодом. 
 +  * Разработка осуществляется NSA и активно поддерживается сообществом. 
 +  * Использование разрешено в коммерческих и исследовательских целях. 
 +  * Исходный код доступен на GitHub: https://github.com/NationalSecurityAgency/ghidra 
 + 
 +===== Полезные ссылки ===== 
 + 
 +  * [Официальный сайт](https://ghidra-sre.org/
 +  * [Документация](https://ghidra.re/
 +  * [Форум и обсуждения](https://github.com/NationalSecurityAgency/ghidra/discussions) 
 +  * [YouTube-видеоуроки](https://www.youtube.com/results?search_query=ghidra+reverse+engineering) 
 + 
 +===== Заключение ===== 
 + 
 +**Ghidra** — это универсальный, мощный и бесплатный инструмент для реверс-инжиниринга, подходящий как для новичков, так и для профессионалов. С поддержкой множества архитектур, гибкой системой скриптов и открытым исходным кодом, Ghidra заняла лидирующую позицию среди решений для анализа исполняемого кода. Рекомендуется всем, кто занимается безопасностью, исследованиями или изучением внутренностей программ. 
 + 
  • reverseenengineering/soft_ghidra.1750697923.txt.gz
  • Последнее изменение: 2025/06/23 23:58
  • Lex