极验4

极验4demo
aHR0cHM6Ly9ndDQuZ2VldGVzdC5jb20v
本文章中所有内容仅供学习交流使用,不用于其他任何目的,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!

第一个接口逆向参数

image-20250225100211672

搜索captcha_id可以找到生成位置,可以看到challenge就是一个uuid

image-20250225100333061

继续搜索captchaId发现是一个固定值,请求后可以拿到背景和滑块地址以及下一个接口要用到的数据

第二个接口

只有这个w参数,搜索w:即可定位到

image-20250225141714153

w的生成位置

image-20250225142240624

进去就能看到主要是对_ᖀᖉᕿᕷ字符串进行加密,_ᕺᕺᖗᕹ这个就是之前3代那个4个随机长度为4的字符串拼接

_是RSA加密 u是AES加密

image-20250227144515424

然后就是找加密数据了,顺着_ᖀᖉᕿᕷ加密的地方往上看就能找到em,gee_guard,s3dA的生成位置,直接写死即可,另外还有一个动态键值对a,后面在看

image-20250227151101057

setLeft是滑动距离

passtime是滑动时间(可写死)

_ᕴᖁᖄᕵ[_ᖁᕷᕶᕾ(1486)]固定值

image-20250227151712552

接着就是找pow_msgpow_sign通过搜索_ᖁᕷᕶᕾ(446),观察后就能发现一个是赋值options的地方,另一个看的时候pow_msgpow_sign已经赋值上了,因此往上a。(或者直接搜pow_msg一个个打上断点看也行)

image-20250227155902050

ᖈᕸᕶᖚ就是最后生成的pow_msgpow_sign

pow_sign=md5(pow_msg)

var _ᕴᖁᖄᕵ = a[_ᖀᕹᖃᖚ(446)]
, _ᖗᕺᖙᖉ = _ᕴᖁᖄᕵ[_ᖀᕹᖃᖚ(562)] // pow_detail
, _ᖘᖆᕶᕴ = _ᕴᖁᖄᕵ[_ᖀᕿᖚᖘ(422)] // lot_number
, _ᖂᖘᕾᖘ = _ᕴᖁᖄᕵ[_ᖀᕿᖚᖘ(522)] // captcha_id
, _ᖈᕸᕶᖚ = (0,_ᕺᕷᖃᖘ[_ᖀᕹᖃᖚ(9)])(_ᖘᖆᕶᕴ, _ᖂᖘᕾᖘ, _ᖗᕺᖙᖉ[_ᖀᕿᖚᖘ(500)], _ᖗᕺᖙᖉ[_ᖀᕿᖚᖘ(509)], _ᖗᕺᖙᖉ[_ᖀᕿᖚᖘ(551)], _ᖗᕺᖙᖉ[_ᖀᕿᖚᖘ(588)], _ᖀᕿᖚᖘ(46))

最后就只剩那个动态的键值对了,主要就是这两个地方,第一个地方生成数组,第二个地方负责切割,代码可以扣下来,就能生成,值和lot_number相关。(后面多次生产观察发现,其实就是那个window[_ᖁᕷᕶᕾ(31)][_ᕴᖁᖄᕵ(52)]这个地方得到的三个数组切割lot_number得到的)

image-20250228101356632

image-20250228101324642

image-20250228103326520

posted @ 2025-02-28 10:23  逍遥子D  阅读(113)  评论(0)    收藏  举报