前言
目标网址:aHR0cHM6Ly93d3cuaXNodW1laS5jb20vdHJpYWwvY2FwdGNoYS5odG1s
相比较于 j验,数美还是比较简单,当然也是我选的滑块类型比较简单啦。
流程分析
可以从这个url得到背景图和滑块的图片,最开始我在像,是不是想 j 验一样会先注册用户一样的,但是后面发现并没有这样的操作,就很轻松的请求就可以了。
这个就是滑完后,去请求验证的url,需要的参数。
具体流程就很简单,先请求图片信息url,再得到加密参数后,请求验证的url。
代码分析
具体怎么定位到加密信息的,如有不懂的,阔以去看看b站远哥的视频,文本处理的方法也是跟着远哥学的嗷。
从名字就可以看出这点就是加密的地方啦。
然后就是扣代码了。再记事本中看看在那个函数里面直接导出调用就行了。
很好啊,这个看起来像个webpack呀,具体webpack怎么扣,希望大家去b站看远哥的视频,远哥讲得很清楚。我就不具体分析了。不过还是要提一下,因为这里的webpack自执行的函数和我以前看到的不一样。就小小提一嘴。
从图中箭头就可以看到,加载器和一系列函数的集合。直接导出加载器就行了,再加载我们需要的函数,调用就行了。
加密分析
当前,按照前面直接调用需要的函数,是有问题的,因为滑块识别,我们不导入轨迹,图片坐标这些,这怎么能行呢,这就注定了我们需要修改其中的一些函数,自己传入我们需要的参数啦。
经报错的提醒发现了,需要自己传入参数的函数
再继续分析,如果我们是直接调用_0x4b298a[“prototype”][“checkApi”] ,这时就会遇到 this 里面没有东西啊!!!
那我们就去看看this里面的东西是从哪里来的,我们也可以从上图作用域中看出this 就是 _0x4b298a,那就去_0x4b298a最开始定义的地方去看呀。
从这里就可以看到是 _0x4b298a new 了一个东西,那就好办了,自己可以多去试一试,这个东西不变去new 一下,发现结果并没有多大的变化,那我们就可以写死了。这样this就完成了,但还需要注意的一点就是需要注释到下面的代码
然后再回到加密的地方,
哎,发现这个this,好像不能用哎,不过看这个结果,很像上面返回图片的那个数据哎,那这个数据就是我们第一个需要传入的参数啦。
然后再继续分析
这里的this。data就是含有的一些轨迹的信息啦。再看看后面用了那些数据,那就我们自己构造然后传入。
然后看名字就可以知道第一个就是轨迹信息啦,至于如何伪造轨迹,就自己在网上找找吧,或者看我前面一篇关于 j验 的文章。
至于后面的一些参数都可以写死哦。
至此,加密的一些参数已经结束了。
补环境一些注意点:
因为用的是远哥的框架(二期视频有)补的环境,在框架中并没有head,可以补,也可以 注释掉这一行。
直接在加密函数后,导出需要的加密数据,同时还要注释掉后面的函数,因为后面的函数是请求函数。
最后啦
可能有些并没有说得很明白,有什么不太明白的,期待和大佬们一起交流。