GhidraMCP: инструмент обратного проектирования для соединения ИИ с Гидрой

Общее введение

GhidraMCP - это инструмент с открытым исходным кодом, основной целью которого является объединение искусственного интеллекта (ИИ) с Ghidra, мощным программным обеспечением для обратного проектирования. Он автоматизирует задачу анализа бинарных файлов, позволяя большим языковым моделям (LLM) работать непосредственно с Ghidra через протокол Model Context Protocol (MCP). Этот инструмент был разработан LaurieWired на GitHub и выпущен в марте 2025 года. Он подходит для исследователей безопасности, программистов и пользователей, интересующихся реверс-инжинирингом. GhidraMCP призван сделать сложный ручной анализ более эффективным, особенно в таких сценариях, как анализ вредоносного ПО и обнаружение уязвимостей.

GhidraMCP:连接AI与Ghidra的逆向工程工具

 

Список функций

  • Автоматизированный реверс-инжиниринг: управляйте Ghidra с помощью искусственного интеллекта для автоматического анализа двоичных файлов.
  • Переименование методов и данных: определяйте методы и данные в коде и автоматически генерируйте более читабельные имена.
  • Разбор двоичного файла: перечисление функций, классов, информации об импорте и экспорте файла.
  • Поддержка анализа вредоносного ПО: помогает выявить потенциальные уязвимости безопасности и вредоносное поведение.
  • Поддерживает несколько MCP Клиент: Совместимо Клод Desktop, 5ire и другие клиенты.
  • Открытый исходный код и возможность настройки: пользователи могут изменять код или расширять функциональность по мере необходимости.

 

Использование помощи

Процесс установки

GhidraMCP необходим для работы с клиентами Ghidra и MCP. Ниже приведены подробные шаги по установке:

  1. Подготовка среды
    • Убедитесь, что вы установили Ghidra, инструмент для обратного проектирования с открытым исходным кодом, разработанный Агентством национальной безопасности (АНБ), который можно загрузить с сайта Ghidra.
    • Установите среду Python, рекомендуется Python 3.8 или выше, поскольку некоторые скрипты зависят от Python.
    • Загрузите GhidraMCP. из репозитория GitHub Нажмите "Релизы", чтобы получить последнюю версию ZIP-файла.
  2. Установка плагина Ghidra
    • Распакуйте загруженный ZIP-файл GhidraMCP и найдите файл плагина (обычно это файл .zip (Формат).
    • Откройте Гидру и перейдите в меню File -> Install Extensions.
    • Нажмите кнопку "+", чтобы выбрать извлеченный файл плагина, подтвердите выбор и перезапустите Ghidra.
    • После установки плагина функциональность GhidraMCP автоматически интегрируется в Ghidra.
  3. Настройка клиента MCP
    GhidraMCP требует MCP-клиента для подключения к AI. Ниже приведены примеры из Claude Desktop и 5ire:

    • Конфигурация рабочего стола Claude
      • Откройте рабочий стол Claude и перейдите в раздел Settings -> Developer -> Edit Config.
      • Редактирование файла конфигурации claude_desktop_config.jsonДобавьте следующее:
        {
        "mcpServers": {
        "ghidra": {
        "command": "python",
        "args": ["/你的绝对路径/bridge_mcp_ghidra.py"]
        }
        }
        }
        
      • безопасный bridge_mcp_ghidra.py Путь к файлу правильный, этот файл находится в пакете загрузки GhidraMCP.
    • Конфигурация 5ire
      • Откройте 5ire и перейдите в раздел Tools -> New.
      • Введите путь и параметры для GhidraMCP в настройках и сохраните конфигурацию.
    • После завершения настройки запустите клиент, и ИИ сможет взаимодействовать с Ghidra по протоколу MCP.
  4. Проверка установки
    • Откройте Ghidra и загрузите двоичный файл (например. .exe возможно .bin).
    • Введите команду в клиент MCP, например, "Проанализировать все функции этого файла". Если результат возврата нормальный, установка прошла успешно.

Основные функции

  • Автоматизированный анализ бинарных файлов
    • После открытия целевого файла в Ghidra переключитесь на клиент MCP.
    • Введите команду на естественном языке, например "перечислить все функции и переименовать их", и ИИ автоматически вызовет функции Ghidra, проанализирует файл и вернет результаты.
    • Результаты отображаются в клиентском интерфейсе и обычно включают в себя список функций и автоматически сгенерированные новые имена.
  • Переименование методов и данных
    • На стороне клиента введите "rename all unnamed functions". ИИ догадается, для чего используется функция, основываясь на контексте, и даст вам более интуитивное имя.
    • Если требуется ручная корректировка, переименованный результат синхронизируется с представлением кода Ghidra.
  • Анализ вредоносного ПО
    • После загрузки образца вредоносного ПО введите "Проверить потенциальные уязвимости" или "Найти вредоносное поведение".
    • ИИ проверяет таблицы импорта файла, строки и отношения вызовов, возвращая возможные проблемы безопасности, такие как подозрительные сетевые запросы или операции с файлами.

рабочий процесс

  1. Запустите клиенты Ghidra и MCP.
  2. Импортируйте двоичный файл в Ghidra и нажмите "Analyze", чтобы начать начальный разбор.
  3. Переключитесь на клиент MCP и введите команду анализа, например "извлечь все строки" или "проанализировать вызовы функций".
  4. Просмотрите полученные результаты, при необходимости скорректируйте инструкции или проверьте детали вручную.
  5. Сохраняя результаты анализа, Ghidra поддерживает экспорт в файл проекта для последующего использования.

предостережение

  • Убедитесь, что сеть открыта, некоторые модели ИИ необходимо вызывать в режиме онлайн.
  • Если вы столкнулись с ошибкой, проверьте bridge_mcp_ghidra.py или обратитесь за помощью к странице Issues на GitHub.
  • Для больших файлов анализ может занять больше времени, поэтому рекомендуется сначала протестировать небольшие образцы.

 

сценарий применения

  1. Исследование вредоносных программ
    Исследователи безопасности могут использовать GhidraMCP для быстрого анализа вирусов или троянцев, чтобы найти логику выполнения и скрытые функции вредоносного кода.
  2. Поиск уязвимостей в программном обеспечении
    Разработчики могут использовать его для проверки двоичных файлов на наличие потенциальных дыр в безопасности, таких как переполнение буфера или несанкционированный доступ.
  3. Изучите обратный инжиниринг
    Новички могут быстро разобраться в структуре и функциях двоичных файлов с помощью искусственного интеллекта, что снижает порог обучения.

 

QA

  1. Какие операционные системы поддерживает GhidraMCP?
    Он совместим со всеми системами, поддерживаемыми Ghidra, включая Windows, Mac и Linux.
  2. Требуется опыт программирования?
    Не требуется. Установка и базовое использование - это пошаговый процесс. Однако если вы хотите настроить функциональность, знание Java или Python будет преимуществом.
  3. Можно ли использовать его в автономном режиме?
    Да, но некоторые модели ИИ должны быть подключены к сети. Если вы используете локальные модели, вы можете запускать их полностью автономно.
© заявление об авторских правах

Похожие статьи

Sketch-Gen:生成高质量线稿和草图,反推图像提示词,一键安装包

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...