REA — Reverse Engineering Assistant

Reverse Engineering Assistant (REA)

REA разбирает бинарники PE, ELF и Mach-O, прошивки и APK на чистом Rust и выдает отчет в Markdown, PDF и JSON.

  • 109 ★ репозитория
  • Последний коммит
MCP-сервер

Расширенный доступ

Почему такой уровень

  • Разбирает недоверенные файлы и эмулирует их код; в режиме аналитика данные разбора уходят во внешнюю модель.
Все причины и проверки

mytechnotalent/rea

Установка

Ручная установка

git clone https://github.com/mytechnotalent/rea.git

Первая команда из README: клонирование перед сборкой через Cargo.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Разбирает недоверенные файлы и эмулирует их код; в режиме аналитика данные разбора уходят во внешнюю модель.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

REA, фреймворк обратной разработки на чистом Rust, определяет формат файла по содержимому. Он дизассемблирует код, восстанавливает граф вызовов, считает хеши и энтропию, ищет строки, индикаторы компрометации и признаки упаковщиков. Эмулятор P-code исполняет код в песочнице и раскрывает зашифрованные строки без запуска на хосте. `rea serve` поднимает MCP-сервер по stdio с 31 инструментом, среди них `open_binary`, `decompile_function`, `find_xrefs`, `run_rules` и `audit`. С ключом OpenRouter отчет пишет автономный аналитик, без ключа работает офлайн-режим.

Для кого. Исследователям вредоносного кода и аудиторам прошивок, которым агент должен разобрать неизвестный бинарник без Ghidra и Java.

Подходит, если

  • Прислали подозрительный `.exe`, и надо быстро понять, что он делает.
  • Образ прошивки `uImage` с SquashFS: интересует файловая система и найденные учетные данные.
  • Агент в Claude Code декомпилирует функцию, ищет перекрестные ссылки и объясняет точку входа.
  • Перед релизом собирают SBOM в форматах CycloneDX и SPDX из собственного бинарника.

Не подходит, если

  • Нужна интерактивная правка байтов или отладка живого процесса.
  • Формат файла не входит в таблицу поддерживаемых, и результат ограничится хешами, энтропией и строками.
  • Файл принадлежит другому лицу, и права на его анализ не выяснены.

Пример запроса к агенту

Открой ./sample.exe через rea, декомпилируй точку входа, запусти правила возможностей и объясни, что делает программа.

MCP

Транспорт
stdio
Авторизация
не нужна

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

OPENROUTER_API_KEY секрет
Ключ OpenRouter для автономного аналитика; без него работает офлайн-режим.
OPENROUTER_MODEL
Модель аналитика, по умолчанию бесплатная.

Ограничения

Готовый бинарник в репозитории есть только для macOS на Apple Silicon (папка `releases/`), для Windows и Linux нужна сборка `cargo build --release` на стабильном Rust. В режиме аналитика данные разбора уходят в OpenRouter, ключ задают через `OPENROUTER_API_KEY`, а модель по умолчанию бесплатная. Эмулятор работает программно и не повторяет особенности железа. Валидатор помечает цитаты без опоры на улики, но ошибки аналитика возможны, поэтому выводы сверяют с первичными данными.

Как отключить. Удалите регистрацию командой `claude mcp remove rea` и бинарник `rea`. Файлы `re-*.md`, `re-*.pdf` и `re-*.json` лежат рядом с исследованными файлами, их удаляют вручную.

Частые вопросы

Нужны ли Ghidra или Java?

Нет. Дизассемблер и эмулятор встроены, а для не-x86 архитектур используются спецификации SLEIGH, скомпилированные в Rust.

Уходят ли файлы в сеть?

Без ключа OpenRouter сеть не используется, отчет строится офлайн. С ключом аналитик отправляет данные разбора модели.

Как получить настройки для другого агента?

`rea mcp --config` печатает готовые фрагменты для поддерживаемых агентов, а `rea mcp --setup` записывает `mcp_config.json` и `opencode.jsonc`.

Какие форматы файлов поддерживаются?

PE, ELF, Mach-O, прошивки, APK и DEX, .NET, Go, WebAssembly, SQLite, PCAP и другие. Полная таблица лежит в README.

Что выдает одна команда?

`rea <файл>` пишет рядом с целью отчеты `re-<имя>.md`, `re-<имя>.pdf` и `re-<имя>.json`.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы

MCP-сервер и CLI для реверс-инжиниринга: агент разбирает бинарные файлы, JavaScript-приложения, APK и сайты на вашей машине и приводит доказательства

MCP-серверШирокий доступ454,8 тыс.Звезды репозитория

MCP-сервер для реверс-инжиниринга и анализа вредоносных файлов: декомпиляция, YARA, форензика, отчеты с доказательствами

MCP-серверШирокий доступ220Звезды репозитория

MCP-сервер и агентный набор для реверс-инжиниринга: Ghidra, Frida, x64dbg и Rizin для анализа бинарей, CTF и исследования вредоносного ПО

MCP-серверШирокий доступ1,4 тыс.Звезды репозитория

RE-MCP открывает агенту IDA Pro и Ghidra в безголовом режиме: функции, декомпилятор, перекрестные ссылки, типы и патчинг.

MCP-серверШирокий доступ179Звезды репозитория

122 скилла для обратной разработки: вредоносные программы, прошивки, протоколы, мобильные приложения, CTF и поиск уязвимостей.

ПлагинШирокий доступ239Звезды репозитория

MCP-сервер для Ghidra: агент декомпилирует, переименовывает переменные, строит перекрестные ссылки и разбирает бинарные файлы через набор мелких инструментов

MCP-серверШирокий доступ956Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
REA — Reverse Engineering Assistant (эта карточка)нетне нужна109
Ghidra CLIнет267управляет установленной Ghidra; REA разбирает файлы собственным движком на Rust
IDA Pro MCPнетне нужна13 459работает через IDA Pro; REA не требует внешних дизассемблеров

Коротко о README

README представляет REA как один инструмент: `rea <файл>` создает отчеты в Markdown, PDF и JSON рядом с целью. Версия 7.1.0 добавила разбор моделей GGUF и safetensors и архивов Godot PCK. MCP-режим отдан как вторая опция для агентов, сборка идет из исходников через Cargo.

Бейдж для README

Сообщить о проблеме