MCP-серверы

binary ninja mcp binary ninja mcp логотип

Сайт https://github.com/fosdickio/binary_ninja_mcp
Цена Бесплатный доступ
Основные направления Инжиниринг ПО, МСР с безопасностью кода

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

Ключевые особенности:

Полный спектр инструментов анализа бинарного кода: Сервер предоставляет AI-модели доступ к десяткам специализированных эндпоинтов, включая decompile_function для получения HLIL-подобного псевдокода, fetch_disassembly для чтения ассемблерного кода и get_il для работы с тремя уровнями промежуточного представления (HLIL, MLIL, LLIL).

Активная модификация базы анализа: AI-агент не просто читает данные, но и может изменять рабочее пространство: переименовывать функции (rename_function), переменные (rename_single_variable) и метки данных (rename_data), устанавливать прототипы (set_function_prototype) и добавлять комментарии (set_comment).

Глубокий анализ связей и типов: Инструменты get_xrefs_to и get_callers/get_callees дают AI возможность прослеживать граф вызовов и перекрестные ссылки, а функции get_user_defined_type и declare_c_type — управлять сложными структурами и типами данных.

Поддержка множества MCP-клиентов из коробки: Плагин включает скрипт mcp_client_installer.py для автоматической настройки подключения с популярными клиентами, включая Cline, Roo Code, Claude Desktop, Cursor, Windsurf и Claude Code, что упрощает первый запуск.

Пакетная обработка и навигация по бинарному файлу: AI-ассистент может получать списки всех функций (list_methods), сегментов (list_segments), импортов/экспортов и строк (list_all_strings), а также искать функции по подстроке (search_functions_by_name) для быстрой навигации по коду.

Для кого: Ориентирован на реверс-инженеров, вирусных аналитиков, разработчиков эксплоитов и CTF-игроков, которые хотят многократно ускорить процесс анализа неизвестного исполняемого файла. Идеально подходит для глубокого аннотирования базы данных Binary Ninja, когда AI-ассистент берет на себя рутинные задачи по разбору графа вызовов, переименованию переменных и поиску уязвимых паттернов, а человек фокусируется на общей стратегии анализа.

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

Решение CTF-задач в паре с AI: Игрок загружает бинарный файл в Binary Ninja и дает Claude Desktop задание: «Проанализируй этот crackme, переименуй все ключевые функции и переменные, и напиши python-скрипт для генерации верного ключа», после чего AI-агент проводит полный цикл реверса, постоянно аннотируя базу данных.

Триаж вредоносного ПО: Вирусный аналитик просит AI-ассистента, используя стратегию анализа, описанную в промпте, начать с точки входа, пройти по графу вызовов, проставить комментарии в подозрительных местах и дать заключение о вредоносности файла на основе полученных данных.

Анализ прошивки устройства: Исследователь просит AI-помощника в Cursor найти все строковые артефакты в прошивке, определить типы данных на ключевых адресах через format_value и построить карту взаимодействия между основными функциями-обработчиками.

Патчинг исполняемого файла: Разработчик эксплоита просит AI-агента через patch_bytes модифицировать инструкцию в целевом адресе, меняя логику программы для тестирования защиты, и сразу же получить дизассемблированный листинг модифицированного участка.

Цены и доступность: Сам плагин и MCP-сервер являются опенсорсными (лицензия MIT) и распространяются бесплатно. Для работы требуется наличие установленной и лицензированной копии Binary Ninja, а также Python 3.12+ и один из поддерживаемых MCP-клиентов. Мост для подключения можно установить через npm (npx -y binary-ninja-mcp) или использовать Python-скрипт напрямую из каталога плагина.