编者摘要:REA(Reverse Engineer Anything)是 Nous Research 为 Hermes Agent 开发的官方 MCP 逆向插件,底层基于开源 rea.tools(MIT 协议),固定锁定 rea-agents@6.4.0 版本,禁止使用 latest,规避版本兼容风险。插件属于 Portable Agent Plugins v1,通过 stdio 启动 MCP 服务,内置 reverse-engineer-anything 工作流技能,合计提供约 170 个逆向工具,按需加载工具 Schema,降低上下文开销。
它支持原生二进制、.NET 程序、Electron/JS 应用、APK、固件、HAR 抓包等目标分析,输出反编译伪代码、调用图等结构化证据包。轻量静态分析仅需 Node.js 22.19+/24.11+/26+;深度反编译需要用户自备 Ghidra、JADX 等工具,REA 不会自动安装。大部分操作为只读,部分高危动作(启动程序、修改安卓设备、覆盖文件)会由技能要求智能体先询问用户,无人值守模式自动跳过。大型二进制首次 Ghidra 导入耗时较长,会话重启后临时分析结果丢失。REA 无遥测,全部运算本地执行,适合在隔离沙箱开展不可信程序逆向。
10 个关键问题 Q&A
- REA 是什么?
REA(Reverse Engineer Anything)是 Hermes Agent 的官方 MCP 逆向插件,接入 rea.tools,让 AI 智能体自主完成多类型程序逆向分析。 - REA 可以逆向哪些文件?
原生二进制、.NET 程序集、Electron/JS 应用、APK 安装包、固件镜像、HAR 浏览器抓包等。 - 必须安装 Ghidra/IDA 才能使用 REA 吗?
不需要。仅静态 JS、元数据、归档分析无需;原生二进制深度反编译才需要自备 Ghidra/Hopper/IDA。 - Node.js 版本有什么限制?
支持 22.19+、24.11+、26+;不支持 Node 23、25。 - REA 是否会自动安装 Ghidra、JADX?
不会,所有重型逆向工具由用户自行部署,REA 仅调用已有本地工具。 - REA 是否会自动运行待分析的恶意程序?
默认只读;启动程序、操作安卓设备等高风险动作,插件技能会强制智能体先询问用户。 - REA 分析数据是否上传云端?
不会,无遥测,全部逆向工作本地执行,仅在抓包调试时访问目标地址。 - 大二进制分析为什么很慢?
首次 Ghidra 导入并解析符号、函数耗时久;同一会话可复用结果,重启会话临时分析数据丢失。 - 能否执行
npx rea-agents setup --client hermes?禁止,该命令会改写 Hermes 配置,覆盖插件内置 MCP 服务,引发冲突。 - REA 输出的伪代码等同于原始源码吗?
不等同,只是反编译结果;技能要求 AI 对照汇编交叉校验结论,仍需要人工复核。
附录 REA (Reverse Engineer Anything) Hermes Plugin
REA 是 Nous Research 给 Hermes Agent 官方推出的逆向工程 MCP 插件,把 rea.tools逆向能力接入 Hermes 智能体,一句话概括:让 Hermes AI 智能体直接调用一套约 170 个逆向工具,自动化分析二进制、安卓包、固件、Electron/JS 应用,生成反编译代码、调用图、程序证据包。
一、基础信息
-
项目仓库:NousResearch/hermes-official-plugins/rea -
REA 本体:morluto/rea,MIT 协议 -
插件版本锁定: rea-agents@6.4.0(2026-10-11),不使用 latest,固定版本,避免破坏性更新 -
插件类型:Portable Agent Plugins v1,基于 MCP(Model Context Protocol),通过 stdio 启动 MCP Server -
安装命令
hermes plugins install rea
hermes plugins enable rea
安装后新建 Hermes 会话即可使用,示例指令:
Use REA to inspect /Applications/Notes.app and explain how CSV export works.
二、能力覆盖范围(支持逆向目标)
REA 6.4.0 一共对外暴露约 170 个 MCP 工具,命名前缀 mcp__rea__*,例如:
open_binary加载原生二进制 analyze_function函数反编译与分析 analyze_javascript_applicationElectron/JS/ASAR 应用分析 inspect_android_packageAPK 包解析
可分析对象清单:
-
原生二进制 / 本地库(PE、ELF、Mach-O),需要你自备 Ghidra / Hopper / IDA 做反编译 -
.NET 程序集(元数据解析) -
Electron / JS 应用、ASAR 包 -
Android APK(自备 JADX+Java) -
固件镜像(自备 Binwalk / Unblob) -
抓包文件、HAR 浏览器捕获记录 -
浏览器、Electron、终端程序运行行为捕获 -
Go/Rust 二进制元数据、PE 资源提取
输出结构化Evidence 证据包:伪代码、调用图、应用结构图、捕获日志,由 Hermes 负责解读、归纳结论。
注意:输出是反编译伪代码,不是原始源码;技能内置规则,要求 Hermes 对照汇编交叉校验结论,标记缺失符号、分析警告。
三、环境依赖
✅ 必装:Node.js 22.19+ / 24.11+ / 26+,npx 在系统 PATH 中;不支持 Node 23、25
首次启动会自动把锁定版本 rea-agents@6.4.0 下载到 npm 缓存
✅ 静态轻量分析(JS/ASAR/ 归档 / Go 元数据 /.NET 元数据 / HAR 抓包):不需要额外逆向工具✅ 深度反编译(原生二进制、安卓、固件):用户自备工具,REA 不会自动安装
-
原生:Ghidra (+JDK) / Hopper / IDA -
Android:JADX + Java -
固件:Binwalk / Unblob -
流量 / 波形:TShark、sigrok、WABT
⚠️ 禁止手动执行:npx rea-agents setup --client hermes这个命令会直接改写 Hermes config.yaml的 mcp_servers 配置,覆盖本插件锁定的 MCP 服务,造成冲突。
四、安全边界(重点)
大部分 REA 工具只读文件,不会运行目标程序;但有一小部分高危操作会修改本地环境或设备:
capture_process_scenarioPTY 下执行命令并记录行为 capture_browser_scenario / capture_electron_scenario / capture_native_ui_scenario启动并操控应用窗口 -
ADB 系列:安装 / 卸载 APK、推送文件、启停 APP(修改安卓设备) export_evidence_bundle / close_binary覆盖本地文件
插件自带的 reverse-engineer-anything技能内置防护规则: 智能体执行以上高危动作前,必须先向你确认,无人值守模式自动跳过高危操作。 强烈建议:在隔离沙箱环境分析不可信程序。 REA 无遥测;仅在你指定目标时联网(调试端点、设备、浏览器抓包拉取 sourcemap)。
五、任务超时 & 性能特点
-
Hermes 默认 MCP 工具超时:300 秒;插件单独把 Ghidra 内部导入超时设置为 900 秒 -
Hermes v0.23.0 会支持 REA 独立服务级预算,当前插件已经为该版本预留声明 -
二进制分析: open_binary只是校验目标;真正耗时是首次 Ghidra 导入 + 全量分析 -
大型二进制耗时可达数分钟;同一会话内后续查询复用已加载分析结果 -
会话关闭 / 重启后,临时分析数据全部丢失 -
实测案例(Linux 主机,静态分析 WinSCP 6.7,没有运行程序) -
控制台版本:导入约 30s -
GUI 版本:超出默认 330s 上限,1000s Hermes 预算下耗时 663s;后续首次查询 580s;一共提取 28701 个函数
这只是单环境观测值,不保证所有二进制都这个速度。超时排障文档在插件内
connection-and-recovery.md
六、MCP 工具加载机制
REA 一共有约 170 个工具,Schema 总大小约 460KB。 Hermes 不会一次性把全部工具灌入模型上下文,采用按需检索(on-demand tool search):
会话只在智能体需要的时候才查找对应工具,减少上下文开销;同时还附带 6 条 MCP Prompt 模板。
七、整体架构总结
Hermes Agent
↓ 启用 REA插件
加载 mcp.json → npx rea-agents@6.4.0 mcp (stdio MCP服务)
加载 skills/reverse-engineer-anything/ 逆向工作流技能
智能体调用 mcp__rea__xxx 工具 → REA MCP Server
REA 调用本地逆向后端(Ghidra/JADX等,用户自备)
返回结构化Evidence证据包 → Hermes做推理、解释、交叉校验
八、亮点与局限
✅ 亮点
-
把全套逆向流水线封装成智能体可用工具链,AI 可以自主规划逆向调查流程 -
版本固定锁定,避免 npx latest 带来的兼容性崩溃 -
区分只读 / 高危操作,技能层强制人工确认高危动作 -
按需加载工具 Schema,控制上下文成本 -
MIT 开源 REA 底层,无云遥测,所有分析在本地完成
⚠️ 局限
-
原生深度反编译依赖商业 / 开源逆向工具(IDA/Hopper/Ghidra),用户自己部署维护 -
大二进制首次导入耗时极长,依赖机器性能 -
会话临时分析数据,重启丢失;无持久化项目库 -
输出只是反编译伪代码,AI 结论需要人工复核;技能只是要求交叉校验,不能保证正确性 -
Node 版本限制严格(22/24/26,排除 23、25)

