• 小红书数美滑块验证码


      因为业务需求接触到数美的滑块验证码,上网百度了一下,有相关的解决方法,参考的链接https://blog.csdn.net/weixin_43582101/article/details/112553479,但是数美的代码已经更新了所以部分代码不用了,根据文章的流程,就自己摸索了一下,而且目前的代码没有进行混淆,分析起来比较简单。

      首先文章里面的验证码申请、验证码注册、计算滑块位置都是可以用的,所以需要更新的地方是构造验证码验证的请求参数。官网的链接https://www.ishumei.com/trial/captcha.html

      构造验证请求的参数的代码在https://castatic.fengkongcloud.com/pr/auto-build/v1.0.3-146/captcha-sdk.min.js这一个链接里面,直接通过关键词定位就可以找到参数构造的地方。

      

      

       getEncryptContent这个是des加密,第一个参数是加密的内容,后面是密钥。

      

       下面就是找出每个参数是怎么构造的。有很多参数是没有经过加密的,可以直接构造,

      'organization': 平台的标识,
      'rid': 第一次请求的conf链接会返回,
      'rversion': 版本号,
      'sdkver': 版本号,
      'protocol': js的url有,
      'ostype': 平台,
      'callback': 'sm_'+时间戳,
      'act.os': 平台,

      其他加密的参数可以通过打断点找到加密的内容。

      

       这样就很好理解了。

      

      it,滑块最后的位置 / 展示的图片宽度,然后des加密

      sr,滑动轨迹,然后加密

      hl,结束时间 - 开始时间,然后加密(本人的滑动时间一般是在400毫秒到800毫秒之间,所以直接随机一个数)

      wi,展示的图片宽度,然后加密

      qy,展示的图片高度,然后加密

      

       cl,kf,zt分别是1,0, -1,然后加密。

      

       de,cx,xq分别是‘default’,‘DEFAULT’,‘zh-cn‘,然后加密。

      那么所有参数都构造出来了,带着参数请求就可以了,另外要注意的是距离是参考的代码是原图大小的距离,需要缩放成展示图片大小的距离,每个使用的平台的展示图片大小可能也不一致,所以要根据实际情况来调整大小。

  • 相关阅读:
    软件工程系统开发课堂测试01
    java--printf
    java--局部类只能访问外包方法的final局部成员
    java--内部类实现“类的多重继承”
    java--内部类
    【转】java--final
    java--实例成员 & 静态成员
    java--方法和成员的继承,访问
    Java--格式化输出
    HDOJ 1005
  • 原文地址:https://www.cnblogs.com/liwill/p/15340203.html
Copyright © 2020-2023  润新知