Repolode
symgraph

symgraph/GhidrAssist

Расширение для Ghidra на базе LLM: помогает объяснять код, вести чаты и проводить агентный анализ при реверс-инжиниринге.

Звёзды
767
Форки
77
Открытые issues
4
Последний коммит
5 дней назад

Что это?

GhidrAssist — плагин на Java для Ghidra, который подключает реверс-инженеров к большим языковым моделям. Он работает с любым API, совместимым с OpenAI v1, включая локальные серверы, такие как Ollama и LM Studio, и облачные сервисы, такие как OpenAI, Anthropic и Azure. С его помощью можно объяснять функции в дизассемблированном или декомпилированном псевдо-C-коде, вести многошаговые чаты с сохранением истории и выполнять произвольные запросы с контекстом функции.

Помимо обычных запросов, плагин строит семантический граф знаний бинарного файла на уровнях инструкций, блоков, функций, модулей и всего бинарного файла. Он сохраняет сводки LLM в SQLite, выявляет сообщества функций с помощью алгоритма Leiden и извлекает сведения об использовании сетевых API, API работы с файлами и криптографических API, указывая уровень риска. Режим агента ReAct умеет планировать этапы анализа, вызывать инструменты и обобщать результаты. Поддержка MCP позволяет работать с сервером GhidrAssistMCP и инструментами для Ghidra.

Проект предназначен для реверс-инженеров и специалистов по безопасности, которым нужна помощь LLM прямо в Ghidra. Требуется Ghidra версии 11.0 или новее.

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

  • 01Объясняет функции в дизассемблированном и декомпилированном псевдо-C-коде.
  • 02Поддерживает многошаговые чаты с сохранением истории.
  • 03Строит иерархический семантический граф знаний и хранит данные в SQLite.
  • 04Извлекает сведения об использовании сетевых API, API работы с файлами и криптографических API, указывая уровень риска.
  • 05Запускает агента ReAct, который планирует и выполняет этапы анализа.
  • 06Подключается к MCP-серверам по SSE для работы с инструментами для Ghidra.

Сценарии использования

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

Быстрый старт

  1. 1

    Скопируйте ZIP-архив бинарного релиза в каталог Extensions Ghidra (если требуется).

  2. 2

    В Ghidra перейдите в File > Install Extension и включите GhidrAssist.

  3. 3

    Откройте CodeBrowser, включите GhidrAssist и задайте хост API и ключ API в настройках.

Что важно знать

  • Требуется API LLM, совместимый с OpenAI v1; может понадобиться платный ключ API или локальный сервер моделей.
  • Требуется Ghidra версии 11.0 или новее.
  • Режим агента и Actions зависят от моделей с надежной поддержкой вызова инструментов.

Темы

Частые вопросы

Что такое GhidrAssist?
Расширение для Ghidra на базе LLM: помогает объяснять код, вести чаты и проводить агентный анализ при реверс-инжиниринге. GhidrAssist — плагин на Java для Ghidra, который подключает реверс-инженеров к большим языковым моделям. Он работает с любым API, совместимым с OpenAI v1, включая локальные серверы, такие как Ollama и LM Studio, и облачные сервисы, такие как OpenAI, Anthropic и Azure. С его помощью можно объяснять функции в дизассемблированном или декомпилированном псевдо-C-коде, вести многошаговые чаты с сохранением истории и выполнять произвольные запросы с контекстом функции.
GhidrAssist можно использовать бесплатно? Какая у него лицензия?
GhidrAssist распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
GhidrAssist всё ещё поддерживается?
Активно поддерживается. Последний коммит в GhidrAssist — 16 окт. 2026 г..
Для чего можно использовать GhidrAssist?
Быстро разбираться в незнакомых функциях при первичном анализе бинарного файла. Искать в бинарном файле использование сетевых API, API работы с файлами и криптографических API с указанием уровня риска. Запускать локальную LLM для анализа проприетарных бинарных файлов, не отправляя код в облачный сервис. Задавать многошаговые вопросы, например отслеживать поток данных между функциями.
Как установить GhidrAssist?
Скопируйте ZIP-архив бинарного релиза в каталог Extensions Ghidra (если требуется). В Ghidra перейдите в File > Install Extension и включите GhidrAssist. Откройте CodeBrowser, включите GhidrAssist и задайте хост API и ключ API в настройках.
Где скачать GhidrAssist?
Исходный код и инструкции по установке — на GitHub: https://github.com/symgraph/GhidrAssist

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

MCP-сервер позволяет AI-ассистентам управлять Ghidra для анализа бинарных файлов и предоставляет более 200 инструментов для декомпиляции, переименования и аннотирования.

5,8 тыс.347JavaApache-2.0Обновлён 6 дней назад