REA
REA 为你的编码代理提供工具,用于检查程序并解释其工作原理,覆盖从应用行为到原生二进制的范围。
访问 shijianzhong/rea项目简介
REA 是一套逆向工程工具集,将编码代理连接到用于检查原生二进制文件、JavaScript 与 Electron 应用、.NET 程序集以及网站的工具。它帮助理解功能如何工作、展示支持证据,并为另一个项目构建版本。分析在本地运行,结果包含每项结论背后的证据与局限性。
核心功能
- 将编码代理连接到用于检查原生二进制文件、JavaScript 与 Electron 应用、.NET 程序集以及网站的工具。支持从代理或终端发起调查工作流。在本地运行分析,并针对每项结论返回证据、局限性和未知项。可以复用现有的 Hopper、Ghidra 或 IDA Pro 安装进行深度原生二进制分析。提供安装程序,将 REA 注册到支持的代理并安装匹配的工作流指令。支持静态 JavaScript 与 Electron 应用分析,无需 Hopper 或 Ghidra。
适用场景
- 调查应用中的功能,理解其工作原理,并为自己的项目构建版本。检查原生二进制文件、JavaScript 与 Electron 应用、.NET 程序集以及网站。分析浏览器或运行时活动,并比较多次运行的结果。研究示例,例如 Windows 计算器的百分比行为、Chrome 恐龙游戏的速度、DX-Ball 重建、Notion 剪贴板处理以及 CTF 旗标检查器。
快速开始
- 运行 npx rea-agents@latest setup 或 npx rea-agents setup 将 REA 注册到你的代理。选择哪些受支持的代理应使用 REA,查看确切的路径和更改,并批准安装计划。安装后重新启动代理,然后描述你想理解的应用或功能。可选:使用 npx skills add morluto/rea --skill reverse-engineer-anything 将技能添加到 AI 编码助手。若要在提取的 JavaScript/Electron 应用树或 ASAR 上获得首个终端结果,请运行 npx -y
部署与要求
- 静态 JavaScript 检查仅需 Node/npm 运行时。支持的平台包括 macOS 12 或更高版本;Ubuntu 24.04+、Fedora 41+、64 位 Arch Linux 或 CachyOS。需要 Node.js 22.x (>=22.19)、24.x (>=24.11) 或 26+;需要 npm,但 REA 不要求也不安装特定 npm 版本。深度原生二进制分析需要 Hopper、Ghidra 或 IDA Pro。固件区域检查和显式提取在 Linux 上使用调用者提供的 Binwalk 和 Unblob。
采用前须知
- 许可证:MIT。在使用、修改或分发项目前,请确认其具体条款。