资讯动态

从应用行为逆向到原生二进制:MCP 逆向工程服务 REA 完整指南

发布时间:2026/10/14 2:52:04 来源:尧图企业网站定制
从应用行为逆向到原生二进制MCP 逆向工程服务 REA 完整指南【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/reaREAReverse Engineer Anything是rea-agents发行的 MCP 逆向工程服务与 CLI。它把 AI Agent 接到 Hopper / Ghidra / IDA对原生二进制、JavaScript/Electron、网站、.NET、APK 等目标做检查每条发现都带证据。读完可完成 Agent 注册、脚本化分析与快照和 Evidence 管理。没有源码只有一个二进制MCP 逆向工程的痛点你在别人的 App 里看到一个想要的功能——声音声像计算、剪贴板桥、弹幕角计算——但手里只有编译产物。手动做法是打开反汇编器逐层追调用、手工记录证据再照着写自己的实现。REA 的定位是让 AI Agent 承担这套追踪 记录工作Agent 通过 MCP 提出调查问题REA 调用本地分析引擎执行检查返回带来源位置与证据的发现Agent 据此追问、解释行为或直接在你的代码库里写一个类似实现并测试。一分钟看懂 REA双形态、本地运行、证据契约技术形态npm 包rea-agentspackage.json 显示当前版本 6.4.0rea与rea-agents两个 bin 入口都指向 scripts/rea.mjsserver.json 声明 MCP 服务器io.github.morluto/reastdio 传输启动参数mcp——这就是 Agent 注册后拉起 REA 的方式。双形态Agent 经 MCP 调用终端经 CLI 直接调用两侧复用 src/application/ 的同一套应用层工作流与输出契约。分析全程在本地运行不上传应用数据政策由你的 Agent 模型提供商各自决定。证据契约每条发现保留工件标识、来源位置、观察、推断与未决发现模型定义见 src/domain/evidence.ts。运行时要求Node.js 22.x22.19、24.x24.11或 26加 npm23、25 与预发布版本不受支持。从零到跑通一条命令注册 Agentnpx rea-agents setup流程选择要配置的 Agent → 审阅拟议的路径与变更 → 批准。Setup 为选中的 Agent 写入 MCP 服务器注册和配套工作流指令skill先备份现有配置任何一步失败都留下完整原因而非半成品的注册。失败语义在 src/application/SetupClients.ts 中逐条列出对应四类可操作的诊断信息reason: path | backup | write | readbackpath配置路径无法安全校验如符号链接未解析到当前用户拥有的普通文件backup备份失败因此未做任何修改write写入失败readback写后校验失败提示修复配置或恢复.rea.backup后重跑。支持的客户端与--client标识取自 src/application/SupportedClients.ts客户端--client值Claude Codeclaude_codeClaude Desktopclaude_desktopCodexcodexCursorcursorGemini CLIgemini_cliWindsurfwindsurfDevindevinOpenCodeopencodeAntigravityantigravityGitHub Copilot CLIcopilot_cliCommand CodecommandcodeVS CodevscodeQwen Code / Pi / Hermesqwen_code/pi/hermesmain 分支还包括trae、grok_build、omp、qoder、zcode、dsh、grok_botnpm 6.4.0 发布覆盖其中 17 个客户端DeepSeek Harnessdsh目前只在 main。表外的任何支持本地 MCP 服务器的 Agent 均可手动注册。版本钉选值得留意持久 MCP 注册钉在真正执行 setup 的版本上之后跑新版 setup 才会在审阅过的事务中迁移旧注册。检查最新发布npm view rea-agents dist-tags.latest日常使用建议安装rea命令npm install --global rea-agents rea --help三种用法分述Agent 对话模式典型 prompt把 Notes 和功能名换成你的目标即可Understand how search works in the Notes app, show me the evidence, and build a similar feature for my project.工作回路Agent 经 MCP 调用 REA 检查目标、追踪相关代码 → REA 返回带证据的发现 → Agent 追问、解释行为或编写并测试一个实现。CLI 直接调用先看可用引擎rea providers --json rea capabilities --json原生分析以 Ghidra 为例rea analyze /absolute/path/to/program --provider ghidra --json rea search /absolute/path/to/program search --provider ghidra --json rea function /absolute/path/to/program main --provider ghidra --json rea decompile /absolute/path/to/program 0x1000 --provider ghidra --jsonanalyze与inspect共用原生概览工作流function返回函数档案dossierdecompile返回伪代码只看汇编用rea instructions。多个候选引擎时自动选择会报ambiguous需显式--providerREA_ANALYSIS_PROVIDER设常设偏好显式参数覆盖它。静态 JavaScript 分析不需要任何逆向引擎npx -y rea-agentslatest analyze-javascript-application /absolute/path/to/app --json结果包含模块、导入关系、Electron 边界及其证据macOS 的.app包可以直接作为目标。脚本化 / 批量分析快照在目标字节、操作、参数、provider 与设置完全匹配时复用同一结果文件本地保存且使用仅限属主的权限。关键点CLI 缓存命中发生在启动 provider 进程之前重复查询的批量脚本因此很快rea analyze /absolute/path/to/program --provider ghidra --snapshot /absolute/path/to/analysis/program.jsonMCP 侧open_binary接受snapshot_path原子导入快照close_binary带snapshot_path与overwrite: true可在释放 provider 资源前保存。Evidence bundle 支持校验、规范导出与两 bundle 比较rea evidence-import /absolute/path/to/evidence/bundle.json rea evidence-export /absolute/path/to/evidence/bundle.json /absolute/path/to/evidence/canonical.json rea compare /absolute/path/to/evidence/left.json /absolute/path/to/evidence/right.json能力全景图能分析哪些目标目标返回内容前置依赖原生二进制伪代码、汇编、字符串、符号、调用与引用Hopper / Ghidra / IDA离线 ELF 布局段、节、原始符号/重定位、静态缓解候选调用方自备 pwntoolsLinux x64Go 二进制编译器版本、模块、replacements、构建设置内置静态检查无需安装 GoWASM 工件校验、节、精确 import/export WAT调用方自备 WABTEVM 字节码分发选择器、字节偏移、推断参数与可变性本地 raw/hex 载体Linux x64记录的 Linux 崩溃各线程寄存器/信号、映射候选调用方自备 pwntools可选 GDB/pwndbgJavaScript / Electron模块、导入、source map、路由、IPC、原生 add-on 关系Node.js 与 npm网站页面结构、脚本、网络观察、请求的截图Chrome 系浏览器已保存网络抓包请求、响应、暴露载荷、来源位置HARLinux 原生 mitmproxy 抓包需 mitmdump.NET 程序集元数据、CIL 指令、声明的原生依赖、构建比较无纯静态Android APK / 设备 / 资源Manifest、类、反编译方法、日志、屏幕捕获无头 JADX JDKadbApktool 启动器Flutter 应用Dart 快照哈希、每 ABI 库摘要、引擎构建来源无静态 APK 解析JEB 工程工程单元、工件摘要、类型/方法伪代码调用方启动的 JEB MCP 客户端固件区域、解包结果、原生分析交接Binwalk / UnblobLinux包与资源文件清单、摘要、plist、Apple bundle 解剖见工件重建指南进程行为终端输出、交互、退出、文件系统观察、运行比较Linux/macOS 原生 PTY安全边界静态 JavaScript 与 .NET 检查只读取给定文件、不运行应用而运行时捕获以你的用户权限运行或交互选中目标每条运行时指南都写明其副作用。机制深潜入口路由与快照命中时机所有rea/rea-agents调用都经过唯一入口 scripts/rea.mjs它在导入任何业务代码前先做路由L14-L15const isMcpMode args.length 1 (args[0] --mcp || args[0] mcp);mcp/--mcp→ 加载dist/mcp/main.js由它独占 stdio 工具目录服务mcp doctor→ 加载 MCP 注册诊断其余参数 → 加载 CLI 与流式 JSON 输出模块。输出先经validateCliOutputArguments校验与净化--json结果走createStreamedCliJsonOutput独立通道——终端拿到的 JSON 与 MCP 工具结果是同一契约下的产物。Evidence 记录的字段模型在 src/domain/evidence.tssubject携带名称、SHA-256 摘要与格式枚举覆盖 mach-o、elf、pe、asar、apk 等形态观察附带地址类来源位置整体冻结为不可变 JSON 快照。快照失效规则也偏保守一旦派发元数据写操作即使回复失败也会使当前会话的快照缓存失效——provider 可能已应用该写此时需关闭并重开目标再导入/保存其他快照。MCP 保存回执分别报告primitive_entries、workflow_entries与evidence_records缓存的是观察结果而非 provider 数据库新查询仍可能需要启动 provider。验证与信任案例与发布边界README 给出三个端到端案例结论都可由仓库内脚本复验DX-Ball 声音声像重建跟随声音调用进入位置→声像辅助函数把不完整伪代码补成 C重建通过 3,205 个 original-x86 用例并复现全部 63 个编译后的函数字节Notion Electron 剪贴板桥找到渲染进程的剪贴板 API经 preload 与 IPC 追进主进程检查富剪贴板格式TH04 DOS 弹幕环检查 PC-98 原作的 16 位指令恢复固定与瞄准角计算把重建的 C 与历史编译器输出做对比。仓库提供 scripts/verify-real-hopper.mjs真实 Hopper 全链路验证与 tests/boundary/ 下的边界测试基线作为复验手段。版本边界是实践中最容易踩的坑仓库 main 分支描述当前代码及其生成的工具目录latest选的是 npm 发布版安装指南记载 2026-10-11 时最新为 6.4.0与仓库 package.json 一致功能判断以已连接服务器实际的工具列表与声明的输入 schema 为准。同一版本字符串出现在开发检出中不能证明其字节与 npm tarball 一致。高频问题必须有 Hopper / Ghidra / IDA 吗只有深度原生分析需要三者之一静态 JavaScript 与 .NET 检查不需要逆向引擎。Setup 可在批准后代装 HopperGhidra 与 IDA 使用你已有安装。需要预先启动 Hopper 吗不需要REA 在操作需要时自行启动。macOS 首跑可能弹出选择演示模式或激活授权的对话框需在首次 CLI/MCP 操作前于同一用户会话完成。REA 会上传我的应用吗不会分析在本地进行Agent 模型提供商有其自身数据政策。REA 返回什么代码原生分析返回伪代码与汇编JavaScript/Electron 分析恢复模块及其关系Agent 基于这些发现编写并测试实现。哪些 Agent 能用 REA任何支持本地 MCP 服务器的 Agent表内客户端一键配置表外手动注册。从 skills.sh 只装 skill 是什么效果只提供调查指令。完整路径是rea setup注册 MCP 服务器并装配套指令后重启 Agent。遇到 bug 怎么办先更新rea update或npx rea-agentslatest setup并重启 Agent 重试仍复现则带 REA 版本、目标类型、复现步骤与错误输出提 issue。为什么--client dsh报不支持dsh目前只在 main 分支未进入 npm 6.4.0 发布等包含它的发布后再对latest执行 setup。延伸阅读安装与 provider 配置docs/installation.md、docs/client-configuration.mdCLI 与 Evidencedocs/cli.mdMCP 契约与 Agent 提示docs/mcp-contracts.md、docs/mcp-prompts.md目标指南docs/native-investigation.md、docs/ida-provider.md、docs/browser-observation.md、docs/android-analysis.md、docs/firmware-analysis.md、docs/managed-code-analysis.md架构与贡献docs/architecture.mermaid、docs/testing.md、CONTRIBUTING.md源码分层src/application/CLI 与 MCP 共享的应用层、src/contracts/工具输入输出契约、src/domain/Evidence 与快照模型【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