Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
IDAssistMCP — Автономный плагин MCP-сервера для IDA Pro. | Kitploit
Инструменты/GitHubGitHub/symgraph/idassistmcp
Статический анализДинамический анализ (песочница)Анализ уязвимостейАнализ КодаЭксплуатацияОбратная инженерияОтладчикиАнализ вредоносных программТестирование на ПроникновениеАнализ Бинарных ФайловОбратная Разработка с Помощью ИИАнализ Прошивок
46103 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHubsymgraph/idassistmcp

IDAssistMCP

Автономный плагин MCP-сервера для IDA Pro.

Репозиторий

IDAssistMCP

Автономный MCP-сервер (Model Context Protocol) в виде плагина для IDA Pro 9.x, который предоставляет возможности анализа IDA клиентам LLM, таким как Claude Desktop.

Screenshot

Возможности

  • 41 MCP-инструмент, охватывающий бинарный анализ, декомпиляцию, перекрёстные ссылки, управление символами, систему типов, навигацию, патчинг, экспорт и многое другое
  • 6 объединённых инструментов с параметрами action/format/direction для комментариев, переменных, типов, перекрёстных ссылок, закладок и кода
  • 8 MCP-ресурсов для просмотра бинарных метаданных (общая информация, функции, импорты, экспорты, строки, сведения, сегменты, секции)
  • 7 направляющих подсказок для типовых задач реверс-инжиниринга (анализ функций, поиск уязвимостей, документирование, трассировка потоков данных, сравнение функций, восстановление структур, анализ сетевых протоколов)
  • Транспорты SSE и Streamable HTTP через ASGI-сервер Hypercorn
  • Потокобезопасные изменения IDB через обёртку execute_on_main_thread()
  • LRU-кэш анализа для дорогих операций, таких как декомпиляция
  • Менеджер асинхронных задач для длительных операций
  • Конфигурация Pydantic с поддержкой переменных окружения (префикс IDASSISTMCP_)

Установка

Требования

  • IDA Pro 9.x с Python 3.10+
  • Декомпилятор Hex-Rays (опционально, для инструментов декомпиляции)

Вариант 1: Менеджер плагинов IDA (рекомендуется)

root@kitploit:~
hcli plugin install idassistmcp

Это автоматически устанавливает плагин и его Python-зависимости.

Вариант 2: Установка вручную (из архива релиза)

Скачайте последний zip-архив релиза на GitHub Releases и распакуйте его в каталог плагинов IDA:

Linux / macOS:

root@kitploit:~
unzip IDAssistMCP-*.zip -d ~/.idapro/plugins/

Windows: Распакуйте zip в %APPDATA%\Hex-Rays\IDA Pro\plugins\.

Затем установите зависимости, используя встроенный Python IDA (не системный Python):

Linux / macOS:

root@kitploit:~
<IDA_INSTALL_DIR>/python3/bin/pip3 install -r ~/.idapro/plugins/IDAssistMCP/requirements.txt

Windows:

root@kitploit:~
"<IDA_INSTALL_DIR>\python3\python.exe" -m pip install -r "%APPDATA%\Hex-Rays\IDA Pro\plugins\IDAssistMCP\requirements.txt"

Замените <IDA_INSTALL_DIR> на путь к вашей установке IDA Pro.

Совет: Вы также можете использовать переменную окружения IDAUSR, чтобы указать собственный каталог плагинов.

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

Запуск сервера

  1. Откройте бинарный файл в IDA Pro
  2. Нажмите Ctrl+Shift+M или перейдите в Edit > Plugins > IDAssistMCP
  3. URL MCP-сервера будет выведен в окно вывода IDA
  4. Снова нажмите Ctrl+Shift+M, чтобы остановить сервер

Конфигурация для Claude Desktop

Добавьте в файл claude_desktop_config.json:

root@kitploit:~
{
  "mcpServers": {
    "idassistmcp": {
      "url": "http://localhost:9080/mcp"
    }
  }
}

Переменные окружения

Настройка через переменные окружения с префиксом IDASSISTMCP_:

Справочник инструментов

Управление бинарными файлами (2)

ИнструментОписание
list_binariesПоказать текущий загруженный бинарный файл
get_binary_infoПодробные метаданные бинарного файла (архитектура, хеши, сегменты)

Анализ кода (4)

Перекрёстные ссылки (1 объединённый)

ИнструментДействияОписание
xrefsdirection: to/from/both, include_calls: boolПерекрёстные ссылки и опционально вызывающие/вызываемые для адреса

