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

Список функций
- Автоматизированный реверс-инжиниринг: управляйте Ghidra с помощью искусственного интеллекта для автоматического анализа двоичных файлов.
- Переименование методов и данных: определяйте методы и данные в коде и автоматически генерируйте более читабельные имена.
- Разбор двоичного файла: перечисление функций, классов, информации об импорте и экспорте файла.
- Поддержка анализа вредоносного ПО: помогает выявить потенциальные уязвимости безопасности и вредоносное поведение.
- Поддерживает несколько MCP Клиент: Совместимо Клод Desktop, 5ire и другие клиенты.
- Открытый исходный код и возможность настройки: пользователи могут изменять код или расширять функциональность по мере необходимости.
Использование помощи
Процесс установки
GhidraMCP необходим для работы с клиентами Ghidra и MCP. Ниже приведены подробные шаги по установке:
- Подготовка среды
- Убедитесь, что вы установили Ghidra, инструмент для обратного проектирования с открытым исходным кодом, разработанный Агентством национальной безопасности (АНБ), который можно загрузить с сайта Ghidra.
- Установите среду Python, рекомендуется Python 3.8 или выше, поскольку некоторые скрипты зависят от Python.
- Загрузите GhidraMCP. из репозитория GitHub Нажмите "Релизы", чтобы получить последнюю версию ZIP-файла.
- Установка плагина Ghidra
- Распакуйте загруженный ZIP-файл GhidraMCP и найдите файл плагина (обычно это файл
.zip
(Формат). - Откройте Гидру и перейдите в меню
File -> Install Extensions
. - Нажмите кнопку "+", чтобы выбрать извлеченный файл плагина, подтвердите выбор и перезапустите Ghidra.
- После установки плагина функциональность GhidraMCP автоматически интегрируется в Ghidra.
- Распакуйте загруженный ZIP-файл GhidraMCP и найдите файл плагина (обычно это файл
- Настройка клиента 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.
- Откройте рабочий стол Claude и перейдите в раздел
- Конфигурация 5ire
- Откройте 5ire и перейдите в раздел
Tools -> New
. - Введите путь и параметры для GhidraMCP в настройках и сохраните конфигурацию.
- Откройте 5ire и перейдите в раздел
- После завершения настройки запустите клиент, и ИИ сможет взаимодействовать с Ghidra по протоколу MCP.
- Конфигурация рабочего стола Claude
- Проверка установки
- Откройте Ghidra и загрузите двоичный файл (например.
.exe
возможно.bin
). - Введите команду в клиент MCP, например, "Проанализировать все функции этого файла". Если результат возврата нормальный, установка прошла успешно.
- Откройте Ghidra и загрузите двоичный файл (например.
Основные функции
- Автоматизированный анализ бинарных файлов
- После открытия целевого файла в Ghidra переключитесь на клиент MCP.
- Введите команду на естественном языке, например "перечислить все функции и переименовать их", и ИИ автоматически вызовет функции Ghidra, проанализирует файл и вернет результаты.
- Результаты отображаются в клиентском интерфейсе и обычно включают в себя список функций и автоматически сгенерированные новые имена.
- Переименование методов и данных
- На стороне клиента введите "rename all unnamed functions". ИИ догадается, для чего используется функция, основываясь на контексте, и даст вам более интуитивное имя.
- Если требуется ручная корректировка, переименованный результат синхронизируется с представлением кода Ghidra.
- Анализ вредоносного ПО
- После загрузки образца вредоносного ПО введите "Проверить потенциальные уязвимости" или "Найти вредоносное поведение".
- ИИ проверяет таблицы импорта файла, строки и отношения вызовов, возвращая возможные проблемы безопасности, такие как подозрительные сетевые запросы или операции с файлами.
рабочий процесс
- Запустите клиенты Ghidra и MCP.
- Импортируйте двоичный файл в Ghidra и нажмите "Analyze", чтобы начать начальный разбор.
- Переключитесь на клиент MCP и введите команду анализа, например "извлечь все строки" или "проанализировать вызовы функций".
- Просмотрите полученные результаты, при необходимости скорректируйте инструкции или проверьте детали вручную.
- Сохраняя результаты анализа, Ghidra поддерживает экспорт в файл проекта для последующего использования.
предостережение
- Убедитесь, что сеть открыта, некоторые модели ИИ необходимо вызывать в режиме онлайн.
- Если вы столкнулись с ошибкой, проверьте
bridge_mcp_ghidra.py
или обратитесь за помощью к странице Issues на GitHub. - Для больших файлов анализ может занять больше времени, поэтому рекомендуется сначала протестировать небольшие образцы.
сценарий применения
- Исследование вредоносных программ
Исследователи безопасности могут использовать GhidraMCP для быстрого анализа вирусов или троянцев, чтобы найти логику выполнения и скрытые функции вредоносного кода. - Поиск уязвимостей в программном обеспечении
Разработчики могут использовать его для проверки двоичных файлов на наличие потенциальных дыр в безопасности, таких как переполнение буфера или несанкционированный доступ. - Изучите обратный инжиниринг
Новички могут быстро разобраться в структуре и функциях двоичных файлов с помощью искусственного интеллекта, что снижает порог обучения.
QA
- Какие операционные системы поддерживает GhidraMCP?
Он совместим со всеми системами, поддерживаемыми Ghidra, включая Windows, Mac и Linux. - Требуется опыт программирования?
Не требуется. Установка и базовое использование - это пошаговый процесс. Однако если вы хотите настроить функциональность, знание Java или Python будет преимуществом. - Можно ли использовать его в автономном режиме?
Да, но некоторые модели ИИ должны быть подключены к сети. Если вы используете локальные модели, вы можете запускать их полностью автономно.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...