进入网站,第一步首先是抓包分析
上图是点击验证之后获取的包,可以看到,id, cb, token, data这四个参数是我们所需要关心的
一个个来,我们先获取id字段的来源
fiddler里搜索id字段,可以定位到上面的包,直接向服务器请求即可
在开发者工具里面搜索cb: ,可以定位到上图的代码, 我们跟进去s()
可以看到代码 随机生成一个32位字符串,然后进行加密 , uuid我们不跟,主要是跟进P(e)
上图中的B指向的就是P函数,通过上图下方的t导出 ,所以我们需要把当前代码块整体抠出来
t是导出变量,后面需要的加密算法,可以直接调用t[‘xxxx’]来进行
回到开始,那么cb的参数获取 就是上图所示,先调用uuid,然后通过eypt属性方法来加密
上图是token参数的来源,唯一的入口参数就是cb, cb我们已经获取到 ,所以也是直接发包即可获取token
上图是data的来源,对象中四个属性,d,m,p.ext, d不用看,m属性中的 几个值,j是轨迹参数,p默认是50,v.sample , '_'函数都可以在源码里很轻松的获取到, j轨迹参数我们可以直接写死, 我这里直接给空
其他的属性,p,ext 也是照葫芦画瓢,他需要什么,我们就给什么就完事了
上图是我的调用案例,传入token即可
万事具备,我们直接代码调用,发包,即可获取验证结果
整体流程不复杂,缺什么补什么即可