南方航空阿里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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/866901.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录第43天|动态规划

121. 买卖股票的最佳时机 股票只能被买卖一次 dp[i][0] 持有股票所得到的最大现金, dp[i][1] 不持有股票所得的最大现金, 避免定义多个变量递推公式: dp[i][0] 可能是在之前买入, 也可能是在这次被买入 max(dp[i - 1][0],-prices[i])dp[i][1] 可能是在本次抛售, 也可能在之…

误删分区后的数据拯救:双管齐下恢复策略

在数字化时代,数据的价值日益凸显,而误删分区作为常见的数据安全威胁之一,常常让用户措手不及。本文将深入探讨误删分区的现象,并为您揭示两种高效的数据恢复方案,旨在帮助您在最短时间内找回失去的数据,同…

RH850系列芯片深度剖析 1.8-内存管理之MPU

RH850系列芯片深度剖析 1.8-内存管理之MPU 文章目录 RH850系列芯片深度剖析 1.8-内存管理之MPU一、MPU简介1.1 功能特性1.2 系统保护标识符(SPID)二、保护区域设置2.1 保护区域属性设置2.2 保护区域设置注意事项2.2.1 跨越保护区域边界2.2.2 无效的保护区域设置2.2.3 保护违规…

当火热的Mamba遇到火热的YOLO,会发生怎么样的反应吗?

作者:浙江师范大学 论文地址:https://arxiv.org/pdf/2406.05835 代码地址:https://github.com/HZAI-ZJNU/Mamba-YOLO 目录 前言一、摘要二、介绍二、相关工作2.1 实时目标检测器2.2 端到端的目标检测器2.3 视觉状态空间模型 三 方法3.1 基础知…

Amesim应用篇-信号传递

前言 在Amesim中常见的信号传递是通过信号线连接,针对简单的模型通过信号线连接还可以是信号线清晰规整,方便查看。如果模型较复杂,传递信号的元件较多时,此时再继续使用信号线进行信号传递,可能会使草图界面看起来杂…

Leetcode - 周赛403

目录 一,3200. 三角形的最大高度 二,3195. 包含所有 1 的最小矩形面积 I 三,3196. 最大化子数组的总成本 四,3197. 包含所有 1 的最小矩形面积 II 一,3200. 三角形的最大高度 本题是一道模拟题,可以先排…

【Leetcode笔记】406.根据身高重建队列

文章目录 1. 题目要求2.解题思路 注意3.ACM模式代码 1. 题目要求 2.解题思路 首先,按照每个人的身高属性(即people[i][0])来排队,顺序是从大到小降序排列,如果遇到同身高的,按照另一个属性(即p…

分享超级实用的3款AI工具,让工作效率轻松翻倍

Hey,职场小伙伴们!每天被堆积如山的工作压得喘不过气?加班成了日常,效率却不见提高?别急,今天就让我来给你们揭秘3款AI神器,它们将是你职场上的得力助手,让你的工作效率轻松翻倍&…

AR视频技术与EasyDSS流媒体视频管理平台:打造沉浸式视频体验

随着增强现实(AR)技术的飞速发展,其在各个领域的应用日益广泛。这项技术通过实时计算摄影机影像的位置及角度,将虚拟信息叠加到真实世界中,为用户带来超越现实的感官体验。AR视频技术不仅极大地丰富了我们的视觉体验&a…

阶段总结——基于深度学习的三叶青图像识别

阶段总结——基于深度学习的三叶青图像识别 文章目录 一、计算机视觉图像分类系统设计二、训练模型2.1. 构建数据集2.2. 网络模型选择2.3. 图像数据增强与调参2.4. 部署模型到web端2.5. 开发图像识别小程序 三、实验结果3.1. 模型训练3.2. 模型部署 四、讨论五、参考文献&#…

Linux wget报未找到命令

wget报未找到命令需要安装wget 1、下载wget安装文件,本次于华为云资源镜像下载 地址:https://mirrors.huaweicloud.com/centos-vault/7.8.2003/os/x86_64/Packages/ 2、下载后上传到安装服务器/install_package,执行命令安装 rpm -ivh /i…

联合概率密度函数

目录 1. 什么是概率密度由联合概率密度求概率参考链接 1. 什么是概率密度 概率密度到底在表达什么? 外卖在20-40分钟内送达的概率 随机变量落在[20,40]之间的概率。下图中,对总面积做规范化处理,令总面积1, f ( x ) f(x) f(x)则成…

用requirements.txt配置环境

1. 在anaconda创建环境 创建Python版本为3.8的环境,与yolov5所需的包适配。 2. 在Anaconda Prompt中激活环境 (base) C:\Users\吴伊晴>conda activate yolov5 3. 配置环境 用指定路径中的requirements.txt配置环境。 (yolov5) C:\Users\吴伊晴>pip insta…

格式化代码 | 美化JSON、SQL

一、格式化JSON数据 打开Postman,将json数据粘到里面,点击Beautify即可美化代码。 二、格式化SQL 打开Navicat,新建查询,将sql粘进去点击”美化sql“即可。 三、浏览器 在线格式化 使用浏览器上的在线格式化网址。例如&…

使用ChatGPT写论文,只需四步突破论文写作瓶颈!

欢迎关注,为大家带来最酷最有效的智能AI学术科研写作攻略。关于使用ChatGPT等AI学术科研的相关问题可以和作者七哥(yida985)交流 地表最强大的高级学术AI专业版已经开放,拥有全球领先的GPT学术科研应用,有兴趣的朋友可…

滑动窗口(C++)

文章目录 1、长度最小的子数组2、无重复字符的最长子串3、最大连续1的个数 Ⅲ4、将x减到0的最小操作数5、水果成篮6、找到字符串中所有字母异位词7、串联所有单词的子串8、最小覆盖子串 通常,算法的主体说明会放在第一道题中。但实际上,不通常。 算法在代…

gradle构建工具

setting.gradle // settings.gradle rootProject.name my-project // 指定根项目名称include subproject1, subproject2 // 指定子项目名称,可选jar包名称 方式一 jar {archiveBaseName my-application // 设置 JAR 文件的基本名称archiveVersion 1.0 // 设置…

重载赋值运算符

c编译器可能会给类添加四个函数 1默认构造函数 2默认析构函数 3默认拷贝构造函数&#xff0c;对成员变量进行浅拷贝。 4默认赋值函数&#xff0c;队成员变量进行浅拷贝。 #include<iostream> using namespace std; class CGirl { public:int m_bh;string m_name;voi…

【VUE基础】VUE3第三节—核心语法之computed、watch、watcheffect

computed 接受一个 getter 函数&#xff0c;返回一个只读的响应式 ref 对象。该 ref 通过 .value 暴露 getter 函数的返回值。它也可以接受一个带有 get 和 set 函数的对象来创建一个可写的 ref 对象。 创建一个只读的计算属性 ref&#xff1a; <template><div cl…

3033.力扣每日一题7/5 Java

博客主页&#xff1a;音符犹如代码系列专栏&#xff1a;算法练习关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ 目录 思路 解题方法 时间复杂度 空间复杂度 Code 思路 首先创建一个与…