
在 AI Agent 深度渗透软件开发的今天,逆向工程(Reverse Engineering)也正在发生明显变化。
早期所谓的“AI 辅助逆向”,更多还是把反编译结果、汇编代码复制给大模型,让 LLM 帮忙解释。
这种模式本质上仍然是:人操作工具,AI 解释结果。
而随着 MCP 、Agent Skill 和 Tool Calling 的成熟,AI 开始真正进入逆向工具链,可以主动搜索字符串、查找交叉引用、读取寄存器和内存、设置断点,并根据分析结果继续决定下一步动作。
目前这一领域大致形成了两条互补路线:
- 路线一:MCP 工具基础设施层——解决“AI 能操作什么”。
- 路线二:Agent Skill 专家知识层——解决“AI 应该怎样做”。
路线一:MCP 工具基础设施层
MCP 为 AI Agent 提供标准化的工具调用接口,让大模型不再只是读取文本,而能够直接调用逆向工具。
这一方向比较典型的代表,就是 REA 和 x64dbg-MCP Server。
REA:Reverse Engineer Anything
GitHub:https://github.com/morluto/rea
REA 定位是:面向 AI Agent 的通用逆向调查框架。
它希望为 Agent 提供统一的分析接口,让 AI 可以从应用行为一路追踪到 Native Binary,并在调查过程中保存证据和上下文。
REA 的核心流程可以概括为:
Decompile
↓
Understand
↓
Recreate
也就是:
反编译 → 理解实现 → 根据分析结果重新实现。
Agent 可以通过 REA 主动完成:
搜索字符串 / 函数
→ 查找 Xref
→ 追踪调用关系
→ 获取伪代码
→ 建立调用图
→ 形成 Evidence
REA 并不是重新开发一个 IDA 或 Ghidra,而更像一层 Agent-native 的逆向中间件,可以连接 Hopper、Ghidra、IDA 等分析工具,并逐步扩展到 JavaScript、Electron、.NET、Android 等场景。
Evidence 是 REA 的一个关键设计
逆向工程中 AI 最大的风险之一,是根据不完整信息做出“听起来合理”的错误判断。
REA 因此强调区分:
Observed:
实际观察到的事实
Inference:
AI 根据事实做出的推断
例如不是简单说:
这个函数负责搜索。
而是明确记录:
发现 /api/search 字符串
→ 函数 A 引用了它
→ SearchController 调用了函数 A
→ 因此推断 A 可能负责构造搜索请求
这让 AI 的结论更容易追溯和验证。
x64dbg-MCP Server:把调试器交给 AI
GitHub:https://github.com/duty1g/x64dbg-mcp-server
如果说 REA 更强调“组织调查”,那么 x64dbg-MCP Server 就更加直接:
把 x64dbg 的调试能力通过 MCP 暴露给 AI Agent。
它是一个 x64dbg 原生插件,使用 Zig 编写,可以让 Agent 操作:
- 程序运行与暂停
- Step Into / Step Over
- 软件 / 硬件断点
- 寄存器读取与修改
- 内存读取与写入
- Call Stack
- 线程与模块
- Xref / Pattern Scan
- PE 分析
- Dump
- PEB / SEH
- Trace
于是过去 AI 只能告诉你:
可以尝试在这里下断点。
现在则可以自己执行:
SetBreakpoint
→ Run
→ WaitForPause
→ ReadRegisters
→ ReadMemory
→ StepInto
这意味着 AI 开始真正参与动态调试循环。
REA 与 x64dbg-MCP Server 的关系
两者虽然都使用 MCP,但并不是直接竞争关系。
可以简单理解为:
REA 更像逆向工程 Agent Framework,x64dbg-MCP Server 更像 Debugger Bridge。
REA 更关注:
该调查什么?
证据是什么?
不同分析结果之间有什么关系?
x64dbg-MCP Server 更关注:
运行
下断点
读内存
看寄存器
单步
Trace
Dump
因此,两者实际上非常适合组合:
REA
↓
静态定位关键函数
↓
形成分析假设
↓
x64dbg-MCP
↓
动态下断点验证
↓
把结果重新写入 Evidence
路线二:Agent Skill 专家知识层
MCP 解决的是:
AI 能调用哪些工具?
Agent Skill 解决的是:
AI 应该按照什么方法使用这些工具?
即使 Agent 同时拥有 JADX、Ghidra、Frida、APKTool,也不代表它天然知道:
- 应该先 Fingerprint 还是先反编译;
- 遇到 R8 混淆怎么处理;
- 什么时候应该修改 DEX;
- Frida 应该 Hook 哪一层;
- 重打包失败后应该先检查什么。
这正是 Agent Skill 的价值。
这一方向比较典型的两个项目是:
- Android Reverse Engineering Skill
- apk-reverse
以前介绍过的 Android Reverse Engineering Skill 和 apk-reverse,具体可以参考:
Android Reverse Engineering Skill,开源Android逆向工程工具
apk-reverse:把 Android 逆向工程变成 AI Agent 可执行的完整工作流
两条路线的本质区别
可以把它们理解成两个层次。
Tool-Using Agent
代表:
- REA
- x64dbg-MCP Server
解决:
让 AI 拥有逆向工具的“眼睛”和“手”。
AI 可以主动:
搜索
反编译
查 Xref
下断点
运行
读内存
验证推断
Knowledge-Guided Agent
代表:
- apk-reverse
- Android Reverse Engineering Skill
解决:
让 AI 知道下一步应该怎么做。
Skill 中真正重要的是:
分析顺序
判断条件
决策树
失败处理
工具选择
经验规则
它们可以避免 Agent 每遇到一个问题,都重新从头猜一次。
MCP 与 Skill 不是竞争关系
未来更合理的 AI 逆向工程栈,很可能是:
LLM
│
AI Agent
│
┌─────────┴─────────┐
│ │
Skills MCP
│ │
告诉 AI 怎么做 给 AI 工具能力
│ │
▼ ▼
Android SOP Ghidra / IDA
APK Reverse JADX / x64dbg
Malware SOP Frida / LLDB
│ │
└─────────┬─────────┘
│
Evidence
│
Conclusion
简单来说:
- Skill 是方法论。
- MCP 是执行层。
- LLM 是推理引擎。
- 传统逆向工具负责提供底层事实。
从“AI 辅助逆向”走向 Agentic Reverse Engineering
真正值得关注的变化,并不是“大模型越来越会看汇编”。
而是:
AI 开始拥有执行完整调查流程的能力。
过去:
人操作工具
↓
复制结果
↓
AI 解释
现在逐渐变成:
人定义目标
↓
Agent 制定调查路线
↓
Skill 提供经验
↓
MCP 调用工具
↓
获取 Evidence
↓
验证并修正判断
↓
继续调查
因此,未来逆向安全从业者除了继续掌握 IDA、Ghidra、Frida、x64dbg、DEX、PE/ELF 等传统技能之外,还可能越来越需要理解:
- MCP Server
- Agent Skill
- Tool Calling
- Agent Workflow
- Evidence Management
- 多工具协同
未来真正拉开效率差距的,可能不再只是:
谁更熟练地操作 IDA 或 x64dbg。
而是:
谁能把自己的逆向经验、工具链和 AI Agent 组合成一套能够自动调查、验证和持续积累证据的系统。
REA、x64dbg-MCP Server、apk-reverse 与 Android Reverse Engineering Skill,正好展示了这个新工具栈正在形成的几个关键组成部分。