欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > 某虎牙验证码

某虎牙验证码

2024/10/25 17:28:38 来源:https://blog.csdn.net/mamenqi_csdn/article/details/141932483  浏览:    关键词:某虎牙验证码

⚠️前言⚠️

本文仅用于学术交流。
学习探讨逆向知识,欢迎私信共享学习心得。
如有侵权,联系博主删除。
请勿商用,否则后果自负。

网址

aHR0cHM6Ly93d3cuaHV5YS5jb20v
在这里插入图片描述

1. 浅聊一下:验证码加载及验证流程

1_1. 接口 /web/df/token,响应得到 token 和 encryptSeed

在这里插入图片描述
在这里插入图片描述

1_2. 接口 /web/df/collect
  • 参数 encryptWebDeviceFeature 加密得到
  • 参数 token上述接口中返回
  • 响应内容 sdid 也就是 下面接口中需要的参数 info
    在这里插入图片描述

在这里插入图片描述

1_3. /web/v2/passwordLogin
  • 参数 sdid:collect 接口中返回
  • 参数 behavior:可动态切换其中的时间戳
  • 其他参数经测试可固定
  • 响应: 可从 data 中 匹配出 下面接口中需要的参数 param
    在这里插入图片描述 在这里插入图片描述
1_4. /auth/client/config3
  • 参数 info 、param 上述接口中已得到
  • 响应: 验证码信息接口链接、验证接口链接、解密key、动态js
    在这里插入图片描述
    在这里插入图片描述
1_5. /get3 验证码信息链接
  • 参数 info 、param 上述接口中已得到
    在这里插入图片描述

在这里插入图片描述

1_6. /verify3 验证链接
  • 参数 info 、param 上述接口中已得到

  • 参数 act:加密轨迹
    在这里插入图片描述

  • 验证结果1:验证成功
    在这里插入图片描述

  • 验证结果2:验证失败
    在这里插入图片描述

2. 加密参数生成

2_1. encryptWebDeviceFeature

2_1_1. 加密 位置,老方法

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2_1_2. 加密逻辑分析
  • aes 加密
  • 参数 e 环境信息
  • key: token接口返回的 encryptSeed
    在这里插入图片描述

2_2. 底图还原

在这里插入图片描述

2_2_1. cavas 断点,找一下还原底图的位置
  • 就是这里了,a.splitSeq 就是底图的还原序列,e.drawImage 方法用于还原填充canvas
    在这里插入图片描述
2_2_2. 还原序列生成
  • 就是这里了
  • t.segment 就是验证码信息信息接口中返回的原始序列 segment
  • this.respConfig.key 为 config3 接口返回的 key
    在这里插入图片描述
  • 主要来看一下 window.UdbCipher.decrypt 方法
  • 进入该方法会进入一段 VM 代码中,该 js 代码其实就是 config3 接口中返回的动态js,我们动态执行调用即可
    在这里插入图片描述
2_2_3. 有了还原序列,就可以根据js逻辑还原底图了

在这里插入图片描述

2_3. 加密轨迹 act

2_3_1. act 生成位置,首先ajax断点断住,然后全局检索 act:,找到如下位置

在这里插入图片描述

2_3_2. this.encryptData 方法

在这里插入图片描述

  • a 就是对参数,做一些转化,最后base64的结果
  • this.huyapk 信息接口返回 huyapk
  • window.UdbCipher.encrypt:依然是 VM 代码中的方法,动态执行js即可调用
    在这里插入图片描述
2_3_3. 加密方法搞明白之后,我们来看一下参数

在这里插入图片描述

  • this.slideBlockLeft 生成,如下位置插桩,滑动滑块
  • 可以看出 t 的初始值为 24,滑动距离 为 61,另外两个是固定值,按照固定方式计算出值即可
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • travel 值,起始点和鼠标点击的位置有关
  • 通过和上述日志信息对比,就可以模拟轨迹了
    在这里插入图片描述
  • code值: 验证码信息接口中返回的code的值
  • sceneType值固定、endTime 时间差动态生成即可

3. 结果验证

在这里插入图片描述

验证码加密并不难,就是流程有点繁琐,欢迎私信交流…

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com