GhidraMCP: open-source проект, позволяющий LLM автономно управлять Ghidra для реверс-инжиниринга 146

小编 ·

GhidraMCP: open-source проект, позволяющий LLM автономно управлять Ghidra для реверс-инжиниринга

GhidraMCP — open-source проект, использующий протокол MCP, который позволяет AI-моделям (например, Claude) автономно управлять Ghidra для реверс-инжиниринга. Он предоставляет клиентам MCP доступ к ключевым функциям Ghidra, включая декомпиляцию, анализ бинарных файлов, автоматическое переименование методов и данных, а также вывод списков методов, классов, импортов и таблиц экспортов.

GhidraMCP: open-source проект, позволяющий LLM автономно управлять Ghidra для реверс-инжиниринга

Что такое GhidraMCP?

GhidraMCP — это проект с открытым исходным кодом, который через протокол MCP позволяет большим AI моделям (таким как Claude) самостоятельно управлять Ghidra для выполнения реверс-инжиниринга. Он открывает основные функции Ghidra для клиентов MCP, поддерживая декомпиляцию, анализ бинарных файлов, автоматическое переименование методов и данных, а также вывод списков методов, классов, таблиц импорта и экспорта.

GhidraMCP: позволяет большим AI моделям самостоятельно управлять Ghidra для реверс-инжиниринга.jpg

Функциональные возможности GhidraMCP

  • Декомпиляция и анализ: поддержка декомпиляции и анализа бинарных файлов в Ghidra с генерацией читаемого псевдокода.

  • Автоматическое переименование: автоматическая аннотация имён методов, структур классов и переменных данных на основе семантического анализа для повышения читаемости кода.

  • Извлечение структурированной информации: пакетный экспорт списков функций программы, определений классов, таблиц импорта/экспорта и других метаданных.

  • Совместимость с несколькими клиентами: поддержка всех клиентов, совместимых с протоколом MCP, таких как Claude Desktop и 5ire.

Сценарии применения GhidraMCP

  • Анализ вредоносного ПО: автоматическое выявление цепочек вызовов подозрительных API в образцах, создание аннотированных отчётов декомпиляции, повышение эффективности анализа.

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

  • Реверс-инжиниринг программного обеспечения: помощь в понимании логической структуры сложного ПО, снижение сложности реверс-инжиниринга.

Техническая архитектура

  • Протокол MCP: выступая в роли «переводчика», определяет стандартный формат взаимодействия между AI и инструментами, поддерживая передачу команд и возврат результатов.

  • Скриптовый мост Python: скрипт bridge_mcp_ghidra.py анализирует команды AI и вызывает плагин Ghidra через Socket-соединение.

  • Плагин Ghidra: GhidraMCPPlugin прослушивает команды и вызывает Java API Ghidra для выполнения декомпиляции, символьного анализа и других операций.

Как использовать GhidraMCP

1. Установка плагина Ghidra:

  • Загрузите последнюю версию дистрибутива GhidraMCP.

  • Запустите Ghidra, выберите File -> Install Extensions и импортируйте загруженный ZIP-файл.

  • Перезапустите Ghidra и убедитесь, что плагин включён.

2. Настройка клиента MCP:

  • Claude Desktop: отредактируйте файл конфигурации claude_desktop_config.json, добавив конфигурацию сервиса GhidraMCP.

  • 5ire: задайте конфигурацию инструмента в клиенте, указав Tool Key, Name и Command.

3. Запуск и использование:

  • После запуска клиента можно взаимодействовать с AI на естественном языке, вызывая функции Ghidra для реверс-анализа.

GhidraMCP на GitHub:https://github.com/LaurieWired/GhidraMCP