三步把 REA 接入你的 Agent:做真实逆向分析,产出可追溯的证据

发布时间:2026/10/14 2:25:44

三步把 REA 接入你的 Agent:做真实逆向分析,产出可追溯的证据 三步把 REA 接入你的 Agent做真实逆向分析产出可追溯的证据【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/reaREAReverse Engineer Anything是一款本地 AI 逆向分析 MCP 工具把二进制反汇编、JavaScript 应用分析、.NET 程序集检查封装成 MCP 服务器 CLI让 Claude Code、Cursor 等 Agent 直接调用真实分析工具结论带证据链。上图是 REA 的工作现场Agent 通过桥接启动 Hopper 反汇编一个 Mach-O 可执行文件右侧面板列出文件加载、地址段归属和分析进度。一、先跑通用一条零依赖命令体验静态分析验证 REA 最短的路径是一条零依赖命令静态 JavaScript / Electron 分析不需要任何反汇编引擎。机器上有 Node.js22.x ≥22.19、24.x ≥24.11 或 26和 npm 后对解包好的 JS 应用目录或 ASAR 执行npx -y rea-agentslatest analyze-javascript-application /绝对路径/到/app --json返回的不是一段散文模块、导入关系、Electron 边界IPC 通道、原生插件以及每个结论附带的证据和明确标注的限制。为什么值得先试这一步静态分析只读你提供的文件不配置引擎、不跑目标应用结果立即可见而且 CLI 和 MCP 走同一套结果契约你在终端验证过的就是 Agent 之后会消费的同一种数据。想让 Agent 全程代劳再做注册npx rea-agents setup交互选择你的 AgentClaude Code、Codex、Cursor、Gemini CLI 等后流程先展示完整变更计划你批准后才写入并备份现有配置完成后重启 Agent。安装文档有完整前置条件和手动注册方式。二、它解决什么问题Agent 调真实工具而不是凭记忆猜和让模型读代码方案的区别在于模型不再凭训练数据回答而是调用工具去看。你问大模型某个二进制怎么实现的它给的是记忆里的自洽答案无法核验。REA 把真实分析工具接到 Agent 上Agent 通过 MCP 检查目标、追踪相关代码每一步拿到的是代码、引用关系和未知项再据此解释行为、写出实现并测试。类比一下这相当于专家给你讲原理时能逐页翻文档让你对照而不是口头回忆。用法就是描述目标例如搞清楚这个 App 的搜索是怎么实现的展示证据并在我的项目里实现类似功能Agent 会依次完成打开目标、检索线索、追踪引用、反编译关键函数最后给出解释和可运行的实现参考。每一步都能在终端单独复现。三、结论凭什么可信读证据链的四层结构REA 把每个工具返回的东西当作记录而非答案每条 Evidence 至少带四层信息。层记录什么为什么重要观测事实实际看到的反汇编指令、字符串、元数据、文件偏移可以拿回目标文件逐一核对工件与引擎身份分析的是哪个文件的哪个版本、用的哪个引擎哪个版本不同环境下同一结论可对照置信度与限制结论的可信程度和适用边界防止把局部观察过度外推未知项没查到的部分被显式列出区分没看到和确认没有支撑它的是核心原则缺失的覆盖是未知不是缺失——缺失的证据算未知不算空更不算否定。校验也遵循三态通过、失败、未知失败、未知等状态永远不会被聚合成通过没验证到不会被记成验证通过。所以当 Agent 给出一个逆向结论时你追问证据在哪它能指给你看。完整字段定义见 MCP 契约。四、能分析哪些目标从原生二进制到固件同一套契约下不同目标的分析深度和依赖不同目标你能拿到什么依赖原生二进制Mach-O / ELF / PE伪代码、汇编、字符串、符号、调用与引用关系Hopper、Ghidra 或 IDA 之一JavaScript / Electron模块结构、导入关系、Source Map、IPC 通道、原生插件边界Node.js npm无需引擎.NET 程序集元数据、CIL 指令、声明的原生依赖、构建版本对比纯静态不加载不执行Android APK清单声明、类检索、方法反编译无头 JADX无模拟器网站页面结构、脚本证据、网络元数据、按需截图被动观察固件区域检查与显式提取Binwalk / Unblob所有能力同时通过 CLI 和 MCP 两种形态暴露终端里单独跑一步或让 Agent 编排完整链路结果契约一致。五、内部怎么搭可插拔引擎与统一契约内部设计可以归纳为三点引擎是可替换件契约围绕任务统一通信不出本机。引擎是可替换件。原生二进制的深度分析复用你已有的 Hopper、Ghidra 或 IDA 安装setup 流程在获得批准后还可以安装 Hopper而静态 JS / Electron 与 .NET 分析直接读文件完全不碰逆向引擎。你的工具成本取决于目标类型而不是被迫绑定某一家反汇编器。契约围绕分析师任务统一。目录里有 170 多个 MCP 工具按动作和对象命名——检查、搜索、追踪、对比、观察——而不是暴露某个引擎的内部接口。效果是 Agent 在 Ghidra 和 Hopper 之间切换时面对同一套语义CLI 与 MCP 共用同一份结果结构。设计原则观测事实与推导结论分开、为关键关系保留证据引用、未解决的边保留为未解决写在 工具设计文档。通信不出本机。没有托管分析服务工件分析和行为捕获都在本地完成REA 与 Hopper、Ghidra 之间走本地私有 socket不向网络端口暴露服务。环境配置存疑时一条命令体检npx -y rea-agentslatest doctordoctor 检查宿主环境、依赖、分析引擎和 Agent 注册状态但不修改任何配置。六、适合谁、不适合谁四条边界声明REA 对不做什么说得明确选型前值得过一遍。不承诺恢复原始源码。返回的是伪代码、汇编、模块关系以及结论如何得出的过程把它当自动还原源码的工具会失望。数据主权在你但模型侧另有政策。目标文件不上传任何云端不过 Agent 收到的工具结果会进入你使用的模型服务商其数据政策需要单独评估。运行时能力有真实副作用。静态分析只读文件但浏览器观察、进程捕获这类运行时功能会以你的用户权限运行或实际交互目标各运行时指南描述了具体影响范围。失败不会被静默掩盖。引擎不可用会显式报错可用rea doctor诊断而不是悄悄换到另一个引擎给你一份看起来能用的结果。如果你的场景是一次性、隐私敏感的逆向分析未发布产品、内部工具、安全研究且手边已有 Hopper / Ghidra / IDA 之一REA 的本地化加证据优先的模型就是为这类场景做的。更多目标细节和结果契约见 文档总览。【免费下载链接】reaReverse engineer anything with agents, from app behavior down to native binaries.项目地址: https://gitcode.com/GitHub_Trending/rea2/rea创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/14 2:25:44

