声明:
该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关。
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除!
前言
这次会简单的讲解极验3代第一,第二个w的逆向分析流程,如果有疑问可以在评论区交流讨论,我看到会及时回复的,另外,有需要可私信我。
通过前两篇极验3代滑块和文字点选参数分析知道,会有三个w,且前两个w可以为空(有些网站前两个我不能为空)。这里就主要讲解怎么逆向找到和生成前两个w。第三个w看前两篇极验3代滑块和文字点选。
通过前面两篇知道是那两个接口需要参数w
通过两张图片中红色标记堆栈可以猜测出w生成是在fullpage对应的js文件中的。
通过堆栈找到w生成的地方。
一.第一个w(https://api.geetest.com/get.php)
通过堆栈找到w生成的地方。图中红色标记的地方,知道w=i+r
1.分析r
这里跟前面的极验3代有一个地方很像。这里的参数:this[$_CGCI_(1119)](e)
就是前面说的随机数。
进入到这个函数:
至此参数分析完成。接下来分析函数。new X()[$_CGCJs(17)] =new X()['encrypt']
扣下这个对应的最外层。X对应的整体。
中间的代码都省略了。
生成t的代码有new 所以在扣的时候new不能省略。
到这里生成w的r就分析完啦。
2.分析o
o = $_BF_()[$_CEEIh(1184)](he[$_CEEIh(491)](t[$_CEEJl(363)]), t[$_CEEIh(1119)]())```第二个参数:`t[$_CEEIh(1119)]()`。通过分析知。这个值与前面分析r中t的参数值
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/c4fa4c2e09e84b1ababdfa1ecbe3c9e5.png)
`this[$_CGCI_(1119)](e)`就是前面说的随机数。值是一样的。如果这里重新在生成一个新的,最终得到w值就有问题,最后验证时会不通过。第一个参数:`he[$_CEEIh(491)](t[$_CEEJl(363)]) =JSON.stringify(t[$_CEEJl