Комментарии (1 объединённый)

ИнструментДействияОписание
commentsaction: get, set, list, removeУправление комментариями (обычные, повторяемые, функции)

Переменные (1 объединённый)

ИнструментДействияОписание
variablesaction: list, renameПоказать локальные переменные или переименовать локальные/глобальные с scope: auto, local, global

Типы (2 — 1 объединённый + 1 отдельный)

ИнструментДействия / Описание
typesaction: list, set, create_struct, create_enum — управление типами IDB
get_classesПоказать типы структур/классов из библиотеки типов

Поиск функций (5)

Управление символами (2)

ИнструментОписание
rename_symbolПереименовать любой символ (функцию или данные)
batch_renameПакетное переименование нескольких символов

Информация о бинарном файле (5)

Анализ данных (6)

Патчинг (3)

ИнструментОписание
patch_bytesПатчить сырые байты в IDB
assemble_codeАссемблировать инструкцию по адресу и опционально применить патч
export_programЭкспортировать пропатченный бинарный файл или базу IDA на диск

Навигация (4)

Управление задачами (4)

ИнструментОписание
start_taskЗапустить асинхронную фоновую задачу
get_task_statusПроверить прогресс задачи

Структура проекта

root@kitploit:~
IDAssistMCP/
├── idassistmcp_plugin.py              # Точка входа плагина IDA
├── requirements.txt
├── README.md
└── src/
    └── idassist_mcp/
        ├── __init__.py
        ├── server.py                  # Сервер FastMCP + транспорт
        ├── context.py                 # Контекст одного бинарного файла IDA
        ├── tools.py                   # 41 MCP-инструмент (IDA API)
        ├── resources.py               # 8 MCP-ресурсов
        ├── prompts.py                 # 7 подсказок для направленных рабочих процессов
        ├── config.py                  # Настройки Pydantic
        ├── cache.py                   # LRU-кэш анализа
        ├── tasks.py                   # Менеджер асинхронных задач
        ├── logging.py                 # Обёртка для логирования IDA
        ├── utils.py                   # Утилиты для IDA
        └── ui/
            └── tool_registry.py       # Каталог инструментов для UI

Лицензия

Подробности см. в файле LICENSE.

Скачать инструмент
ПеременнаяПо умолчаниюОписание
IDASSISTMCP_SERVER__HOSTlocalhostАдрес привязки сервера
IDASSISTMCP_SERVER__PORT9080Порт сервера
IDASSISTMCP_SERVER__TRANSPORTstreamablehttpТип транспорта (sse или streamablehttp)
IDASSISTMCP_DEBUGfalseВключить режим отладки
IDASSISTMCP_LOG_LEVELINFOУровень логирования
ИнструментОписание
get_codeПолучить код функции — format: 'decompile' (псевдо-C) или 'disasm' (ассемблер)
analyze_functionКомплексный анализ: метаданные, CFG, вызывающие/вызываемые, декомпиляция
get_basic_blocksБазовые блоки CFG с последователями/предшественниками
get_function_stack_layoutРасположение стекового фрейма (локальные переменные, аргументы, сохранённые регистры)
ИнструментОписание
get_functionsВсе функции с фильтрацией и пагинацией
search_functions_by_nameПоиск по имени и фильтрам размера
get_function_by_nameПоиск по точному имени
get_function_by_addressПоиск по адресу
get_function_statisticsАгрегированная статистика (количество, размеры, топ-10)
ИнструментОписание
get_importsТаблица импорта, сгруппированная по модулям
get_exportsТаблица экспорта
get_stringsТаблица строк с пагинацией
get_segmentsСегменты памяти с правами доступа
get_entry_pointsВсе точки входа бинарного файла
ИнструментОписание
read_memoryПрочитать сырые байты по адресу
get_data_atПолучить типизированные данные по адресу
search_bytesПоиск бинарной последовательности байтов
search_stringsПоиск строк с пагинацией
create_data_varОпределить переменную данных по адресу (byte/word/dword/qword/float/ascii/C type)
get_data_varsСписок определённых переменных данных (некодовые элементы)
ИнструментОписание
navigate_toПереместить курсор IDA на адрес
bookmarksОбъединённое управление закладками — действия: list, set, remove
get_current_addressПолучить адрес и контекст в позиции курсора
get_current_functionПолучить информацию о функции в позиции курсора
cancel_taskОтменить выполняющуюся задачу
list_tasksСписок всех асинхронных задач