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

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

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

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

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

Категории

Все категории
Loading categories
IDAssist — Плагин для IDA Pro для реверс-инжиниринга на основе ИИ | Kitploit
Инструменты/GitHubGitHub/symgraph/idassist
Статический анализАнализ уязвимостейАнализ КодаОбратная инженерияОтладчикиСбор информацииАнализ Бинарных ФайловМашинное ОбучениеОбучение и ОбразованиеОбратная Разработка с Помощью ИИ
GitHubsymgraph/idassist

IDAssist

705731 месяц назадПроверено Kitploit

Популярное

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

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

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

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

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

Плагин для IDA Pro для реверс-инжиниринга на основе ИИ

Репозиторий

IDAssist

Плагин для реверс-инжиниринга на основе ИИ для IDA Pro

Автор: Jason Tang

Описание

IDAssist — это плагин для IDA Pro, который интегрирует анализ на основе LLM непосредственно в интерфейс IDA, обеспечивая реверс-инжиниринг бинарных файлов с помощью ИИ через настраиваемые LLM-провайдеры, семантические графы знаний, поиск по RAG-документам и поддерживает большое разнообразие LLM-провайдеров.

Созданный на Python и PySide6, IDAssist работает как закрепляемая панель внутри IDA Pro 9.0+ и взаимодействует с LLM-провайдерами (OpenAI, Anthropic, Ollama, LiteLLM и другими) для анализа функций, предложения переименований, ответов на вопросы о коде и построения индексируемого графа знаний всего бинарного файла.

Screenshot

Основные возможности

Объяснение функций — Создание подробных объяснений дизассемблированных функций на естественном языке с автоматическим анализом безопасности, включая уровень риска, профиль активности, флаги безопасности и обнаружение API.

