js逆向|极验3 底图还原和w值(一)

本文详细介绍了如何通过调试和分析极验验证的Demo,理解其滑动验证的工作原理。从获取初始请求,到解析图片切割的算法,再到验证成功的关键参数,揭示了滑动验证的图片还原和验证过程。通过对JS代码的断点调试,确定了图片由52份组成并还原了顺序,为模拟验证提供了思路。
摘要由CSDN通过智能技术生成

仅使用官方demo案例学习交流

1.

https://www.geetest.com/demo/slide-popup.html

首先用无痕浏览器打开极验的demo

 第一个有用的请求是发送时间戳,给我们一个gt和challenge

下面两个请求我们看一眼先不管,点击触发滑动,是会传gt、challenge和w值过去,返回值result: "slide" 是验证模式好像不重要,我们继续往下看 is_next这个请求带着gt和challenge返回新的challenge和一些其他的值。观察下面图片的路径可以知道,这个请求的返回值包括打乱的滑块图片和底图。

 好,我们滑动几次,可以发现他过了验证会返回一个validate,这个过验证的请求需要的参数就是一开始的gt和改变后的challenge还有w值

2.

我们开始调试,先搞定图片

我们先查看这个滑动的图,是canvas画的 接下来我们到source里对 canvas事件打个断点,刷新一下图片,进到他图片创建的js,可以看到是个平坦流

我们在这个case上下几个断点,运行,断到里面然后我们逐行往下,到一个for循环可以看到是一个长度52的数组,大胆猜测一下就是这个图片是上下被切成52份,最后多调几次发现这个数值是不变的,就是还原顺序。

我们可以根据这个数组来还原图片,他计算的公式也在下面,自己实现一下即可,那么这个底图还原我们就扣到这里 

 

 

0: 39
1: 38
2: 48
3: 49
4: 41
5: 40
6: 46
7: 47
8: 35
9: 34
10: 50
11: 51
12: 33
13: 32
14: 28
15: 29
16: 27
17: 26
18: 36
19: 37
20: 31
21: 30
22: 44
23: 45
24: 43
25: 42
26: 12
27: 13
28: 23
29: 22
30: 14
31: 15
32: 21
33: 20
34: 8
35: 9
36: 25
37: 24
38: 6
39: 7
40: 3
41: 2
42: 0
43: 1
44: 11
45: 10
46: 4
47: 5
48: 19
49: 18
50: 16
51: 17

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值