littlewhite11 发表于 2024-11-18 23:13

【JS逆向】某某经营网jsl逆向分析

本帖最后由 littlewhite11 于 2025-3-10 07:35 编辑


# 逆向目标

- 网址:`aHR0cDovL3d3dy5jYi5jb20uY24v`
- 目标:cookie中的`__jsl_clearance`参数

# 抓包分析

清空cookie,刷新网站,会发起三个相同的请求,其中前两次响应状态码为512,第三次响应状态码为200,这是jsl的典型特征。



第一次响应设置了一个名为`__jsluid_h`的cookie。



第二次请求携带上一个响应的cookie和一个名为`__jsl_clearance`的cookie。



第三次请求携带和第二次响应名字相同的cookie,但`__jsl_clearance`的值不一样了,比较明显的区别就是第二次cookie值中间的数字是-1,第三次cookie值中间的数字是0。



# 逆向分析

流程分析完了,下面开始正式逆向,一般来说,对于cookie加密的情况,直接hook。

成功hook到第二次的cookie,而且代码也非常熟悉,经典的OB混淆。



那第二次请求的`__jsl_clearance`在哪生成的呢,为什么没有hook到。

还是下熟悉的`script断点`看看吧。

第一加载index的时候,会发现是这个时候生成了第二次请求的`__jsl_clearance`,这个并不难,我们重点需要分析第二次生成的`__jsl_clearance`。



既然遇到OB混淆了,那就无脑AST。

还原后的代码只有240行,我们甚至可以直接静态分析。



直接搜索`document["cookie"]`,只有一个地方,`_0x4954f5`就是我们的目标了。



继续往前分析,发现`_0x5bef39`就是`__jsl_clearance`最终的值。



再往前分析,最终找到目标参数的生成位置。



剩下的事情就是,你懂的,缺啥补啥。其中`_0x23b046`是调用`go`函数传进去的对象。



下面直接模拟请求:



成功!!!

> 请求的时候可以`session保持`,其次还需要注意JS脚本是`动态`的,每次使用的`hash算法`可能都不一样,需要将动态的参数提取出来进行请求。

littlewhite11 发表于 2024-11-20 20:33

z65555 发表于 2024-11-20 20:25
是不是要先学习前端技术才能学这个逆向呢

我没有专门学过前端,缺什么知识补什么知识

smilesmile 发表于 2025-4-10 16:26

var CryptoJS = require('crypto-js')

function dynamicHash(algorithm, data) {
    try {
      // 根据算法名称选择对应的哈希函数
      const hashFunctions = {
            'md5': CryptoJS.MD5,
            'sha1': CryptoJS.SHA1,
            'sha224': CryptoJS.SHA224,
            'sha256': CryptoJS.SHA256,
            'sha384': CryptoJS.SHA384,
            'sha512': CryptoJS.SHA512,
            'sha3': CryptoJS.SHA3
      };

      if (!hashFunctions) {
            throw new Error(`Unsupported algorithm: ${algorithm}`);
      }

      // 计算哈希值
      const hash = hashFunctions(data);
      return hash.toString(CryptoJS.enc.Hex); // 返回十六进制字符串
    } catch (error) {
      return `Error: ${error.message}`;
    }
}

hash换成dynamicHash这个吧

PhoenixOe 发表于 2024-11-19 15:36

6啊,学习学习

littlewhite11 发表于 2024-11-19 16:16

PhoenixOe 发表于 2024-11-19 15:36
6啊,学习学习

互相学习

iManGi 发表于 2024-11-19 16:29

学习,大佬厉害

eastbu 发表于 2024-11-19 16:54

6 啊,感谢分享 学习学习

tymydol 发表于 2024-11-19 17:14

羡慕你们程序员

littlewhite11 发表于 2024-11-19 18:34

xina 发表于 2024-11-19 18:22
什么时候我才能有这种技术

迟早的事

lmyx2008 发表于 2024-11-19 19:53

逆向分析棒

wangjichuan 发表于 2024-11-19 20:13

逆向分析棒

coderFuns 发表于 2024-11-19 20:46

6啊,现在正在学习逆向,学到了
页: [1] 2 3 4 5 6 7
查看完整版本: 【JS逆向】某某经营网jsl逆向分析