让AI帮你做逆向,核心思路是:你负责"抓包定位",AI负责"反混淆+还原算法+写脚本"。下面给你一套可以直接上手的工作流。
一、准备工作:你需要什么工具
- 浏览器开发者工具(F12):抓包、搜索关键词、打端点
- 一个支持 MCP/Skill 的 AI 编程环境:比如 Cursor、Claude Desktop、Trae 等,它们可以调用浏览器、抓包工具等外部能力
- 抓包工具(可选):mitmproxy、Charles、Fiddler,用于捕获 App 或终端流量
二、标准工作流(以 Web JS 逆向为例)
Step 1:抓包,找到可疑参数
打开 F12 → Network 面板 → 刷新页面或操作目标功能 → 找到带有 sign、token、timestamp 等动态参数的请求。
Step 2:搜索定位生成位置
在 Sources 面板用 Ctrl+Shift+F 全局搜索关键词(如 sign、bossoft),找到相关 JS 代码片段。如果代码被压缩混淆了,直接复制整段丢给 AI。
Step 3:让 AI 反混淆 + 还原逻辑
把混淆代码喂给 AI,提示词可以这样写:
"这是一段前端签名生成的 JS 代码,变量名被混淆了。请帮我:1)还原变量含义;2)梳理完整的签名计算流程;3)用 Python 重写这个算法。"
AI 会帮你把 e, t, l, n 这种单字母变量还原成有意义的名称,并理清拼接顺序、哈希算法、盐值位置。
Step 4:动态验证(打端点)
在 AI 帮你定位到的关键函数处打上断点,刷新页面触发请求,查看运行时变量的实际值,确认 AI 分析的逻辑是否正确。
Step 5:让 AI 生成最终脚本
确认逻辑无误后,让 AI 直接输出完整的 Python 请求脚本,包含签名计算、请求构造、响应解析。
三、进阶玩法:用 MCP/Skill 自动化
如果你用的是支持 MCP(Model Context Protocol) 的工具(如 Cursor、Claude Desktop),可以配置以下 MCP Server,让 AI 自动完成大部分工作:
表格
| MCP 工具 | 作用 |
|---|---|
js-reverse MCP |
自动搜索代码、AST 分析、Hook 注入、断点调试、运行时变量捕获 |
chrome-devtools MCP |
监听网络请求、定位签名参数生成链路 |
frida MCP |
对 App Native 层进行动态 Hook |
unidbg MCP |
模拟执行 Native 函数,验证算法 |
配置好后,你只需要一句话:
"帮我逆向分析 https://xxx.com 的 sign 参数生成逻辑,输出 Python 复现脚本。"
AI 会自动连接浏览器、抓包、定位加密入口、还原算法、生成脚本,甚至帮你提取 WASM 文件。
四、几个实用提示词模板
模板1:反混淆
"下面是一段被混淆的 JS 代码,请帮我还原变量名和函数名,并用中文注释解释每一行的作用。"
模板2:算法还原
"这段 JS 代码用于生成 API 签名。请分析:1)输入参数有哪些;2)拼接规则是什么;3)用了什么哈希算法;4)盐值在哪里。最后用 Python 重写。"
模板3:生成脚本
"基于以上分析的签名算法,帮我写一个完整的 Python 脚本,包含:请求构造、签名计算、发送请求、解析响应。敏感参数用环境变量读取。"
五、注意事项
- 别用 ChatGPT 做逆向:它对此类内容风控很严,容易封号。建议用 DeepSeek、Claude、Kiro 等。
- 敏感代码别上传:如果涉及商业项目,用本地部署的模型(如 Ollama + Llama3)更安全。
- AI 会幻觉:它给出的算法逻辑一定要用断点动态验证,不能盲信。
- 合规使用:只对自己拥有授权的系统做逆向分析,不要用于绕过他人平台的认证或风控
通过抓包、定位、动态调试这一套组合拳,工程师就能把网站隐藏得最深的"魔法字符串"(盐值)和"加密公式"(签名逻辑)完整地还原出来。
逆向的关键,不是"把所有代码都看懂",而是要把黑盒里的关键链路还原出来。
一句话:逆向要逆向的是"规则、逻辑、协议、密钥和校验流程";要得到的是"可复现、可验证、可落地的实现依据"。
1. 逆向到底要逆向什么?
表格
| 要逆向的对象 | 你要搞清楚什么 | 最终要拿到什么 |
|---|---|---|
| 算法逻辑 | 数据怎么算、怎么拼接、怎么加密 | 签名/加密/校验公式 |
| 输入输出 | 哪些参数参与计算,输出结果长什么样 | 参数表、返回值结构 |
| 协议格式 | 请求/响应怎么组织 | 接口规则、字段含义 |
| 密钥盐值 | 盐、密钥、固定字符串在哪 | DEFAULT_SALT、PUB_KEY这类值 |
| 校验流程 | 程序怎么判断成功/失败 | 绕过或复现的判断逻辑 |
| 运行路径 | 程序先执行哪一步,再执行哪一步 | 调用链、时序关系 |
| 保护机制 | 有没有壳、混淆、反调试、校验 | 脱壳、去混淆、绕过思路 |
2. 你要最终得到什么?
逆向不是单纯"看代码",而是要得到这些东西:
- 关键参数比如盐值、密钥、固定字符串、时间戳规则、随机数来源。
- 核心算法比如 MD5、SHA、AES、RSA、Base64、自定义签名算法。
- 协议规则比如请求里哪些字段必须带,顺序是什么,哪些字段参与签名。
- 调用链 比如:
输入参数 → 拼接盐值 → 哈希 → 生成签名 → 发送请求 - 可复现脚本比如 Python 脚本能稳定生成和原程序一样的签名或结果。
- 验证方法比如断点、抓包、日志、内存值,能证明你还原的逻辑是对的。
3. 判断逆向成没成功,看这 5 个标准
你可以用这 5 个问题检验自己逆向到了哪一步:
- **能不能稳定复现结果?**同样的输入,能不能算出同样的输出?
- **能不能解释每一步?**不是猜,而是能说清楚:这一步做了什么,为什么这样做。
- **能不能定位关键位置?**比如盐值在哪、签名函数在哪、校验函数在哪。
- **能不能写出脚本?**不是只会看,而是能写成 Python/JS 脚本自动跑。
- **能不能验证正确性?**用断点、抓包、日志、内存值对比,确认还原逻辑没问题