REA本地 AI 逆向工程指南用 1 条命令看清竞品应用的内部实现【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea你在别人的 App 里看到一个想抄的功能但它没有源码你连主进程和渲染进程谁在干活都说不清。这时你可以让 AI agent 上手REAReverse Engineer Anything就是一个本地 MCP 服务器加 CLI 的组合专门让 AI 在没有源码的前提下逆向应用行为从 JavaScript、Electron 一路查到原生二进制和固件而且全程在本地机器完成。它解决什么问题传统逆向要么自己开 Hopper、Ghidra 一个个函数看要么干脆放弃。REA 把这件事外包给你的 AI agentagent 负责提问和判断REA 负责调用分析工具、返回结果并且给每条结论附上证据。几个值得记住的设计取向证据先行结论必须附带工件身份、来源位置和推理链而不是甩给你一段“看起来对”的文字。未知就是未知官方把查不到和没有严格区分开。文档里的原话是 Missing coverage is unknown, not absence来源docs/tool-design.md——没扫到不等同于不存在。引擎是你自己的原生分析可以复用你已有的 Hopper、Ghidra、IDA 或 Kuna纯静态的 JavaScript/.NET 分析则一个引擎都不用装。五分钟跑起来前置条件只有一条Node.js 22.x22.23.4、24.x24.22.1或 26.12.1 以上外加 npmREADME.md。把 REA 注册到你的 agent支持 Claude Code、Codex、Cursor、Gemini CLI 等npx rea-agents setup按提示选择 agent、确认配置变更然后重启 agent就可以直接对话提问了。如果你更习惯命令行不解装任何引擎也能干活比如分析一个解包后的 Electron 应用npx -y rea-agentslatest analyze-javascript-application /absolute/path/to/app --json跑通后你会在屏幕上看到一份 JSON模块列表、导入关系、Electron 的 preload/主进程边界声明每条都带着 evidence 字段。核对方式很简单——模块路径应该能在目标目录里一一对上evidence 里指向的文件确实存在。它内部是怎么工作的可以把它想象成一个侦探 档案员的组合。agent 是侦探负责决定下一个问题问什么REA 是档案员负责调取工具、记录每一页材料并把材料随结论一起交还。调查流程agent 通过 MCP 协议调用 REA 的工具去检查目标、追踪代码REA 返回发现 证据agent 再基于这些结果追问、解释行为甚至直接写一版实现出来。CLI 走的是同一套工作流只是入口不同。证据分级观察到的、推导出来的、推断出来的事实分开存放不允许混写。所以你看结果时能分辨文件里确实有这个字符串和我猜它大概率是干这个的。引擎按需拉起原生分析需要引擎时REA 会用你已安装的那一份。以 Ghidra 为例安装文档说明它在 Linux/macOS 上通过仅限当前用户的本地 socket 与描述符通信不开公网端口docs/installation.md。能做什么、官方明说不做什么能不做原生二进制伪代码、汇编、字符串、符号、调用与引用引擎故障后自动换引擎——A selected provider is never replaced automatically after a runtime failuredocs/mcp-contracts.mdJavaScript/Electron模块、导入、Source Map、路由、IPC 与原生插件关系把伪代码当原始源码——官方原文 pseudocode is never treated as original sourcedocs/installation.md.NET 元数据与 CIL、APK 清单与反编译方法、固件区域与提取静态分析时运行目标应用——静态检查只读文件不碰进程Rust/Go 二进制静态检查内置完成不需要对应工具链替你做违法分析——README 限定用于合法研究、教育和你有授权检查的软件支持的目标类型远不止这些完整清单见 README 的 What you can analyze 表格涵盖 WASM、SQLite、固件、网络抓包等 30 多种。数据去哪儿了待分析的文件从头到尾留在你的机器上官方 FAQ 的回答很直接REA 在本地分析目标没有上传环节。两点边界要注意agent 会收到工具返回的结果而这些结果最终进入你使用的模型——its model provider has its own data policy模型服务商的数据策略需要你自己评估。分析会话用的临时工程放在 REA 自己管理的临时目录里会话结束后清理docs/installation.md。新手容易踩的坑JS 分析输出大到打不开README 提示真实应用的完整 Evidence 可达数百 MB文档里给了个例子334 MB 的 Obsidian 应用。正确姿势是先把结果重定向到文件再用rea inspect-analysis-view投影出 summary 或模块页而不是直接对着终端滚屏。Linux 上莫名报进程检查失败Linux 下 REA 需要 PATH 里有一个 procps 兼容的ps命令做进程归属检查先装发行版的 procps 包恢复步骤在 docs/installation.md 的 Linux owned-process prerequisite 一节。引擎起不来就怪 REA先跑rea doctor可加--json或--provider指定引擎拿结构化诊断它严格只读、不改任何配置检查失败时退出码为 1docs/cli.md。另外注意 npm 发布版可能落后于 main 分支文档建议对照 docs/roadmap.md 确认功能是否已进发布版。去哪看更多docs/installation.md安装、agent 注册、引擎配置与排障docs/cli.md全部 CLI 命令、Evidence 导入导出与退出码docs/mcp-contracts.mdMCP 工具的输出契约与工具目录src/TypeScript 源码按领域分了 application、domain、ghidra、hopper 等目录想深挖可以看这里【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?