js逆向——验证码案例【极验3滑动模式】

我想请分析下,js逆向——验证码案例【极验3滑动模式】
最新回答
龙卷风

2024-11-05 05:42:46

生成w以及相关参数

算法包括RSA,AES,MD5

验证流程分析

首先,分析抓包,只需请求1到6步骤

获取验证码图片

第一步:获取gt和challenge,直接请求

第二步:带上gt、challenge、w置空请求接口,返回slide类型验证码

第三步:再次请求,获取验证码信息,包括背景图、缺口图,取出新c、s、challenge(c不变)

注意:返回的challenge与前值尾部多两个字符

图片乱码,需要还原底图

识别方式:观察使用canvas绘图(F12查看元素)

方法一:打上canvas断点,观察绘制过程

方法二:hook canvas对象创建,直接百度参考代码

还原后图片类似下图

识别缺口距离,可手动或第三方平台,选择dddocr识别

生成轨迹:参考缓动函数,上代码

加密轨迹提交:搜索w,JS内部编码,查找编码,参考JS逆向实战

解密u参数:滑块操作后,进入查看,发现生成随机数加密

使用python实现RSA解密

L参数解析:分析参数对象,找出关键参数,通过方法实现

V方法解析:AES加密,通过库实现

h参数解析:m['$_FEE']加密l参数,进入$_FEE查看,发现返回参数

进入e查看,返回res和end

完成混淆还原

w计算:w = h + u

结果展示

总结:流程分析抓包,获取验证码信息,还原底图,识别缺口,生成轨迹,加密提交,完成验证

过程中遇到坑点,扣算法和js带来便利性,但需有经验,全扣法可简化,推荐新手尝试