news 2026/10/20 13:54:09

REA:一条命令把整条逆向工程链路交给 AI Agent

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
REA:一条命令把整条逆向工程链路交给 AI Agent

REA:一条命令把整条逆向工程链路交给 AI Agent

【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea

REA 是一条逆向工程链路的统一 MCP 服务,把 Hopper、Ghidra、IDA 这类反汇编引擎,连同 JavaScript/Electron、.NET、APK、固件与网站分析,封装成一套 CLI 命令和 MCP 工具。它不自带反汇编引擎,调度的是你本机已经装好的工具,分析全程留在本地。

🔍 装完之后,逆向工作流变成了什么样

你在某个 App 里看到一个想借鉴的功能,手里只有安装包,没有源码。老路线是自己打开反汇编器:搜字符串、查交叉引用、逐行读伪代码,最后得到的只是"屏幕上一段你看着的内容",没法交给别人复核,更没法让 Agent 接着干活。

装上 REA 之后,你直接对 Agent 说"理解这个 App 的搜索功能怎么工作,给我证据"。Agent 走的是"打开目标 → 搜索 → 追踪引用 → 反编译"的完整链路,每一步返回的都带着来源、提供者版本和局限说明,结论可以被第三方拿着 Evidence 复核,也可以直接被 Agent 拿去写一个同款实现并测试。

不装任何引擎,先跑通 JS/Electron 应用的架构分析

目标是 Node/Electron 应用时,连反汇编器都不用装。它替你做的是一遍纯静态解析:模块、导入、Source Map、Electron 主进程边界、IPC 通道、原生插件关系,一次全部输出(详见 docs/cli.md)。

几百 MB 的模块图怎么看不跑目标

背后调的是只读文件解析,不执行目标应用,前提只有 Node.js 22.19+ / 24.11+ / 26+ 和 npm(Linux 上 PATH 里还需要一个 procps 兼容的ps)。边界有两点:它只读文件,运行时行为不归它管;大型应用的输出可能高达数百 MB,建议先重定向到文件,再投影出摘要视图来看。

有引擎在手,让 Agent 跑完原生分析的全链路

Agent 打开一个原生二进制后,搜索、交叉引用、函数档案、反编译、指令流这些操作都能直接调用(rea search、rea xrefs、rea function、rea decompile、rea trace)。背后调度的是你本机的 Hopper、Ghidra 或 IDA,返回结果里带着来源、提供者版本和置信度。

多引擎可用时,REA 会不会替你猜

不会。引擎选择是确定性的:显式--provider优先,多个引擎都支持同一目标时必须你指定,REA 不猜。快照缓存让同一目标、同一参数、同一引擎的查询精确复用结果,不用重新拉起引擎。边界同样明确:REA 不自带反汇编引擎;Ghidra 的 Windows 支持还是实验性质;ELF 诊断与 pwntools 相关能力限定 Linux x64。

🧩 用同一套证据格式覆盖 .NET、APK、固件和网站

四类目标走同一种 Evidence 输出,不用在多种工具之间来回切上下文:

  • .NET 程序集做纯静态检查,读元数据和 CIL 指令,不加载、不执行代码,无任何额外依赖;
  • APK 走 headless JADX 反编译,返回清单声明、类、反编译方法及其引用(前提:完整 JDK 17+,详见 docs/android-analysis.md);
  • 固件在 Linux 上用 binwalk / Unblob 解包,解出的原生部分再交接给深度引擎;
  • 网站通过 CDP 被动观察页面结构、脚本、网络元数据,还能按要求截图(前提:一个 Chrome 系浏览器)。

这套证据契约(字段、覆盖范围、局限如何标注)定义在 docs/mcp-contracts.md。边界:静态分析不运行目标代码;APK 的真实性和运行时行为在结果里保持"未验证"状态,文档自己也这么标注。

⚡ 最小验证路径:三条命令跑通

前提:Node.js 22.19+ / 24.11+ / 26+ 和 npm。

# 注册 Agent 集成:选择你的 Agent 并确认变更(可顺带批准安装 Hopper) npx rea-agents setup # 不依赖任何引擎的静态分析:指向 JS/Electron 应用绝对路径,大输出先重定向到文件 npx -y rea-agents@latest analyze-javascript-application /absolute/path/to/app --json > /tmp/app-analysis.json # 只读体检:审计主机环境、依赖、引擎与 Agent 注册状态 npx -y rea-agents@latest doctor

第二条命令的输出是模块图加 Evidence 记录;第三条是严格只读的,加--provider可以单独排查某一个引擎,排障细节见 docs/installation.md。

它不碰的事:这些别指望

  • 反汇编引擎本身还是你的:Hopper、Ghidra、IDA 三选一,setup 可以经你批准装 Hopper,Ghidra 和 IDA 则用你已有的安装。
  • 不做 GUI 里点来点去的手工调试——那是引擎本体的事。
  • Ghidra 的 Windows 支持仍是实验性质,不是稳定路径。
  • ELF 诊断与 pwntools 相关能力限定 Linux x64,其他平台别配置。
  • 分析留在本地,但你 Agent 背后的模型服务商有各自的数据政策,敏感目标自己掂量。

想让 Agent 给出可核对的结论、数据留在自己机器上,就装;只想自己盯屏幕看汇编,装一个 Hopper 或 Ghidra 就够。

【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/19 11:44:40

固态变压器上电流程详解:从冷态到带电的五道关

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/19 11:38:48

毫米波雷达与视频跌倒检测:隐私、抗干扰与选型实战对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/19 11:38:14

AI硬件项目商业化复盘:从服务机器人到端云架构的成本与落地

1. 当“AI概念”成为公司级赌注:AI龙虾项目的真实起点1.1 一个内部代号背后的战略焦虑某AI机器人公司前两年立项了一个内部代号叫“AI龙虾”的项目,当时在智能硬件圈子里引起不少讨论。有人说它是这家公司翻身的关键一役,也有人说不过是新一轮…

作者头像 李华
网站建设 2026/10/19 11:37:51

医疗器械EMC合规:发射与抗扰的基础整改手段详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/19 11:37:49

树莓派GPU加速实现毫秒级目标检测:边缘计算实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华