来自知乎文章
极验验证码验证的是鼠标拖动滑块时的鼠标轨迹,完整步骤就像这样:先向目标网站请求一个id,然后拿着id去geetest服务器请求图片;接下来就开始拖动滑块,拖动的过程会被js记录下来;松开鼠标后会向geetest发送一个验证的请求,请求包含加密后的鼠标轨迹、拖动距离、所用时间等信息,如果成功,返回一个秘钥,用来向目标网站进行下一个请求。

那我们需要做什么呢?

  1. 向目标网站请求id
  2. 用id去geetest请求图片
  3. 合成图片得出拖动距离
  4. 生成鼠标轨迹
  5. 用Python把加密的方法实现一遍
  6. 发送加密后的数据

思路:

前两个都还好说

第三个、图片是混淆之后的图片,需要按着他的规则把相应的块换换位置就可以得到完整的图片了;缺口位置:每张图片各转为一个Python列表,每个值对应图片上每一列像素值的和,然后对两个列表进行比较(缺口的位置和所需要拖动的距离不相同,有一个固定的差)

第四个、轨迹生成有许多方法,1.找找规律,写个循环直接生成。如果写的不好影响成功率。2.找一些样本,然后随机选一个,根据自己需要拖动的距离按比例方法缩小23333

第五个、找到相应的js代码然后用Python实现一遍(体力活费时间,还好我写好了是吧)。。。或者可以调用v8


在验证码分析过程中我搭建一个简易的后台。极验有开放的Python demo,flask和django的都有,我用的flask。滑动成功之后,通过js把加密之前的鼠标轨迹等信息发送到后台,后台存入数据库。我又在页面上加了一个图表,可以把自己的轨迹显示出来,也可以把后台生成的轨迹显示出来,看看自己生成的轨迹和自己拖动的轨迹有什么区别,不过是否通过还是得发到极验后台去了。

最后放一张测试时搭建的后台。渣前端):

2017年3月9日更新:
极验的验证码更新挺快的,用这种方法去分析请求工作量挺大的,还是控制浏览器来的稳定,当然了,以前研究的东西正好可以用在这里,就像距离计算、轨迹生成之类的。

转载于:https://www.cnblogs.com/nail/p/6774242.html

极验滑动验证码破解分析相关推荐

  1. 【2019.05】极验滑动验证码破解 geetest

    [极验测试站]https://www.geetest.com/demo/slide-popup.html 滑动验证码如下图 破解滑动验证码一般都是得到验证码的原图和有滑块的图,这里我们抓包发现极验的原 ...

  2. 如何破解极验滑动验证码?成功率 100%!

    注:已对文章中所涉及的敏感内容,如图片/文字/URL 进行脱敏处理. 什么是"极验"? 或许你没听说过极验[1],但你很大可能使用过极验的产品.极验是首家「行为式验证」安全技术服务 ...

  3. Day06,selenium的剩余用法、万能登录破解和爬取京东商品信息,及破解极验滑动验证码...

    一.自动登录抽屉新热榜 from selenium import webdriver import timedriver = webdriver.Chrome(r'D:\BaiduNetdiskDow ...

  4. 爬虫进阶教程:极验(GEETEST)验证码破解教程

    原文链接及原作者:爬虫进阶教程:极验(GEETEST)验证码破解教程 | Jack Cui 一.前言 爬虫最大的敌人之一是什么?没错,验证码![Geetest]作为提供验证码服务的行家,市场占有率还是 ...

  5. 极验滑块验证码破解与研究(三):滑块缺口识别

    极验滑块验证码破解与研究(三):滑块缺口识别 声明 一.环境安装 1. 第三方库安装 二.滑块缺口识别 1. 准备工作 2. 工具函数说明 3. 接口识别原理讲解 4. 缺口识别完整代码 三.结语 * ...

  6. 极验滑块验证码破解与研究(二):缺口图片还原

    极验滑块验证码破解与研究(二):缺口图片还原 声明 一.缺口图片还原js分析 1. 为什么需要还原 2. 本篇文章需要用到的小工具 2.1. reres插件 3. 找到图片还原js入口函数 3.1. ...

  7. thinkphp整合极验滑动验证码源码演示下载

    thinkphp整合极验滑动验证码源码演示下载-二当家的php源码下载 <!DOCTYPE html><html lang="en"><head> ...

  8. ThinkPHP5实现极验滑动验证码geetest功能

    现在很多网站,比如淘宝,京东等都改用使用极验拖动验证码实现登录,这种方式比传统的验证码方式有更好的体验,减少用户输入的错误,也同样能起到防盗刷的功能.现在很多极验都是第三方的,也很多都是收费的.这里主 ...

  9. BiliBili等网站极验滑动验证码的详细破解过程

    基于selenium自动化的滑动验证码破解 selenium python 验证码 1.环境配置(Linux) python2.7 pip安装的库:selenium , PIL Chrome浏览器 , ...

最新文章

  1. 基于wayland的linux桌面,揭开Wayland的面纱(二):Wayland应运而生
  2. 如何修改xd.properties文件中对象存储文件信息_对块存储、文件存储、对象存储的认识总结...
  3. python绘制三维曲面图-Python中使用Matplotlib绘制3D图形示例
  4. ue linux转dos格式,uestudio中如何把dos格式转为unix
  5. 卷积神经网络minst的verilog实现
  6. 电脑QQ能登上,网页打不开的解决办法
  7. 荣耀v40可以升级华为鸿蒙,网传荣耀V40机型也能升级鸿蒙OS 首批更新机型有望是这5款...
  8. 大数据学习笔记08:Java程序访问HDFS
  9. Python 字符串语法,for
  10. SpringCloud工作笔记041---com.fasterxml.jackson.databind.ObjectMapper的使用
  11. 解锁新招:冷冻手机窃密数据
  12. 《企业架构的数字化转型》10000字有感
  13. flashfxp安装,8步完成flashfxp安装
  14. operands could not be broadcast together with shapes
  15. 太湖之光超级计算机应用最高奖,“神威·太湖之光”两项应用入围“戈登·贝尔”奖...
  16. 自己设置假期的日历控件_在假期旅行时使用PC娱乐自己
  17. 如何用JAVA写acm_用java来写ACM
  18. Xxl-Job 初次体验
  19. RESTful API接口设计标准及规范;
  20. H3C交换机与cisco交换机对接配置案例和注意事项

热门文章

  1. HLS playlist典型示例
  2. FFmpeg的H.264解码器源代码简单分析:宏块解码(Decode)部分-帧内宏块(Intra)
  3. 存数据返回他的序列号id_雪花般的分布式唯一ID雪花算法
  4. JavaScript Math.random()随机数函数
  5. idea项目(git)版本回退
  6. Tomcat如何配置X-Frame-Options头
  7. Windows 下80端口被进程 System PID=4 占用的解决方法
  8. 【CCCC】L3-015 球队“食物链” (30分),搜索排列
  9. 路由器Lan、Wan短接问题
  10. c语言二维数组错误语法,关于c语言动态分配二维数组free的错误求dalao看看怎么回事谢谢啊~~~~...