极验3逆向 JS逆向最新点选验证码 逆向分析详解

目录

声明!

一、请求流程分析

二、w参数生成位置

三、主要问题

四、结果展示

原创文章,请勿转载!

本文内容仅限于安全研究,不公开具体源码。维护网络安全,人人有责。

声明!

本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关。
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除,请各位自觉遵守相关法律法规。

具体位置为官网的demo(float):demo 列表

一、请求流程分析

1.拿gt与challenge

2.根据gt与challeng拿到验证码等信息

3.拿到验证码进行后计算出距离

4.根据得出的距离进行加密,得到w参数,即可校验是否通过

5.通过后会响应带指的 validate

二、w参数生成位置

1.跟旧版的点选差不多,找参数生成位置的办法,就是再click.js文件中搜索关键词 "\u0077",就可以找到w的生成位置,例如:

2.找到生成位置后,我们发现是由p+u生成的,而p和u就在上面,这个时候思路就清晰多了,打上断点,看看p和u是怎么生成的:

3.可以看得出来,p和u就是在这个地方生成的,扣代码的话可以从这个地方开始扣了,由于代码是经过ob混淆的,我们可以先解混淆,这样更方便我们调试:

三、主要问题

1.做到一半,可以发现轨迹值是经过特殊处理的,例如:

2.这个很简单,就基本的加减乘除,result传递原始的坐标位置即可。以下代码即可处理:

复制代码
	def set_xy(self, result):
		res_a = str()
		for info in result.split('|'):
			final_x = int(round(int(info.split(',')[0]) / 333.38 * 100 * 100, 0))
			final_y = int(round(int(info.split(',')[1]) / 333.38 * 100 * 100, 0))
			res_a += str(final_x) + '_' + str(final_y) + ','
		return res_a.strip(',')

四、结果展示

创作不易求个赞再走~~~

学习交流QQ:450297392

相关推荐
小白学大数据6 小时前
Python 3.7 高并发爬虫:接口请求与页面解析并发处理
开发语言·爬虫·python
深蓝电商API1 天前
淘宝商品主图视频下载:从 API 返回值中提取视频 URL 并转码
爬虫·接口·api·淘宝api
独隅1 天前
爬虫对抗:ZLibrary反爬机制实战分析
爬虫
伊玛目的门徒1 天前
多线程韩漫爬虫下载器
爬虫·python·漫画·韩漫
pengyi8710151 天前
共享 IP 池冲突根源与基础分配原则
网络·爬虫·网络协议·tcp/ip·智能路由器
ZC跨境爬虫2 天前
移动端爬虫工具Fiddler完整配置流程:PC+安卓模拟器全覆盖,零基础一次配置成功
android·前端·爬虫·测试工具·fiddler
HookJames2 天前
恶意爬虫非常可恶,设置托管质询
爬虫
B站_计算机毕业设计之家3 天前
计算机毕业设计:Python股票投资辅助决策系统 django框架 request爬虫 协同过滤算法 数据分析 可视化 大数据 大模型(建议收藏)✅
爬虫·python·深度学习·算法·django·flask·课程设计
FlDmr4i284 天前
网络爬虫是自动从互联网上采集数据的程序
爬虫