免责声明
文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业和非法用途,否则由此产生的一切后果与作者无关。若有侵权,请在公众号【爬虫逆向小林哥】联系作者
01
—
逆向目标
Xs、Xt这里面就不讲了,有想法的可以参考下B站志远的vmp,下面的旋转滑块加密跟xs其实也是大同小异,角度以及轨迹生成下一期再发
aHR0cHM6Ly93d3cueGlhb2hvbmdzaHUuY29tL3dlYi1sb2dpbi9jYXB0Y2hh
02
—
抓包分析
注册返回信息加密
提交验证信息加密
03
—
逆向过程
跟栈
在这个地方还是加密好的密文,再往前回溯栈就到vmp文件里面了
分析文件
循环和指令集
指令集大多调用这个l函数
调用i,最后一个return
日志断点
输出这里的Q值
JSON.stringify(Q, function(key, value) {if (value == window) {return undefined} return value})
先来看返回值解密,直接日志内搜关键词
这里开始解密
流程跟上面B站视频里面讲的一样,小红书目前一直是DES加解密,因此需要确定加解密的key
基本上都会出现在encrypt以及decrypt后面
图片解密好了
接下来看提交信息加密
日志点要多加一些
打印下这里的B[0]索引为了更好的进入指令集里面分析
"索引B[0]:", B[0]
"Q值: ", JSON.stringify(Q, function(key, value) {if (value == window) {return undefined} return value})
输出
mouseEnd
顺着分析比较麻烦,我们直接逆推,拿生成好的值搜第一次出现的位置
btoa
在往上经过一系列流程得到下面的值
用到了我们上面看到的18,不过后面加了些字符串
流程
一个mouseEnd 18
加盐18u0006u0006u0006u0006u0006u0006
encrypt (某书基本上是des)
"Su0014@U/(="
btoa
UxRAVYcvKD0=
现在还有个问题就是这里的u0006u0006u0006u0006u0006u0006,是从6过来的
这个地方生成了一个2, 然后出来了6,2这里可以猜测是18的长度 但是6还是不知道怎么来的
需要在指令集这边打上详细的日志查看,我们在索引为31上面打上日志,可以先搜索下这个指令是否频繁调用,调用不频繁的话可以打条件断点
发现整个日志只有五处调用
直接打条件断点
B[0] === 31
进入指令集h[31]
Q == Y(Q, A) % Y(C, g) == 2
是个固定值8
所以这里2的由来就是
mounseEnd.lenght % 8
6 = Y(Q, A) - Y(C, g)
Y(Q,A)还是还是固定值8,Y(C,g)就是上面生成的2
因此这里的"18u0006u0006u0006u0006u0006u0006" 构成就知道了
function encrypt_length(a) {
let b = a.toString().length % 8,
num = 8 - b,
c = a;
for (let i = 0; i < num; i++) {
c += String.fromCharCode(num)
}
return c
}
let mouseEnd = btoa(des("WquqhEkd", encrypt_length(18), 1, 0, undefined, 0)) // x移动距离
console.log(mouseEnd)
time
这边的5生成也是跟上面分析的一样
DES的密钥也在
// time 一共耗时
let time = btoa(des("vPMvCY4K", encrypt_length(993), 1, 0, undefined, 0)) // 500 - 1500
console.log(time)
tracks
// track
let track = btoa(des("PYrm8rMk", encrypt_length("[[0,0,270],[18,4,611]]"), 1, 0, undefined, 0))
console.log(track)
width
// width 可以固定值
let width = btoa(des("WquqhEkd", encrypt_length(246), 1, 0, undefined, 0)) // 286写死
console.log(width)
04
—
归纳总结
添加好友回复:交流群
原文始发于微信公众号(爬虫逆向小林哥):【逆向案例】某书旋转滑块vmp加解密
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论