
REA 逆向分析工具指南让 AI Agent 读懂原生二进制【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/reaREAnpm 包名 rea-agents是一个面向 AI Agent 的本地逆向分析工具把 Hopper、Ghidra、IDA 等逆向引擎与脚本化工作流封装成 MCP 服务与 CLI让不熟悉二进制逆向的开发者用自然语言看懂原生应用、Electron 程序、.NET 程序集和固件的内部实现。痛点场景逆向分析前的三道坎对手只给安装包。你看到竞品 App 的某个功能想了解其实现路径但没有源码更不知道一次功能调用会穿过哪些模块只能靠猜。逆向引擎门槛高。Hopper、Ghidra、IDA 界面各异、版本不受你控制反编译、交叉引用、控制流要一点点手工点不常用根本翻不动。结论没法交给 AI。手工整理的逆向结果没有证据、不可复现Agent 无法判断可信度分析结论很难直接落进开发流程。能力速览从静态结构到运行时行为静态还原 JavaScript/Electron无需任何引擎。analyze-javascript-application对 JS 目录或 ASAR 包做静态分析还原模块图、导入关系与 IPC 边界只读文件、不运行目标。原生二进制由引擎自动接管。指定--provider ghidra或 hopper、ida后自动启动引擎产出反编译伪代码、交叉引用与控制流你只描述想查什么。.NET 与 APK 各走独立通道。.NET 程序集是纯静态元数据解析零引擎依赖Android APK 由自带 headless JADX 反编译但需要本机有完整 JDK。固件解包。Linux 固件分区交给自带的 Binwalk/Unblob 做区域划分与解包这两个工具需调用者自备。观察运行时行为。挂接 Chrome 系浏览器捕获页面脚本与网络请求也可用本地 PTY 受控运行目标进程记录终端输出、交互与退出码用于对比两次运行。轻量二进制元数据。Go/Rust 二进制的编译器版本与依赖清单直接读出不需要安装对应工具链。安装步骤从 setup 到第一条分析命令前置条件Node.js 22.19、24.11 或 26以及 npm。先跑安装注册它会为你选定的 AgentClaude Code、Cursor、Codex、Gemini CLI 等写入 MCP 服务器注册与配套工作流指令改动前逐项审批完成后重启 Agentnpx rea-agents setup接着用一条不需要任何引擎的静态分析命令做验证输出包含模块、导入、Electron 边界及各自的证据npx -y rea-agentslatest analyze-javascript-application /绝对路径/应用 --json最后做环境自检。doctor严格只读按你要做的任务范围检查前置条件与注册状态也可用--provider ghidra、--client codex缩小检查范围npx -y rea-agentslatest doctor --json工作机制一次请求的分层流转终端里的rea和 Agent 发出的 MCP 调用第一站都在同一个入口层职责关键路径入口分发只做路由mcp参数加载编译产物启动 stdio 服务器其余参数走一次性 CLIscripts/rea.mjs请求接入把 MCP 的tools/call翻译成内部工具调用按类别注册工具共 94 个文件src/server/工作流编排会话路由、证据账本、快照缓存以及 Doctor/Setup/Update共 336 个文件src/application/分析 Provider每种目标类型一个实现负责与外部引擎对话如 src/hopper/28 个文件、src/ghidra/71 个文件、src/ida/、src/dotnet/引擎内桥接脚本在引擎进程内执行经带认证的本地私有套接字回传结果bridge/契约与领域Zod 校验输入输出 Schema88 个文件纯函数计算摘要与证据比较612 个文件src/contracts/、src/domain/以原生分析为例请求经 server 层进入会话后application 层检查 Provider 可用性并启动引擎Provider 通过 bridge/hopper_bridge.py 或 bridge/ghidra/ 下的 Java 脚本向引擎发指令取回的反编译结果经契约层校验后连同证据、局限与未知项一起封装返回。设计取舍三个值得聊的决策CLI 与 MCP 共享同一份编译产物。现象rea doctor和 Agent 调 MCP 工具走的是 dist/ 下同一批产物入口脚本只负责分发。原因两条通道行为必须严格一致修复逻辑只有一处。意味着你在终端看到的结果就是 Agent 拿到的结果调试时不必怀疑 MCP 那边另有一套逻辑。把桥接脚本送进引擎而不是直接调用。现象hopper_bridge.py、ReaGhidraBridge.java 这类脚本在引擎进程内执行结果经本地私有套接字回传。原因Node 指挥不了 Hopper 或 Ghidra各家 API 各异且版本不受你控制。意味着它不改造任何外部工具引擎升级后只需维护桥接层且通信全程不出本机。每个结论都带证据边界也写明白。现象结果固定包含 evidence、limitations、unknowns 三块src/domain/ 层是 612 个无副作用的纯函数tests/boundary/ 下 740 个边界测试文件守着这套行为。原因给 Agent 用的工具结论必须可复现、可对比、可审计。意味着任何回答都可以追问“凭什么”。同时把适用边界说在前面静态分析不等于全量覆盖例如 .NET 解析器不解包单文件宿主、NativeAOT 方法体需要原生分析深度原生分析必须安装 Hopper、Ghidra 或 IDA 之一浏览器通道要求 Chrome 系浏览器包捕获与信号通道还需自备 TShark、sigrok-cli 等工具。把逆向分析做成 Agent 可直接消费、结论可审计的本地工具链是 REA 区别于传统逆向 GUI 的地方。如果你维护 AI 编码工作流又常碰到二进制问题可以先装一条命令跑 doctor看本机各通道是否就位。新目标类型的接入进度见 docs/roadmap.md命令与输出契约见 docs/cli.md。【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考