binary-ninja-reverse — скилл для Claude Code: обзор и установка
Помогает исследовать бинарные файлы в Binary Ninja через анализ представлений HLIL, MLIL и LLIL. Пригодится для проверки кросс-ссылок, поиска строк и безопасного патчинга.
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a claude-codeЧто делает binary-ninja-reverse
Скилл выстраивает анализ исполняемых файлов в Binary Ninja. Агент изучает логику на уровне декомпиляции HLIL, переходит к MLIL для проверки потоков данных или спускается к LLIL, если трансляция скрывает детали инструкций. Рабочий процесс опирается на адреса, кросс-ссылки и таблицы импорта.
Интеграция работает через графический интерфейс, Python API или локальный мост MCP. Скилл считает любые правки байтов опасными мутациями. Работать нужно строго на копии. Иначе вы рискуете испортить оригинальный бинарный файл.
Для анализа требуется установленный дизассемблер Binary Ninja с коммерческой лицензией. Если приложение недоступно, рабочий процесс переключается на альтернативные дизассемблеры из набора инструментов.
Какие задачи решает
- исследовать логику декомпиляции в HLIL и потоки данных в MLIL
- проверить вызовы функций, строки и таблицы экспорта
- внести точечные байтовые патчи в копию бинарного файла
- передать команды анализа через локальный мост MCP
Примеры запросов агенту
- Изучи функцию main в Binary Ninja и покажи декомпиляцию в HLIL
- Найди все перекрёстные ссылки на строку ошибки в открытом бинарнике через Binary Ninja
- Подготовь патч инструкции в копии файла и проверь изменения в представлении LLIL
Как установить binary-ninja-reverse
1Через Skills CLI (Vercel)
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a claude-code2Вручную: положить файлы
~/.claude/skills/binary-ninja-reverse/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/binary-ninja-reverse/
1Через Skills CLI (Vercel)
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a codex2Вручную: положить файлы
.agents/skills/binary-ninja-reverse/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a cursor2Вручную: положить файлы
.cursor/skills/binary-ninja-reverse/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install zhaoxuya520/reverse-skill binary-ninja-reverse2Вручную: положить файлы
.github/skills/binary-ninja-reverse/SKILL.md1Через Skills CLI (Vercel)
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a gemini-cli2Командой платформы
gemini skills install https://github.com/zhaoxuya520/reverse-skill --path skills/binary-ninja-reverseВручную: положить файлы
.devin/skills/binary-ninja-reverse/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора5
Весь набор →Похожие
Вопросы о binary-ninja-reverse
Как установить binary-ninja-reverse в Claude Code?
Выполните команду npx skills add zhaoxuya520/reverse-skill --skill binary-ninja-reverse -a claude-code.
Зачем нужен скилл binary-ninja-reverse?
Он помогает анализировать скомпилированные программы в Binary Ninja, разбирать граф вызовов и изучать промежуточные представления кода.
Что нужно подготовить перед запуском?
Требуется установленный дизассемблер Binary Ninja с действующей коммерческой лицензией. Если планируется управление через агент, запускают локальный мост MCP.
Исходный текст
SKILL.md · MIT
--- name: binary-ninja-reverse description: Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration. --- # Binary Ninja reverse engineering Use Binary Ninja when the user explicitly selects it, when its ILs materially help data-flow analysis, or when IDA/Ghidra/radare2 results need an independent cross-check. ## Start safely 1. Confirm the repository case scope is ready before acting on a target. 2. Check `skills/tool-index.md` for `binaryninja`; Binary Ninja is commercial software and must be installed manually with a valid Vector 35 license. 3. Work on a copy when applying patches or saving database changes. 4. Record imports/exports, entry points, architecture, and file hash before promoting findings. ## Choose the integration - **GUI or Python API:** preferred when Binary Ninja is already open or the user wants direct interactive analysis. - **Community MCP bridge:** use only when explicitly requested and after reviewing the third-party plugin boundary. Keep the Binary Ninja HTTP listener on `127.0.0.1:9009`; do not enable network exposure by default. - **Fallback:** use `ghidra-reverse`, `ida-reverse`, or `radare2` when Binary Ninja is unavailable or its license/API cannot open the target. The reviewed community integration is [`fosdickio/binary_ninja_mcp`](https://github.com/fosdickio/binary_ninja_mcp), GPL-3.0, plugin metadata version `1.1.0`, minimum Binary Ninja build `4000`. The repository is not an official Vector 35 component. This skill was checked against commit `8c5134ee46e2bf44f9a4d846bd971c3e39b3e306` on 2026-09-03. Install the Binary Ninja side through its Plugin Manager or from the reviewed source. For the MCP stdio bridge, pin the published bridge version rather than using an unbounded package: ```text npx -y [email protected] --host 127.0.0.1 --port 9009 ``` Register that command only in the MCP client the user selected. The bridge is not ready until Binary Ninja is running, a binary is open, and the localhost plugin endpoint responds. ## Analysis workflow 1. Enumerate open binaries and select the intended view. 2. Capture binary status, entry points, segments, imports, exports, and representative strings. 3. Follow call sites and cross-references before interpreting a function in isolation. 4. Use HLIL for readable logic, MLIL SSA for data flow, and LLIL/disassembly when lifting loses instruction-level behavior. 5. Apply names, comments, and types incrementally; keep the original addresses in evidence. 6. Treat byte patches, prototype changes, and saved-file writes as mutations. Perform them only when requested and preserve the original artifact. 7. Cross-check high-impact conclusions with a second evidence source or another disassembler. Useful MCP capability families include binary/view selection, `list_imports`, `list_exports`, `list_strings`, `decompile_function`, `get_il`, callers/callees, cross-references, types, comments, renames, and byte patching. Discover the live tool list instead of assuming every upstream function is present. ## Output Report concrete addresses, function names, IL level, supporting strings/imports, confidence, and reproduction steps. Keep the Evidence → Finding → Path chain used by the rest of the repository.
© zhaoxuya520 · MIT · zhaoxuya520/reverse-skill