如果有一天,有人让你去逆向一个应用、一个 App、一个网页,你会怎么做?

如果是我,在两年前,我可能完全束手无策。或者说,遇到各种各样的问题。我可能会直接丢给聊天框里的 AI,让它帮我寻找思路。老实说,这样的方法非常非常低效,也容易错过很多细节。

但现如今,我们有了真真正正的 AI,也就是 Agent,或者说 Coding Agent,所有的一切就都发生了改变。

找到合适的工具链#

那么我们究竟该如何通过 Agent 去展开我们的逆向工作呢?其实非常简单,最关键的问题是让 Agent 能够长出适合逆向的手和脚。

现在市面上的 Coding Agent 一般会有两种工具接入方法,一种是 Skill,一种是 MCP。但对于我们逆向来说,MCP 基本上是一个更好的选择。

我现在比较常用的主要是两个 MCP,一个是针对本地应用的,通过和 IDA Pro 集成,也就是 IDA Pro MCP1;一个是用来做网页逆向的,叫做 Chrome DevTools MCP2

只要我们接入了这个 MCP,就能够非常快地展开逆向。

至于 Agent Harness,我个人比较推荐 Zcode,因为它的 MCP 管理相对来说比较简洁易懂。

对于模型来说,我比较推荐智谱的 GLM 5.3 Flash 模型和 DeepSeek V4.1 Flash 模型,截止今天。一是因为它们的性能都还不错,有很强的逆向性能;二是因为它们有着不错的输出速度,且安全围栏相对较低。这几点保证了它们在逆向过程中流畅的体验和不错的交付物。

但是请注意,千万不要使用 Codex,或者说 Claude Code 进行逆向。我们主要说的是 GPT 系列模型和 Claude 系列模型,这两个系列的模型有着比较高的安全防护围栏,尤其是 Codex,严重者可能会直接封号。

动手开始逆向#

在明确的工具接入之后,我们就真真正正地动手展开逆向了。一般情况下,我们去做逆向非常非常关键的一点,就是知道我们逆向的目标到底是什么。

如果是本地软件,我们用 IDA Pro 对它进行反编译。举个例子,如果我们要逆向它的数据库,可以把相关的字段、数据表、可能的东西,所有信息都发给模型,这样模型就会有一个比较不错的上下文,从而获得一个非常棒的性能。

如果我们的目标是网页,那就非常简单了,只要接入 Chrome DevTools MCP,然后大部分模型都会通过抓包去分析网络包,再分析整个 JavaScript 脚本,这样就可以非常清晰地对网页所有接口进行调研。3

结语#

虽然现在的逆向工程在 Agent 时代极大降低了门槛,但我们依然要遵守国家相关的法律法规,在合理合法的授权范围之内去展开逆向工作,不要去做一些违法的事。

工具链参考#

下面按照模型、MCP 和 Agent Harness 三类整理本文提到的工具。模型性能和具体可用性会随版本、平台和时间变化,表格中的模型评价主要来自个人使用体验。

类型名称适用场景参考链接备注
模型GLM-5.3-Flash需要较快响应的 Coding Agent 任务模型卡智谱 GLM 系列模型
模型DeepSeek-V4.1-Flash需要较快响应和较长上下文的 Agent 任务官方发布说明DeepSeek 官方发布的 Flash 模型
MCPIDA Pro MCP本地应用、二进制文件和 IDA Pro 分析GitHub 仓库将 IDA Pro / IDALib 的分析信息提供给 MCP 客户端
MCPChrome DevTools MCP网页、在线 Web 应用和浏览器运行时GitHub 仓库可检查 Chrome 的网络、控制台、脚本和性能信息
Agent HarnessZCode管理 Agent、MCP 和多步 Coding 工作流MCP 文档我个人比较常用的 Harness

  1. IDA Pro MCP 项目仓库:mrexodia/ida-pro-mcp。 ↩︎

  2. Chrome DevTools MCP 项目仓库:ChromeDevTools/chrome-devtools-mcp。 ↩︎

  3. Chrome DevTools 官方文档:网络请求分析JavaScript 调试。 ↩︎