Web JS 逆向全体系内容
互联网安全与职业操守
做渗透测试和逆向分析,前提只有一个:必须在书面授权范围内进行。所有技术都应服务于合法的安全评估、漏洞验证和防御加固,不能越界到未授权扫描、探测或利用。
同时也要注意最小影响原则。测试过程中尽量避免使用高风险参数或会明显扰动目标服务的操作;涉及到的敏感数据、日志和临时文件,测试结束后应及时清理,确保不留下额外风险。
第一部分:Web JS 逆向的基础框架
第一章 逆向基础
核心定义与原理
Web JS 逆向,本质上就是反向分析前端页面里的 JavaScript 代码。很多网站的接口签名、参数加密、反爬校验,都被放在前端 JS 里实现。只要代码会在浏览器中执行,就有机会通过调试、观察和还原,把生成规则摸清楚,再用 Python 或其他语言复现出来。
常见应用场景
- 爬虫开发:还原 sign、token、data 等参数的生成方式;
- 接口调用:在没有公开 API 的情况下复现前端请求;
- 反爬分析:识别环境检测、反调试和混淆逻辑;
- 安全评估:检查前端是否暴露了不应公开的密钥、路径或校验规则。
入门示例
function generateSign(keyword, timestamp) {
const str = keyword + timestamp;
return CryptoJS.MD5(str).toString();
}
逆向时最重要的不是记住函数名,而是搞清楚它的输入、拼接顺序和最终算法。只要这三点确认了,Python 侧复现通常就不难。
第二章 浏览器控制台与调试面板
DevTools 是 JS 逆向的主战场,真正高频使用的还是 Network、Sources、Console 和 Application 这几个面板。
Network 面板
Network 用来抓包,看请求到底发了什么、回了什么。逆向时最先做的事,往往不是盯代码,而是先找到真正的接口,再反推参数从哪里来。
重点关注这些内容:
- 请求 URL 和请求方法;
- 请求头里的
User-Agent、Referer、Cookie、Content-Type; - 请求体中的
sign、token、data等字段; - 响应体里的数据结构和错误码。
Sources 与 Application
Sources 是调试 JS 的核心区域。格式化压缩代码、设置断点、单步执行、查看作用域变量,这些操作几乎每天都要用。Application 则常用来查看 Cookie、LocalStorage 和 SessionStorage,很多站点会把 token、密钥片段或状态信息放在这里。
Console
Console 更像是一个临时实验室。你可以直接调用页面里的函数、查看变量、验证签名逻辑,也可以做一些 Hook 测试。逆向不是'看懂就算',而是要不断试、不断比对、不断修正。
第三章 加密参数的定位方法
定位加密函数,常见思路有两类:断点回溯和 Hook 拦截。


