JS逆向 | 七麦数据analysis分析

本文详细解析了一次针对七麦数据analysis的加密揭秘,通过抓包和代码分析揭示了加密逻辑,包括Base64编码和字符替换等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

声明:本文只作学习研究,禁止用于非法用途,否则后果自负。如果侵权到了您的权益,请立即联系我删除!

前言

这次来分析一下七麦数据的analysis加密。

有什么写的不好的地方请多多指教😛。

目标网站:aHR0cHM6Ly93d3cucWltYWkuY24vYW5kYXBwL3NoZWx2ZXMvYXBwaWQvNTM4ODE3MA==

抓包分析

老规矩,还是先抓个包看看。
在这里插入图片描述
这一串字符串显然不是什么好东西😁,这次分析的目标就是这个analysis

加密分析

寻找加密位置

先打上xhr断点,然后跟栈走到这里,
在这里插入图片描述
然后单步调试(后面是个异步,要慢慢跟),一直跟到这里面,
在这里插入图片描述
这个a和前面抓包的url里面的那一串很像,有木有😎。

加密逻辑分析

找到加密位置,就好办了,接下来就是分析是如何加密的。

直接从a入手,

a = (0, n.cv)((0, n.oZ)(r, l))

r的处理在这一部分,
在这里插入图片描述

Object.keys(e.params).forEach((function(t) {
    if (t == h)
        return !1;
    e.params.hasOwnProperty(t) && r.push(e.params[t])
}

这一段代码是先将params里的值pushr里,
在这里插入图片描述

r = r.sort().join("")

然后将r拼接成字符串,

r = (0, n.cv)(r)

看看这个n.cv方法是干嘛的,

在这里插入图片描述
就是做一个Base64编码

r += d + e.url.replace(e.baseURL, ""),
r += d + o,
r += d + 1

d的值是'@#'o在上面有定义。

这段代码就是继续往r后面添加内容,最终的r如下所示:
在这里插入图片描述
l是什么呢?
在这里插入图片描述
控制台打印看到l是一串字符串。往上找到定义它的地方:

var l = (0, n.nF)("qimai|Technologyx", 1)

跟进去看看,
在这里插入图片描述
rl都知道了,再看看n.oZ是啥(n.cv方法前面已经说过了)。

n.oZ方法:

function g(e, t) {
    t || (t = s());
    for (var a = (e = e.split("")).length, n = t.length, o = "charCodeAt", r = 0; r < a; r++)
        e[r] = i(e[r][o](0) ^ t[(r + 10) % n][o](0));
    return e.join("")
}

加密的逻辑知道了,那么下面就是愉快的扣代码环节🤗。

扣完后运行的效果如下:
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值