一个把"网页端 JS 逆向"标准化成 AI 操作手册的开源技能,喂给 AI 编程助手就能让它按专业流程取证、分析、交付纯协议代码。
搞网页端逆向的人,大概都经历过这种时刻:打开一个网站,请求里突然冒出来一个 a_bogus、X-s 或者 hexin-v 之类的参数,一看就是前端现算出来的。
然后就是老三样——找加密入口、抠算法、补浏览器环境,每一步都是脏活累活,换个站基本得重来一遍。
后来网页端的需求越来越多,每次都从零搭环境、重找入口,实在受不了。索性把这一套流程、工具链、还有踩过的坑,全部沉淀成了一个 AI 技能(Skill),起名叫 js-reverse-skill。
这玩意儿是啥
js-reverse-skill 是我给 AI 编程助手写的一份"专业操作手册"。你不用手把手教它怎么逆向,只要把目标网站和要还原的参数告诉它,它就按我定好的流程跑:先取证、再分析、最后吐出一份能直接跑的代码。
默认你是在自己授权范围内做分析(安全测试、数据合规等),它只提供技术能力,不替你做决策。
关于来源:不是从零原创
先说清楚,这个 Skill 不是我原创,只是把现有的逆向能力整合到一起,并把取证流程统一标准化。市面上已经有不少优秀的流程和工具,我做的事是:用 ruyipage + RuyiTrace 两步取证、日志驱动逆向这条主线,把它们的补环境、算法还原、验证码求解串成一套一致的可复用流程。底层能力主要来自下面这些开源项目:
- hello_js_reverse_skill(https://github.com/WhiteNightShadow/hello_js_reverse_skill):流程骨架 + 案例库
- xbsReverseSkill(https://github.com/lwjjike/xbsReverseSkill):补环境流程 + 工具链 + 验证码识别/求解模块(ddddocr / 坐标 / 轨迹脚本 + 题型分类器)
- ruyipage(https://github.com/LoseNine/ruyipage):Firefox WebDriver BiDi 取证
- RuyiTrace(https://github.com/LoseNine/Firefox-FingerPrint-Analyzer):NDJSON trace 内核
感谢这些作者。本 Skill 以 MIT 协议开源,也建议去给上游项目点个 star。
它怎么干活的
核心思路就三条,都是为了让结果靠谱、能复用:
1. 取证靠工具,结论拿日志说话
用 ruyipage + RuyiTrace 这两个定制 Firefox 工具,把网页运行时的日志抓下来。所有还原结论都以日志为证据,不靠猜、不靠玄学。这一步明确禁用普通的浏览器自动化抓包,就是为了证据干净、可追溯。
2. 还原分几条路走
- 算法能从源码里提取的,直接纯算还原;
- 算法藏在混淆 / WASM 里的,把原 JS 丢进 vm 沙箱跑;
- 遇到 JSVMP 那种强风控(抖音、小红书那类),就做"补环境伪装",让代码以为自己还在浏览器里。
3. 交付是纯协议脚本
最终给的是 Node.js 或 Python 的纯协议代码,不夹带任何浏览器自动化。说人话就是:丢到没屏幕的服务器、Docker 容器里,它也能自己跑、自己发请求验证。
实战过哪些平台
不是 PPT 上的 demo,这些都是真实案例,经验都沉淀在项目的 cases/ 目录里,下次遇到同款能直接复用:
- 字节系:抖音
a_bogus、小红书X-s、TikTokX-Bogus - 同花顺问财
hexin-v、猿人学改版 MD5 - 政府监管类站点的瑞数 cookie、Gitee 上的百度 WAF
- 网易易盾的验证码(无感 + 滑块两种)
- 国密 SM2 / SM4 / SM3 的就业在线
难度从一星到四星都有,越往后风控越狠。
怎么用
把下面这段提示词喂给你的 AI 编程助手、让它加载这个 Skill 就行——不管是简单的标准签名、复杂的 JSVMP 强风控,还是验证码(滑块/无感)封装层,都用这一条固定提示词,技术细节让它自己判断:
请逆向还原JS加密生成逻辑:
- 目标网站:<网页浏览入口>
- 目标接口:<接口URL 或 "无,自动抓包">
- 目标参数:<参数名>
想指定输出形式(比如封装成 HTTP API、用 Python 而不是 Node),在后面加几行备注即可。
写在最后
这个项目开源在 MIT 协议,地址放下面。它适合谁?—— 你本来就懂点逆向、想让 AI 帮你按专业流程少走弯路的人;或者你是安全测试 / 数据合规方向、需要在授权范围内还原参数的开发者。
说到底,这个 Skill 不是让 AI 替代逆向工程师,而是把那些重复的脏活标准化。人定方向,AI 跑流程,挺好。