Интерактивный чат запросов — Задавайте вопросы о бинарном файле с сохранением истории чата. Используйте контекстные макросы (#func, #addr, #line, #range) для внедрения кода функций, адресов или диапазонов дизассемблирования в запросы.

Автоматические действия — Предложения переименований функций, переменных и типов на основе ИИ. Просмотрите предлагаемые изменения в таблице с оценками уверенности, затем примените выбранные действия к IDB.

Семантический граф знаний — Создавайте и исследуйте граф знаний бинарного файла: функции, отношения вызовов, потоки данных и характеристики безопасности. Включает визуализацию графов, семантический поиск и обнаружение сообществ.

Поиск по RAG-документам — Загружайте справочные документы (.txt, .md, .rst, .pdf) и используйте их как контекст при запросах к LLM. Поддерживает гибридный текстовый+векторный поиск через индексацию Whoosh.

Интеграция с SymGraph — Отправляйте и получайте имена функций, переменных, типы и данные графа на платформу SymGraph. Включает многошаговый мастер с разрешением конфликтов при получении.

Управление настройками — Настройте несколько LLM и MCP провайдеров, управляйте учетными данными API SymGraph, настраивайте системный промпт и задавайте пути к базам данных.

Расширенные возможности

ReAct Agent

Вкладка Query поддерживает автономный режим агента ReAct (Reasoning + Acting). При включении LLM планирует стратегию исследования, выполняет инструменты для сбора информации, анализирует результаты и синтезирует исчерпывающий ответ — всё автоматически за несколько раундов рассуждений.

Расширенное мышление

Настройте уровень усилий рассуждения, чтобы контролировать, сколько LLM «думает» перед ответом:

MCP Интеграция

IDAssist может подключаться к внешним MCP-серверам для взаимодействия с LLM с расширенными инструментами, где модель может программно проверять функции, читать дизассемблирование, запрашивать перекрестные ссылки и изменять IDB во время рассуждений. Поддерживаются как MCP-серверы на основе URL (SSE или Streamable HTTP), так и MCP-серверы на основе stdio, запускаемые из локальной команды CLI. IDAssist также предоставляет встроенные внутренние инструменты для вызова функций без необходимости внешнего MCP-сервера.

Вызов функций

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

Обратная связь RLHF

Оставляйте положительные/отрицательные отзывы об объяснениях и ответах на запросы. Отзывы хранятся локально и могут использоваться для улучшения инженерии промптов и выбора модели.

Архитектура

IDAssist следует шаблону MVC (Model-View-Controller):

  • Представления (src/views/) — виджеты вкладок PySide6, которые отправляют сигналы при взаимодействии пользователя
  • Контроллеры (src/controllers/) — соединяют сигналы представлений с вызовами служб, управляют состоянием
  • Службы (src/services/) — бизнес-логика, LLM-провайдеры, доступ к базе данных, анализ графов
  • Внутренние инструменты (src/services/internal_tools.py) — определения инструментов, специфичных для IDA, для вызова функций LLM
  • Графовые инструменты (src/services/graphrag/graphrag_tools.py) — инструменты чтения/записи семантического графа для взаимодействия с LLM

Ключевые принципы проектирования:

  • Все вызовы IDA API выполняются в главном потоке через execute_on_main_thread()
  • Ответы LLM передаются в UI инкрементально (постепенно)
  • Локальные базы данных SQLite для сохранения состояния (не требуется внешняя база данных)
  • Реестр служб-одиночек с потокобезопасной инициализацией

Быстрый старт

  1. Установите плагин (рекомендуется — IDA Plugin Manager):

    root@kitploit:~
    hcli plugin install idassist
    

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

  2. Или установите вручную (из архива релиза):

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

    Linux / macOS:

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

    Windows: Extract the zip into %APPDATA%\Hex-Rays\IDA Pro\plugins\.

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

    Linux / macOS:

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

    Windows:

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

    Замените <IDA_INSTALL_DIR> на путь установки IDA Pro (например, /opt/idapro-9.0 или C:\Program Files\IDA Pro 9.0).

Подробные инструкции по настройке см. в Начало работы.

Настройка LLM-провайдера

IDAssist поддерживает следующие типы провайдеров:

Рекомендуемые модели

ПровайдерМодельСильные стороны
Anthropicclaude-sonnet-4-6

Использование семантического графа

Вкладка Semantic Graph предоставляет граф знаний бинарного файла:

  1. ReIndex Binary — Извлекает структуру функций, граф вызовов и перекрестные ссылки
  2. Semantic Analysis — Генерирует сводки LLM для каждой функции
  3. Security Analysis — Обнаруживает шаблоны уязвимостей и API, связанные с безопасностью
  4. Network Flow — Отслеживает сетевые операции по графу вызовов
  5. Community Detection — Группирует связанные функции в модули

Исследуйте граф через List View (вызывающие, вызываемые, ребра, флаги), Visual Graph (интерактивная диаграмма узлов с расширением на N шагов) или Search (7 типов запросов, включая семантический поиск, похожие функции и контекст вызовов).

Действия контекстного меню

Щелкните правой кнопкой мыши в любом представлении дизассемблирования или псевдокода, чтобы получить доступ:

ДействиеГорячая клавишаРезультат

Требования

  • IDA Pro 9.0+ с Python 3 и PySide6
  • Hex-Rays Decompiler (рекомендуется для функций псевдокода)
  • Python-пакеты, перечисленные в requirements.txt

Документация

  • Индекс документации
  • Начало работы
  • Справочник по вкладкам: Explain | Query | Actions | Semantic Graph | RAG | Settings
  • Рабочие процессы: Explain | Query | Semantic Graph

Домашняя страница

https://symgraph.ai

Лицензия

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

Скачать инструмент
УровеньБюджет мышленияЛучше всего подходит для
НетОтключеноБыстрые, простые запросы
Низкий~2K токеновПрямолинейный анализ
Средний~10K токеновУмеренная сложность
Высокий~25K токеновГлубокий анализ, сложный код

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

  • Откройте IDAssist: Запустите IDA Pro, откройте бинарный файл и нажмите Ctrl+Shift+A (или Edit > Plugins > IDAssist).

  • Настройте провайдера: Перейдите на вкладку Settings, нажмите Add в разделе LLM Providers и настройте предпочитаемого провайдера.

  • Проанализируйте функцию: Перейдите к любой функции, щелкните вкладку Explain и нажмите Explain Function.

  • ТипМетод аутентификацииПримечания
    anthropic_platformAPI KeyПрямой API Anthropic
    anthropic_oauthOAuth (браузер)Аутентификация через браузер
    anthropic_claude_cliЛокальный CLIИспользует бинарник claude CLI
    bedrockУчетные данные AWSПрямой API AWS Bedrock Converse
    openai_platformAPI KeyПрямой API OpenAI
    openai_oauthOAuth (браузер)Аутентификация через браузер
    ollamaНет (локально)Самостоятельно размещенные модели
    litellmURL проксиМногопровайдерный прокси
    Сильный анализ кода, расширенное мышление
    OpenAIgpt-5.3-codexБыстрый, хороший общий анализ
    Ollamaqwen2.5-coder:32bЛокально, не нужен API-ключ
    Объяснить функциюCtrl+Shift+EОткрывает вкладку Explain и генерирует объяснение
    Спросить о выделенииCtrl+Shift+QОткрывает вкладку Query с контекстом #func
    Предложения переименования—Открывает вкладку Actions и генерирует предложения