当前位置: 首页 > news >正文

南方航空阿里v2滑块验证码逆向分析思路学习

目录

一、声明!       

二、介绍

三、请求流程分析:

        1.拿验证码

        2.提交第一次设备信息

        3.提交第二次设备信息

        4.提交验证                     ​编辑

四、接口响应数据分析:

        1.拿验证码

        2.提交第一次设备信息

        3.提交第二次设备信息

        4.提交验证

五、接口参数分析:

        1.拿验证码

        2.提交第一次设备信息

        3.提交第二次设备信息

        4.提交验证

六、加密参数位置分析:

        1.SignatureNonce、Signature

        2.Data

七、结果展示


一、声明!       

原创文章,请勿转载!

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

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

二、介绍

        阿里v2验证码是阿里云推出的新一代验证码产品,广泛地应用在账号注册、短信发送、票务预订、信息查询、免费下载、论坛发帖、在线投票等交互模块,通过简单、安全、多样的交互逻辑,提供区分机器脚本和自然人的验证服务,能够缓解及防止计算机程序模拟人类用户来滥用网络资源,在提升网站资源不被恶意程序访问的防御能力的同时,保持真实的用户体验。

        当前文章中的验证码如下:

                                

        验证码业务流程:

三、请求流程分析:

        1.拿验证码

        2.提交第一次设备信息

        

        3.提交第二次设备信息

        4.提交验证                     

四、接口响应数据分析:

        1.拿验证码

                (1)CeryifyId和DeviceConfig为校验接口需要的参数。

                (2)Code为Success说明我们验证码获取成功。

        

        2.提交第一次设备信息

                (1)Code为200说设备信息提交成功

                                

        3.提交第二次设备信息

                (1)Code为200说明设备信息提交成功。

                                

        4.提交验证

                (1)VerifyCode为"F001"说明我们传递的参数错误了。

                

                (2)VerifyCode为"T001"就表示验证码校验通过。

                

五、接口参数分析:

        1.拿验证码

                (1)固定参数:UserUserId、UserId、DeviceData

                                

                (2)动态参数:Timestamp、SignatureNonce、Signature

                        

        2.提交第一次设备信息

                (1)动态参数:Data、SignatureNonce、Signature

        3.提交第二次设备信息

                (1)动态参数:Data、SignatureNonce、Signature

        4.提交验证

                (1)动态参数:Timestamp、CertifyId、CaptchaVerifyParam、SignatureNonce、Signature

六、加密参数位置分析:

        1.SignatureNonce、Signature

                (1)SignatureNonce          

                (2)Signature就在下一行

                        

        2.Data

                (1)生成位置17781行(js会更新,搜索比较固定的代码就可以找到),在这边Data

生成后不久,慢慢跟栈就到其他参数的生成位置了。                

                (2)赋值位置

                        

        (3)主要:这个data生成主要是由轨迹生成的,所以轨迹也需要处理。

        

七、结果展示

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

学习交流QQ:450297392

相关文章:

  • JVM 内存中方法出入栈原理
  • 油猴Safari浏览器插件:Tampermonkey for Mac 下载
  • 修复harbor的/account/sign-in\?globalSearch=b不登录可以查询镜像的问题
  • vue3 滚动条滑动到元素位置时,元素加载
  • Linux——命令执行原理,命令别名
  • LVS FILTER UNUSED OPTION
  • 【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第42课-多人联机-实时互动
  • 成人高考本科何时报名-深职训学校帮您规划学习之路
  • 用Python读取Word文件并提取标题
  • Mqtt Client客户端重连时,清空订阅的主题
  • Django + Vue 实现图片上传功能的全流程配置与详细操作指南
  • Java数据结构-树的面试题
  • android perfetto使用技巧梳理
  • 23种设计模式之装饰者模式
  • java如何删除字符串内部分字符
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • conda常用的命令
  • css的样式优先级
  • es的写入过程
  • HTTP请求重发
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • Odoo domain写法及运用
  • ReactNative开发常用的三方模块
  • SAP云平台里Global Account和Sub Account的关系
  • Spring-boot 启动时碰到的错误
  • ubuntu 下nginx安装 并支持https协议
  • windows下如何用phpstorm同步测试服务器
  • 不上全站https的网站你们就等着被恶心死吧
  • 当SetTimeout遇到了字符串
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 翻译--Thinking in React
  • 工作手记之html2canvas使用概述
  • 每天10道Java面试题,跟我走,offer有!
  • 前端面试题总结
  • 让你的分享飞起来——极光推出社会化分享组件
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 深入浏览器事件循环的本质
  • 思考 CSS 架构
  • 一些关于Rust在2019年的思考
  • 在weex里面使用chart图表
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • No resource identifier found for attribute,RxJava之zip操作符
  • 移动端高清、多屏适配方案
  • ​渐进式Web应用PWA的未来
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (12)Hive调优——count distinct去重优化
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (ZT)出版业改革:该死的死,该生的生
  • (分布式缓存)Redis哨兵
  • (三)Honghu Cloud云架构一定时调度平台
  • (三)Kafka 监控之 Streams 监控(Streams Monitoring)和其他
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (算法)N皇后问题
  • (转)负载均衡,回话保持,cookie
  • .java 9 找不到符号_java找不到符号