文章只供技术交流使用,不放任何成品,如有侵害贵公司权益行为,联系我,立即予以删除

前言:

fullpage篇主要是位于ajax.php?包里面的w

某验追踪w值(fullpage篇)_ajax


大概是这样

跟踪位置

搜索w不太现实,跟踪堆栈吧

某验追踪w值(fullpage篇)_ide_02


从第一个开始,点进去,格式化,打断点

重新运行,断下,

某验追踪w值(fullpage篇)_ajax_03


再看看后面传的参数,发现没啥用,点到堆栈调用处

某验追踪w值(fullpage篇)_ide_04


发现s里面有w值,这个s应该是外界传进来的,找当前作用域里面,

某验追踪w值(fullpage篇)_ci_05

打断点,重新运行,再让他断住,继续跟堆栈,

经过漫长的跟踪,找到了加密位置

某验追踪w值(fullpage篇)_滑块_06

简要分析

这个wa+n组成,继续找a, n来源

某验追踪w值(fullpage篇)_ajax_07


嫌疑代码抓住了。

n

先看n,

某验追踪w值(fullpage篇)_ajax_08


点进去,

在返回和定义返回值处下断点

某验追踪w值(fullpage篇)_ide_09

var r = new Q()[SBvg(352)](t[TywV(1257)](e));

返回的是r,简单解混淆一下,

某验追踪w值(fullpage篇)_ide_10

new Q()["encrypt"](t["ylBh"](undefined))
当下任务是先把t["ylBh"](undefined)搞出来

某验追踪w值(fullpage篇)_ci_11


发现返回的值调的ce()

某验追踪w值(fullpage篇)_ci_12


那么s4是什么呢,发现他在上面定义了,

某验追踪w值(fullpage篇)_滑块_13


发现是四个随机数相加,

然后下一步就是new Q()["encrypt"]()这个函数,这个可以直接跟进去,函数的话可以直接扣下来

i

var i = it()[MXFq(1250)](ve[NMLl(25)](t[NMLl(297)]), t[NMLl(1257)]());
解混淆一下
var i = it()["encrypt1"](ve[NMLl(25)](t[NMLl(297)]), t[NMLl(1257)]());

某验追踪w值(fullpage篇)_ide_14


这样看清楚点,

看括号里面参数

ve[NMLl(25)](t[NMLl(297)]):
"{\"gt\":\"019924a82c70bb123468sfdd4\",\"challenge\":\"4fc7a7dad9c2c064d5fd8c49f4e8763d\",\"offline\":false,\"new_captcha\":true,\"product\":\"float\",\"width\":\"300px\",\"https\":true,\"api_server\":\"apiv6.geetest.com\",\"protocol\":\"https://\",\"type\":\"fullpage\",\"static_servers\":[\"static.geetest.com/\",\"dn-staticdown.qbox.me/\"],\"beeline\":\"/static/js/beeline.1.0.1.js\",\"voice\":\"/static/js/voice.1.2.0.js\",\"click\":\"/static/js/click.3.0.1.js\",\"fullpage\":\"/static/js/fullpage.9.0.7.js\",\"pencil\":\"/static/js/pencil.1.0.3.js\",\"slide\":\"/static/js/slide.7.8.3.js\",\"geetest\":\"/static/js/geetest.6.0.9.js\",\"aspect_radio\":{\"slide\":103,\"click\":128,\"voice\":128,\"pencil\":128,\"beeline\":50},\"cc\":12,\"ww\":true,\"i\":\"6148!!7436!!CSS1Compat!!1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!2!!3!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!-1!!1!!-1!!-1!!-1!!0!!0!!0!!0!!354!!644!!354!!644!!zh-CN!!zh-CN,zh!!-1!!2.0000000298023224!!24!!Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Mobile Safari/537.36!!1!!1!!354!!644!!354!!644!!1!!1!!1!!-1!!Win32!!0!!-8!!584f4432fe6ebea605c1f943c0a39f15!!37d2ac50723da033efc14274b809c431!!!!1!!-1!!0!!12!!Arial,ArialBlack,ArialNarrow,BookAntiqua,BookmanOldStyle,Calibri,Cambria,CambriaMath,Century,CenturyGothic,CenturySchoolbook,ComicSansMS,Consolas,Courier,CourierNew,Garamond,Georgia,Helvetica,Impact,LucidaBright,LucidaCalligraphy,LucidaConsole,LucidaFax,LucidaHandwriting,LucidaSans,LucidaSansTypewriter,LucidaSansUnicode,MicrosoftSansSerif,MonotypeCorsiva,MSGothic,MSPGothic,MSReferenceSansSerif,MSSansSerif,MSSerif,PalatinoLinotype,SegoePrint,SegoeScript,SegoeUI,SegoeUILight,SegoeUISemibold,SegoeUISymbol,Tahoma,Times,TimesNewRoman,TrebuchetMS,Verdana,Wingdings,Wingdings2,Wingdings3!!1630492244735!!-1!!-1!!-1!!12!!-1!!-1!!-1!!5!!-1!!-1\"}"
t[NMLl(1257)]:是一个函数,和`n`
值加密同源```

```python
var i = it()["encrypt1"](arg1, arg2);

ve[NMLl(25)](t[NMLl(297)])这个有必要说一下,这个里面,gt, challenge是之前返回的

某验追踪w值(fullpage篇)_ci_15


这一串是e

某验追踪w值(fullpage篇)_滑块_16


不难抠,其中有一个坑,有一个时间戳

然后就没啥可说的了

a

var a = u[NMLl(1236)](i);

这其中的i不说了,刚抠完

某验追踪w值(fullpage篇)_js逆向_17


加密在这,

这个也不难抠

某验追踪w值(fullpage篇)_js逆向_18


某验追踪w值(fullpage篇)_ide_19


然后就大致结束了,

其中随机数有一个坑,

这个就不说了


阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6