← Все проекты
Проект / C++

0xeb/libghidra: libghidra — SDK для автоматизации Ghidra из Python, Rust и C++

Автоматизируйте реверс-инжиниринг: декомпилируйте, переименовывайте, аннотируйте и управляйте проектами Ghidra программно, а не через GUI.

0xeb/libghidra — open-source проект на C++, который стоит оценить перед внедрением или доработкой.

★ 17 C++ Форки 1 Issue 0 Оценка 7/10 Карточка проверена

Для кого это

Для разработчиков инструментов реверс-инжиниринга, исследователей безопасности и автоматизаторов, которым нужно интегрировать Ghidra в свои пайплайны.

Проблема / задача

Ghidra — мощный, но Java-ориентированный инструмент с GUI. Автоматизация через скрипты на Java неудобна, а интеграция с внешними системами на Python, Rust или C++ требует сложных обёрток.

Как это работает

Проект добавляет в Ghidra расширение, которое запускает HTTP-сервер с типизированным Protobuf API. Внешние клиенты на Python, Rust или C++ подключаются к этому серверу и могут читать память, функции, символы, типы, декомпилировать код и вносить изменения — всё без написания Java-кода. Архитектура разделена на Java-хост (расширение Ghidra) и легковесные клиентские SDK.

Что видно по README

Libghidra — это набор SDK, который превращает Ghidra из интерактивного GUI-инструмента в программируемую инфраструктуру. Через типизированное RPC API вы можете управлять жизненным циклом проекта, декомпилировать функции, работать с памятью, символами, типами и аннотациями из вашего любимого языка.

Ключевые возможности

Типизированное Protobuf API с 89 RPC-методамиКлиенты для Python (sync/async), Rust и C++Работа с декомпилятором, памятью, функциями, символами и типамиУправление проектами: открытие, сохранение, закрытиеCLI-инструмент для быстрых проверок и анализа

Технологии

ProtobufHTTP/RPCC++20Python 3.12+RustC++GogRPC

Интересный факт

Вместо того чтобы навязывать gRPC или сложные IPC-механизмы, проект использует простой бинарный Protobuf поверх HTTP POST-запросов, что делает интеграцию максимально прямой и отлаживаемой.

С чего начать

  • Установите расширение LibGhidraHost в свою Ghidra 12.0.4+
  • Запустите Ghidra, откройте программу и запустите сервер через Tools > libghidra Host
  • Подключитесь к серверу с помощью Python-клиента: pip install -e python и проверьте статус

Оценка GitRadar

Удобство
6/10
Свежесть
9/10
Перспектива
8/10
Монетизация
7/10
Общая оценка
7/10

Вердикт GitRadar

Стоит пробовать, если вы серьёзно автоматизируете реверс-инжиниринг и устали от Java-скриптов Ghidra. Проект сыроват (альфа-версия), но архитектура продумана, а покрытие API впечатляет.

Наблюдения по обновлениям

Проект активен, версия 0.0.1 альфа. API стабилен в использовании, но ещё развивается. Есть подробная документация и примеры на трёх языках.

Что мы проверили

Карточка собрана по данным GitHub, README и структуре репозитория. Это не официальная документация проекта.

Исходный репозиторий
https://github.com/0xeb/libghidra
Лицензия
MPL-2.0
Создан на GitHub
21 апреля 2026 г.
Последнее обновление репо
21 апреля 2026 г.
Последняя проверка GitRadar
21 апреля 2026 г.
Изученные файлы
ghidra-extension/README.md, python/src/libghidra/tools/cli.py, README.md, rust/README.md, proto/README.md, python/README.md

FAQ

Что это такое?

Набор SDK, который позволяет управлять Ghidra (инструментом реверс-инжиниринга) из Python, Rust или C++ через HTTP API, минуя Java.

Для кого подходит?

Для разработчиков, которые хотят встроить анализ бинарников в свои автоматизированные пайплайны, например, для анализа вредоносного ПО или аудита безопасности.

Источники

  • GitHub исходный код и активность
  • README описание, ссылки, стартовые материалы

Нужна помощь с 0xeb/libghidra?

Если проект подходит под ваш сценарий, можем помочь с установкой, интеграцией, доработкой или аккуратным форком под вашу инфраструктуру.