让 AI Agent 在本地跑通逆向工程:REA 的 MCP 与 CLI 实践指南
【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea
REA(Reverse Engineer Anything,npm 包rea-agents)是一套本地化逆向工程工具链:它把 Hopper、Ghidra、IDA 的反汇编能力,以及 JavaScript/Electron、.NET、APK、固件、网站的静态分析,统一封装为 MCP 服务与 CLI 命令,供 AI Agent 调用;分析全程留在本机,结论可复核、可复用。
为什么需要它:Agent 缺一套可调用、可复核的逆向工具链
结论先行:要让 AI Agent 可靠地完成逆向分析,短板通常不在模型能力,而在于工具链能否被程序化调用、结果能否复现、结论能否被第三方核对。手工反汇编的代价很高:人工打开引擎、人工搜字符串、人工追交叉引用、人工逐行读伪代码,最终产物只是"屏幕上一段人看过的内容",别人无法复核,Agent 也无法在此基础上继续工作。换句话说,Agent 介入后"打开目标 → 搜索 → 追踪引用 → 反编译"的闭环可以跑起来,前提是底层工具提供结构化输入输出和明确的来源声明。REA 补的正是这一环:它面向 Agent 暴露整条分析链路,每一步的输入、输出和证据格式都是确定的。
🧭 工作机制:引擎调度、零引擎起步与证据契约
本节从三个机制说明 REA 的运行逻辑,不同目标类型的覆盖范围一并交代。
引擎调度:调用本机已有的 Hopper / Ghidra / IDA
REA 自身不捆绑反汇编引擎,它调度的是本机已安装的 Hopper、Ghidra 或 IDA。打开一个原生二进制后,函数档案、伪代码、交叉引用追踪、字符串搜索、指令流查询均可由 Agent 直接发起,返回结果附带来源、提供者版本与置信度。选择逻辑是确定性的:显式--provider参数始终优先;多个引擎都支持同一目标时,REA 不替用户猜测,需要手动指定。rea providers可以查看可用引擎及各自支持的操作。
零引擎起步:JS / Electron 纯静态解析
目标是 Node/Electron 应用时,连反汇编器都不用装。analyze-javascript-application从文件中解析出模块图、导入关系、Source Map、Electron 主进程边界、IPC 通道与原生插件关系,全程只读目标文件,不执行其中任何代码。同样的思路延伸到其他目标:.NET 程序集在元数据与 CIL 指令层做纯静态检查;APK 经 headless JADX 反编译(需完整 JDK);固件在 Linux 上由 binwalk/Unblob 解包,解出的原生部分再交给深度引擎;网站通过 CDP 被动观察页面结构、脚本与网络元数据,可按要求截图。这些目标类型共用同一套术语体系与证据格式,不需要在多种工具间切换上下文。
证据契约:结论可复核、结果可复用
所有结果都以统一的 Evidence 格式输出:结论来源、提供者版本、目标摘要、置信度与局限全部写入记录,契约细节见 docs/mcp-contracts.md。三个常用能力都挂在这条契约之下。rea compare直接对比两份 Evidence,用来验证改动前后行为是否真的变化;快照文件缓存查询结果,目标字节、参数与引擎一致时精确复用,不必重新拉起引擎;rea doctor做只读体检,审计主机环境、依赖、引擎与 Agent 注册状态,不写入任何内容——环境不顺手时,从这里开始排查。
✅ 最短上手路径
前提是 Node.js 22.19+ / 24.11+ / 26+ 与 npm。最短链路三步:注册 Agent 集成 → 只读体检 → 跑一次 JS 分析。
npx rea-agents setup npx rea-agents doctor npx -y rea-agents@latest analyze-javascript-application /绝对路径/to/app --json > app-evidence.json第一条命令以多选列表给出受支持的 Agent 并写入集成配置,可顺带批准安装 Hopper;第二条命令输出环境体检报告。第三条命令的产物是模块图加 Evidence,大型应用可达数百 MB,务必先重定向到文件,再用 jq 投影出摘要视图、经inspect-analysis-view读取,完整示例与 JavaScript 应用分析的工作流细节分别在 docs/cli.md 和 docs/javascript-application-workflows.md。
适用人群与限制
选型边界如下表:适合谁、不适合谁、当前限制与数据政策提醒一次列清。
| 维度 | 说明 |
|---|---|
| 适合 | 日常使用支持本地 MCP 的 AI 编码助手,目标类型涵盖原生二进制、JS/Electron、.NET、APK、网站;结论需被第三方核对、分析需留在本机 |
| 不适合 | 想在 GUI 里点来点去手工调试的用户,直接用 Hopper/Ghidra/IDA 本身;工具不捆绑反汇编引擎,原生深度分析依赖三选一自行安装 |
| 当前限制 | Ghidra 的 Windows 支持为实验性;ELF 诊断与 pwntools 相关能力限定 Linux x64;历史源码导入不支持原生 Windows |
| 数据政策 | 分析在本机执行,但 Agent 背后的模型服务商各有数据政策,敏感目标需自行评估 |
引擎前置条件与安装步骤详见 docs/installation.md。行动建议:先跑setup与doctor确认环境和 Agent 注册状态,体检通过后再按需接入原生引擎;若只做 JS/Electron 纯静态分析,则无需安装任何引擎,直接从第二步开始即可。
【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考