Git 配置不生效?一篇搞定层级、优先级与环境变量排查

git 配置没生效这件事,我一年里至少会被问十几次。命令明明敲了,git config --global user.email也返回了正确值,可真到提交的时候,作者信息还是原来那个。别急,这类问题看着玄学,根子基本绕不开三件事&…

2026/10/14 2:25:44

Calibre DRC加载失败三大隐性原因与修复指南

简介:本资源是一份面向电子设计自动化(EDA)工程师及高校集成电路设计学习者的Calibre DRC验证排错指南,聚焦导入新工艺库时更换DRC文件所引发的三类高频实操问题:路径引用错误导致的包含文件访问失败、层名参数未定义引…

2026/10/14 3:25:46

`Volatile.Read` 是否是问题原因

1. Volatile.Read 是否是问题原因 Volatile.Read 是一种“带内存可见性保证的读取”。 Action<int, string>? handler Volatile.Read(ref _faultRunLightRedSolidHandler);它主要保证&#xff1a; 其他线程刚通过 Interlocked.Exchange 注册的新处理器能够被及时看见…

2026/10/14 3:25:46

两千年历史 GDP 如何做到可复现?关键是估计来源标识

打开一个数据说明页时&#xff0c;“国家—年份—数值”的整齐结构很容易让人默认这是一份逐年官方实测。但时间跨度越长&#xff0c;这种默认越危险。DeepSData 的公开页面介绍&#xff0c;Maddison Project Database 覆盖长期人均 GDP 与人口估计&#xff0c;字段包括用于水平…

