极验四代点选绕过¶
本文档以极验 4 代的点选为示例,介绍极验验证码的通用流程。非保姆级教程,需要跟着动手调试。
1. 前提条件¶
极验 4 代点选逆向前准备如下:
- 谷歌浏览器,调试使用
fiddle等抓包工具(可选)- 目标网址:极验 4 代点选
2. 抓包¶
分析的第一步,先跑通整个验证流程,看看有哪些重要的请求。

3. 验证流程¶
【官网情况下】极验 4 代比 3 代的旧逻辑少了
register,gettype,ajax之类的请求,只有load和verify请求包来验证。
由以上抓包可知,只要正确模拟出 load 和 verify 请求即可。
3.1. config 相关¶
此请求用于获取 load 请求中的 captcha_id 参数,以调试可知:captcha_id 参数不变动,应该是 js 版本之类的标识,写死或在对应页面返回中提取都行。
不重要,略。看自己选择是写死或发送请求获取。
3.2. load 请求¶
load 请求详细信息

load 响应内容

-
请求方式:GET
-
请求参数:
| 字段 | 说明 | 类型 | 是否必填 | 备注 |
|---|---|---|---|---|
| captcha_id | 类似版本号信息 | str | 是 | 写死或 adaptive-captcha-demo.js 取值都行 |
| challenge | 应该是用于同轮验证之类 | str | 是 | 3.2.1. challenge 生成逻辑 中查看 |
| client_type | 客户端类型 | str | 是 | 写死,值为 web |
| risk_type | 验证类型 | str | 是 | 写死,值为 word |
| lang | 语言 | str | 是 | 写死,值为 zh |
| callback | 回调 | str | 否 | 不重要,按规则生成即可 |
- 返回结果(只介绍重要参数):
| 字段 | 说明 | 类型 | 备注 |
|---|---|---|---|
| ques | 需要点击的图片顺序 | list | 可以据此得到正确点击顺序 |
| lot_number | 用于 3.3. verify 请求 中的参数 | str |
3.2.1. challenge 生成逻辑¶
challenge好定位,可以跟进去uuid的方法,也很简单,略。
challenge 获取方法:

注: 在遇到类似这种方法生成或缓存配置中取值都行的,且这个参数在同轮验证多次用到时,我们最好在意下每次调试时此值的变动。
3.3. verify 请求¶
首先查看请求详情,这里不再截图,自己去看。
-
请求方式:GET
-
请求参数:
| 字段 | 说明 | 类型 | 是否必填 | 备注 |
|---|---|---|---|---|
| captcha_id | 类似版本号信息 | str | 是 | 写死或 adaptive-captcha-demo.js 取值都行 |
| challenge | 应该是用于同轮验证之类 | str | 是 | 3.2.1. challenge 生成逻辑 中查看 |
| client_type | 客户端类型 | str | 是 | 写死,值为 web |
| lot_number | 批号 | str | 是 | 3.2. load 请求返回而来 |
| risk_type | 验证类型 | str | 是 | 写死,值为 word |
| pt | 不重要 | int | 是 | 写死,值为 1 |
| w | 轨迹环境等处理而得 | str | 是 | 3.3.1.w 值生成逻辑 中查看 |
| callback | 回调 | str | 否 | 不重要,按规则生成即可 |
- 返回结果(只介绍重要参数):
| 字段 | 说明 | 类型 | 备注 |
|---|---|---|---|
| pass_token | 通过验证后的值 | str |
3.3.1.w 值生成逻辑¶
这里只介绍大流程,详细步骤自己根据调用栈调试。

3.3.2.点选图的处理¶
点选图的文字顺序及对应坐标,这里暂不细讲,想快速实现的话,推荐使用是
ddddocr v1.4.3就可以实现目的。
具体请在 ddddocr 升级版使用方法 中查看。
4. 如何运行¶
再知道主要逻辑后,如何运行我们定位到的代码呢。扣代码,补环境看自己选择。推荐补环境运行,不管是补环境框架实现还是
jsdom实现都行(已验证,jsdom和 补环境都可以实现)。这里放上补环境框架实现的代码部分,
jsdom运行部分请查看以前写的 3 代逻辑。

5. 总结¶
极验逻辑相同,新手可以从最简单的无感搞起(虽然无感不传
w值也能通过验证),跑通w值的逻辑再调试滑块或点选之类的更方便(毕竟滑块和点选之类的有底图还原和轨迹生成之类的)。
- 极验不管 3 代还是 4 代,无感、滑块、点选,还是拼图和五子棋之类的,其主要逻辑都是相同的,只是 3.3.1.w 值生成逻辑 调试图中的 e 之类的参数格式有所不同而已,自己调试下就知道了。
- 点选坐标有缩放大小,自己多调试,找出缩放比例。
这里补上整个运行流程图:
