
对于做安全研究、反爬研究、接口兼容测试、数据合规采集、前端加密分析的人来说,JS 逆向工程一直是让人头疼的痛点。很多网站为了防爬,会在请求中加入复杂的签名(sign)、token、风控指纹 等参数。这些参数往往经过 JS 混淆、JSVMP(JS 虚拟机保护)、WASM 编译,还深度依赖浏览器环境(如 navigator、canvas 指纹、crypto 等)。
传统 JS 逆向通常要经历一套非常痛苦的流程:打开 DevTools,抓包,搜索参数名,下断点,追调用栈,补浏览器环境,分析混淆代码,绕反调试,定位加密函数,再把结果搬到 Node.js 或 Python 里反复调试。遇到 JSVMP、WASM、强风控指纹时,整个过程更像是在黑盒里摸索。
Firefox-Reverse 是开源社区为了降低JS逆向难度的最新尝试。
Firefox-Reverse 项目定位非常明确:把网页中的加密参数、签名参数、风控 token,从“只能在浏览器里运行的黑盒逻辑”,还原成“可以脱离浏览器独立运行的纯算法”。
Firefox-Reverse:https://github.com/WhiteNightShadow/firefox-reverse
Firefox-Reverse 的核心目标不是网页自动化或模拟浏览器行为,而是帮助完成完整的逆向链路:
抓包 → 定位参数 → 追踪签名函数 → 分析混淆 / JSVMP / WASM → 补环境 → 本地脚本验证 → 还原成可独立运行的算法。
最特别的是,Firefox-Reverse 内置了一个 AI 逆向 Agent。这个 Agent 运行在浏览器侧边栏里,可以像一名逆向工程师一样连续调用工具,自主完成抓包、读代码、下探针、分析 trace、写 Node.js 脚本、实打接口验证等工作。
换句话说,Firefox-Reverse试图把过去高度依赖人工经验的 JS 逆向流程,压缩成一个“人给目标,AI 跑流程,人做判断”的半自动化工程系统。
项目核心亮点:
- 内置自主 Agent:不是聊天框,是能连续调用 44+ 工具、自己跑完「抓包→定位→验证→补环境→实打」全流程的逆向智能体。
- SpiderMonkey 引擎层「上帝视角」工具:签名器入参、JSVMP 逐指令、WASM import 边界、浏览器真值 vs Node 复刻的分支差分,全部在 C++ 引擎里观测,页面检测不到、反调试挡不住。
- 两种工作模式:提供全自动模式、AI 辅助模式两种模式,按会话持久化、随时切换。
- 站点无关:面向通用 JS / JSVMP / WASM / 签名逆向,不为任何特定网站定制;案例只是测试样例。
- 任意大模型:DeepSeek / 智谱GLM / Kimi / MiniMax / 通义千问 / Claude / OpenAI 及任意 OpenAI/Anthropic 协议兼容端点,Key 存本地、不外传。
- 跨会话记忆:确认过的事实 / 踩过的坑沉淀进内置 SQLite,下次不再兜圈。
- 常驻引擎:对话引擎跑在父进程系统模块,切侧栏 / 关窗口都不中断,多窗口工作目录互相隔离。
项目还提供 frx-director-mcp 等配套工具,让 Claude 等强模型通过 MCP 自动指挥浏览器 Agent,实现成本优化(强模型做决策,便宜模型磨工具)。
Firefox-Reverse 将 AI 智能体与浏览器引擎深度融合,开创了 Web 逆向的新范式。值得每一位经常JS逆向的工程师尝试使用。