
REA: реверс-инжиниринг с AI-агентами
REA (Reverse Engineer Anything) — open-source CLI и MCP-сервер для AI-агентов, позволяющий декомпилировать приложения и бинарники через Hopper или Ghidra.
REA: Reverse Engineer Anything — реверс-инжиниринг с AI-агентами
«Видите функцию в чужом приложении, которую хотите у себя? Попросите агента исследовать её с REA — даже без исходного кода.»
REA — это инструмент, позволяющий выполнять реверс-инжиниринг чего угодно с помощью агентов: от поведения приложений до нативных бинарников. Он представляет собой комплексный CLI и MCP-сервер, созданный специально для AI-агентов, занимающихся исследованием программного обеспечения.
Проект написан на TypeScript, набрал уже более 7 800 звёзд на GitHub и имеет почти 900 форков.
Что это и для кого?
REA даёт AI-агентам возможность глубоко исследовать программное обеспечение — от высокоуровневых функций до бинарной реализации — обеспечивая локальную приватность и превращая полученные знания в конкретный код.
Целевая аудитория:
- Разработчики, желающие понять, как реализована та или иная функция в стороннем приложении
- Специалисты по безопасности (pentest, malware-анализ)
- Исследователи, изучающие поведение закрытых программ
- Команды, интегрирующие AI-агентов (Claude, Cursor, Copilot и др.) в рабочие процессы анализа кода
Ключевые возможности
Модель расследования (Investigation Model)
Декомпиляция — открыть приложение и извлечь читаемый код, строки, имена и другие зацепки о том, как оно устроено. Понимание — проследить код от одной части приложения к другой, пока агент не сможет объяснить, как реально работает та или иная функция. Воссоздание — превратить полученные знания в функцию для вашего продукта, адаптированную под ваш стек, интерфейс и требования.
Поддерживаемые форматы и платформы
REA умеет открывать Mach-O, ELF, PE, .app, ZIP, APK, IPA, ASAR, plist, JavaScript, source-map и другие форматы целей для анализа.
Помимо нативных бинарников, REA поддерживает статический анализ JavaScript и Electron-приложений (директорий или .asar-файлов) без их запуска, а также пассивное наблюдение за веб-сайтами, Electron-процессами и средой V8 Inspector.
Интеграция с дизассемблерами
Глубокий нативный анализ выполняется через Hopper или Ghidra на macOS и Linux, с экспериментальным путём только через Ghidra для нативных x86-64 Windows-приложений. REA устанавливает и управляет Hopper автоматически (поддерживается бесплатный демо-режим), а адаптер Ghidra работает в режиме только чтения и предоставляет инвентаризацию, декомпиляцию, ассемблер, перекрёстные ссылки, графы вызовов и досье функций.
Адаптер Ghidra предоставляет 22 операции только для чтения: функции, строки, символы, ассемблер, декомпиляция, вызовы, ссылки, инструкции и типы данных. Они также поддерживают рабочие процессы обзора, поиска, построения графа вызовов и анализа функций в REA.
Поддерживаемые AI-агенты
REA поддерживает Claude Code, Claude Desktop, Codex, Cursor, Gemini CLI, Windsurf, Devin, OpenCode, Antigravity, GitHub Copilot CLI и VS Code.
Новая версия v4.1.0 (октябрь 2026)
В версии 4.1.0 добавлен статический анализ APK через headless JADX, поддержка firmware-анализа через Binwalk и Unblob, атомарное редактирование аннотаций функций в Ghidra.
Пример рабочего процесса
# Установка и настройка
npx rea-agents setup
# Добавление навыка реверс-инжиниринга агенту
npx skills add morluto/rea --skill reverse-engineer-anything
# Запуск анализа из терминала
rea analyze /path/to/app.exe
rea decompile /path/to/binary --function main
После настройки достаточно описать агенту приложение или функцию, которую вы хотите понять, — и REA начнёт расследование.
flowchart LR
A["Агент / Терминал"] --> B["REA CLI + MCP"]
B --> C["Роутер сессий"]
C --> D["Реестр провайдеров"]
D --> E["Hopper\n(нативный анализ, macOS)"]
D --> F["Ghidra\n(Linux/macOS/Win x64 exp.)"]
D --> G["JS/Electron\nстатический анализ"]
D --> H["Browser CDP\nпассивное наблюдение"]
E --> I["Evidence + Отчёт"]
F --> I
G --> I
H --> I
Пакеты навыков (Skill Packs)
Запланированы пакеты навыков: triage нативных бинарников, инвентаризация установщиков и пакетов приложений, трассировка браузерных и веб-функций, реконструкция протоколов десктопных клиентов, анализ мобильных приложений, анализ байткода managed-runtime, triage вредоносных программ в изолированной среде, сравнение версий и локализация регрессий.
Тарифы и цены
REA — проект с открытым исходным кодом, распространяется под лицензией MIT. Сам инструмент полностью бесплатен.
Для нативного бинарного анализа требуется Hopper или Ghidra.
- Ghidra — бесплатный open-source дизассемблер от АНБ США.
- Hopper — коммерческий дизассемблер. Его демо-версия поддерживает анализ с ограничениями, установленными производителем. Полная лицензия Hopper стоит около $100 (разовая покупка).
Плюсы и минусы
| ✅ Плюсы | ❌ Минусы |
|---|---|
| Полностью open-source (MIT) | Требует Hopper или Ghidra для нативного анализа |
| Интеграция с популярными агентами (Claude, Cursor, Copilot и др.) | Поддержка Ghidra на Windows экспериментальная и неполная |
| CLI + MCP из коробки | Требует Node.js 22+ |
| Анализ выполняется локально — данные не уходят в облако | Крутая кривая обучения для новичков в реверс-инжиниринге |
| Поддерживает APK, IPA, ELF, PE, Mach-O, ASAR и др. | REA показывает, как сделаны выводы, но не претендует на восстановление оригинального исходного кода |
| Активная разработка (v4.1.0 вышла 6 октября 2026) | Возможны галлюцинации агента при сложных бинарниках |
| Поддержка Electron, JavaScript, браузерного CDP | Ghidra-провайдер требует строго Ghidra 12.1.4 + JDK 21 |
Сравнение с альтернативами
AI-реверс-инжиниринг в целом означает использование LLM, подключённого к дизассемблеру (Ghidra, IDA Pro или Binary Ninja), для переименования функций, объяснения логики и выявления паттернов.
| Параметр | REA (morluto/rea) | r2ai (radare2) | LLM4Decompile |
|---|---|---|---|
| Тип | CLI + MCP-сервер для агентов | AI-плагин для radare2 | Fine-tuned LLM-модель |
| Лицензия | MIT (open-source) | Open-source | Open-source |
| Цена | Бесплатно (Hopper платный) | Бесплатно | Бесплатно (своя GPU) |
| Агентная интеграция | ✅ Claude, Cursor, Copilot и др. | ❌ Только через r2 REPL | ❌ Прямой API |
| Поддержка форматов | ELF, PE, Mach-O, APK, ASAR, JS… | Широкий (ELF, PE, Mach-O…) | Только бинарники C/C++ |
| Нативный анализ | Hopper + Ghidra | radare2 | Через Ghidra (v2) |
| Восстановление исходников | ❌ Не заявляется | ❌ | ✅ (главная цель) |
| Анализ Electron/JS | ✅ | ❌ | ❌ |
| Платформы | macOS, Linux (Win exp.) | macOS, Linux, Windows | Любая (inference) |
| Активность (2026) | Очень высокая | Высокая | Высокая |
Radare2 — набор CLI-инструментов для реверс-инжиниринга и бинарного анализа; его основной инструмент r2 — интерактивный REPL с поддержкой многих архитектур и форматов бинарных файлов. В отличие от него, REA ориентирован на агентный рабочий процесс и экосистему MCP.
LLM4Decompile специализируется на декомпиляции бинарного кода с помощью больших языковых моделей и выходит SK²Decompile с двухфазным подходом — но это узкоспециализированный инструмент без агентной интеграции.
Быстрый старт
# Требования: Node.js 22+
npx rea-agents setup
# Диагностика установки
rea doctor --json
# Просмотр доступных провайдеров
rea providers --json
Вы агенту: «Исследуй функцию автосохранения в Notion.app и объясни, как она работает на уровне бинарника»
Агент с REA: откроет Mach-O-бинарник, найдёт релевантные функции через граф вызовов, декомпилирует их через Hopper, покажет строки и символы — и предложит реализацию для вашего проекта.
Вердикт
REA — один из наиболее продуманных open-source инструментов в пространстве AI-реверс-инжиниринга 2026 года. Он занимает уникальную нишу: не пытается заменить дизассемблер, а превращает связку «агент + дизассемблер» в единый управляемый рабочий процесс через MCP.
Проект честно заявляет, что не претендует на восстановление оригинального исходного кода. Вместо этого он производит читаемый код, строки, имена и другие улики, а также досье функций — всё это записывается как Evidence-записи.
Кому подойдёт:
- ✅ Разработчикам, использующим Claude/Cursor/Copilot и желающим исследовать чужой код
- ✅ Security-инженерам на macOS/Linux, работающим с нативными бинарниками
- ✅ Командам, занимающимся анализом мобильных APK и Electron-приложений
- ❌ Тем, кто ищет автоматическое восстановление исходников
- ❌ Windows-пользователям (поддержка пока экспериментальная)
Рейтинг: 8.5/10
| Критерий | Оценка |
|---|---|
| Функциональность | 9/10 |
| Простота настройки | 7/10 |
| Агентная интеграция | 10/10 |
| Платформенная зрелость | 7/10 |
| Активность разработки | 10/10 |
| Документация | 8/10 |