2026/10/14 3:25:46

【大数据毕设项目】基于Python的胆结石合并症风险预测与可视化系统研究\基于机器学习的胆结石症状特征分析与风险预测模型研究

文章目录 一、项目开发背景意义 二、项目开发技术 三、项目开发内容 四、项目展示 五、项目相关代码 六、最后 一、项目开发背景意义 胆结石作为一种常见的消化系统疾病&#xff0c;其发病机制与人体代谢、遗传及多种基础疾病密切相关。传统的临床数据分析往往局限于单一…

2026/10/14 3:25:46

Network架构2——Self-attention

我们在前面的讨论中输入的都是一个向量&#xff0c;那么如果输入的是多个向量&#xff08;输入是一排向量时&#xff09;应该如何处理呢&#xff1f;这就是本节课要解决的问题哪些场景的输入是需要用多向量表示呢&#xff1f;例如输入一个句子&#xff0c;每个单词可以看作一个…

2026/10/14 3:20:46

Django + Vue电商项目第009讲:Grid响应式|一套代码适配手机、平板与桌面

第8讲用Flex做了4列商品列表。本讲用更现代的Grid重新做,并加上响应式——同一份代码,在手机(375px)、平板(768px)、桌面(1440px)下表现完全合适。 建议先 点赞 + 收藏 + 关注,写响应式布局时随时回查。 一、为什么需要Grid(Flex不够用了吗) Flex是一维布局——一行…

2026/10/13 5:19:27

Python调用Gemini Structured Outputs实现工单路由门禁

客服工单最怕的不是模型“答错一句话”&#xff0c;而是它给出一段看起来合理的说明&#xff0c;程序却从中猜错优先级。通俗做法是&#xff1a;要求模型只交 JSON&#xff08;JavaScript Object Notation&#xff0c;轻量数据格式&#xff09;&#xff0c;再让代码验证它。Gem…

2026/10/13 17:09:18

Spring Boot超市进销存系统毕设实战:从需求拆解到答辩通关

最近带的一个学生项目组里&#xff0c;有A同学跑来问我&#xff1a;选什么毕设题目最稳妥&#xff0c;既能让评审老师觉得工作量够&#xff0c;又不会在答辩时被问到语无伦次。我第一反应就是推荐基于Spring Boot的超市仓库管理系统——也就是超市进销存系统。这个题目乍一看平…

2026/10/14 2:32:55

Flutter StatefulWidget 生命周期核心解析

很多刚开始接触 Flutter 的朋友&#xff0c;在看完一堆“Hello World”和基础组件之后&#xff0c;大概率都会撞上同一堵墙&#xff1a;StatefulWidget 里那堆 initState、build、dispose 方法&#xff0c;到底什么时候被调用&#xff1f;为什么顺序是那样&#xff1f;在里面到…

2026/10/14 0:00:33

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景&#xff0c;也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间&#xff0c;确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中&#xff0c;这类问题直接关系到飞行安全和机…

2026/10/14 0:00:33

macOS/iOS高精度计时:mach_absolute_time原理与实战

1. 项目概述&#xff1a;为什么mach_absolute_time是 macOS/iOS 时间测量的“黄金标准”在 macOS 和 iOS 开发中&#xff0c;我见过太多人用CFAbsoluteTimeGetCurrent()或NSDate.timeIntervalSinceReferenceDate做性能打点&#xff0c;结果在高精度场景下被系统时钟跳变、NTP 同…

2026/10/14 0:00:33

SCORM课件演示与测试全解析:从API通信到自动化验证

简介&#xff1a;这是一套遵循SCORM标准的交互式课件演示与测试资源&#xff0c;面向E-Learning课程开发者、LMS平台测试人员及在线教学从业者&#xff0c;用于验证课件在不同学习管理系统中的识别、传递与跟踪能力。压缩包共28个文件&#xff0c;约12.07MB&#xff0c;以swf动…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