【2023-02-20】JS逆向之翼支付
提示:文章仅供参考,禁止用于非法途径
文章目录
- 前言
- 分析
- 总结
前言
真的好久没更了……
提示:以下是本篇文章正文内容,下面案例可供参考
分析
进到网页,加载两个接口

applyLoginFactor 接口返回一个RSA公钥,switchForApolloForH5接口使用上个接口返回的公钥,有点类似注册公钥的意思,但是后面的接口却没用到
第二个接口有三个加密的,下断点就很容易找到


这个rk是个随机值

erk是对rk进行rsa加密,edata是对params,原始提交数据的AES加密,最后的sign是对原始提交数据的MD5一下,返回下面的就是ok了

然后随便输个手机号,会出来易盾的滑块,也是简单的,他不校验actoken,这里就不叙述滑块了

过了滑块后会请求三个接口,第一个获取公钥,也可以叫服务器公钥

第二个接口返回的数据是加密过的

提交的数据也有一个加密

加密位置在这里,但是这个里的 PublicKey 不是之前返回的,是要重新获取的客户端PublicKey

返回的公钥密钥,都会使用到

state.clientKey = _this2.clientRsaKeyUpload();
var params = {openId: openId,clientRsaPublicKey: state.clientKey.clientRsaPublicKey //这里是客户端公钥
};
var RSAUtils = new JSEncrypt();
state.serverRsaPublicKey = res.result; // 这里是服务器公钥
RSAUtils.setPublicKey(res.result);
var encData = RSAUtils.encrypt(JSON.stringify(params));
返回的数据是加密的,需要解密
var _RSAUtils2 = new JSEncrypt();_RSAUtils2.setPrivateKey(state.clientKey.clientRsaPrivateKey);//这里用的客户端私钥var data = JSON.parse(_RSAUtils2.decryptLong(res.result)); // 去解密接口返回的数据
{'aesKey': 'f3d219b220214b3b8d3751ab42bb129e', 'clientRsaPublicKeySign': '9VJ71Qq8Ifa3a/IEhFyFOKxt7DSLRh0lSlUe5zsFa8tZfgDcr+UaSRRn7SY2rjiAj2Za+2M+cX129sXnMHJexnv/Oizb6m6ntOBtNPN4b3Wh6RBmFRW7Jnm5kokLTNN+/B2oPfUqaMIgkeGKmrMj3N8wceQ50ks73O5nrXGs5t2uAtTxXRszbLjiEZP3FjxqIv36usCbYv2GVanEJo800ENM7MbYAuzZyyytxrp+RH8j3wdbsT77aigaA1sJtREJ6ju4P459QsLIBieITiEy5AjzbNC2qNvREOGDBfDht7Kop+V0LieiLAS0shByc8XFDHXCGcZy1dhFz7kNEiMrYx5r3f2Ue9IZfbc/9RyaR9wGx0scLdJ1WwTKH0szRGtY1ME4JGMgLyhduPUfL+rs4gice2gTkh3haaegynTBenO5FroOl6bg8G+PM61e0BJZeIpuxK8AQzhnFhAeUqGnRIu9FKZhyLvxuuXJ/S7ypa3JUL+y1hO3hla4THLFWBNm0YIe2JqtOpJNkhWF6aKosZbHCxbZV/CcRrlazw7KJg/mhPlB9MuA6Z3bLWfqgRgg88A+r9azOAzdFcaxVs38KzSl0Gw3RpfmuqJC+Mn8NbKT/RCLGb0BXEBJKc43JpWGr67JRik7M/G/8Bx83tscwLmbWTyM+iOfwO1bImKdxKg='
}
拿到了这个aesKey,最后请求发送短信的接口

加密都是现成的,直接扣就完事
state.aesKey = data.aesKey;
GibberishAES.size(256);var _encData = GibberishAES.aesEncrypt(text, state.aesKey);//aes加密提交的数据_RSAUtils.setPrivateKey(state.clientKey.clientRsaPrivateKey);var aesKeySign = _RSAUtils.sign(state.aesKey, CryptoJS.SHA512, 'sha512'); //sha512加密aeskey

总结
滑块

获取验证码

相关文章:
【2023-02-20】JS逆向之翼支付
提示:文章仅供参考,禁止用于非法途径 文章目录前言分析总结前言 真的好久没更了…… 提示:以下是本篇文章正文内容,下面案例可供参考 分析 进到网页,加载两个接口 applyLoginFactor 接口返回一个RSA公钥࿰…...
假如面试官问你Babel的原理该怎么回答
1. 什么是 Babel 简单地说,Babel 能够转译 ECMAScript 2015 的代码,使它在旧的浏览器或者环境中也能够运行。 // es2015 的 const 和 arrow function const add (a, b) > a b;// Babel 转译后 var add function add(a, b) {return a b; };Babel…...
深入Spring底层透析Bean创建过程之拨云见日篇
目录前言一.BeanFactory快速入门1. BeanFactory创建Bean2. BeanFactory和ApplicationContext的关系3. 和ApplicationContext区别(高频问点)4. BeanFactory的继承体系5. ApplicationContext的继承体系二.Bean实例化的基本流程(重点)前言 首先感谢您的阅览࿰…...
8 狗监控的封装
概述 为了保证嵌入式程序能够长时间稳定地运行,需要加入狗监控机制。狗监控的原理为:应用程序需要每隔一段时间来喂狗或保活,如果应用程序崩溃或者内核崩溃,导致长时间无法喂狗,则狗将超时,会自动重启系统。部分IPC芯片提供了硬件狗,对于没有硬件狗的,需要自行实现软件…...
基于卷积神经网络图像风格迁移系统的设计与实现(flask系统)
1.摘要 Leon Gatys 等人研发的深度神经网络使用神经的表达来分离任意图片的内容和风格,为生成艺术图片提供一个神经算法。本文基于Style Transfer算法,使用风格成本函数训练CNN,用卷积神经网络提取图像特征,依次提取内容图像的内…...
【1】linux命令每日分享——mkdir
大家好,这里是sdust-vrlab,Linux是一种免费使用和自由传播的类UNIX操作系统,Linux的基本思想有两点:一切都是文件;每个文件都有确定的用途;linux涉及到IT行业的方方面面,在我们日常的学习中&…...
实例2:树莓派GPIO控制外部LED灯闪烁
实例2:树莓派GPIO控制外部LED灯闪烁 实验目的 通过背景知识学习,了解四足机器人mini pupper搭载的微型控制计算机:树莓派。通过树莓派GPIO操作的学习,熟悉GPIO的读写控制。通过外部LED灯的亮灭控制,熟悉树莓派对外界…...
详解可变形注意力模块(Deformable Attention Module)
Deformable Attention(可变形注意力)首先在2020年10月初商汤研究院的《Deformable DETR: Deformable Transformers for End-to-End Object Detection》论文中提出,在2022CVPR中《Vision Transformer with Deformable Attention》提出应用了De…...
Java数据结构中链表分割及链表排序使用快速排序、归并排序、集合排序、迭代、递归,刷题的重点总结
本篇主要介绍在单链表进行分割,单链表进行分隔并使用快速排序、归并排序、集合排序、迭代、递归等方法的总结,愿各位大佬喜欢~~ 86. 分隔链表 - 力扣(LeetCode) 148. 排序链表 - 力扣(LeetCode) 目录 一…...
音视频基础之音频编码原理简介
一:隐蔽信号 数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽。例如,一套双声道数字音频若取样频率为44.1KHz,每样值按16bit量化,则其码率为: 244.1kHz16bit1.411Mbit/s 如此大的带宽将给信号…...
【Python--XML文件读写】XML文件读写详解
【Python–XML文件读写】XML文件读写详解 文章目录【Python--XML文件读写】XML文件读写详解1. 前言1.1 介绍1.2 用法2. xml文件内容形式3. xml文件读写3.1 项目框架3.1 写入操作(创建)(create_xml.py)3.2 读取操作(解析…...
GNU make 中文手册 第一二章 概述与介绍
一、第一章:概述 准备知识 在开始我们关于 make 的讨论之前,首先需要明确一些基本概念: 编译:把高级语言书写的代码,转换为机器可识别的机器指令。编译高级语言后生成的指令虽然可被机器识别,但是还不能…...
真的了解HashMap、HashSet吗?做一道测试题试试!
本人博客《HashMap、HashSet底层原理分析》,可以了解hashmap的底层源码实现 测试代码 HashSet底层实际就是一个Hashmap。猜猜下面源码每一个打印结果。 注:user对象重写的hashcode方法,保证name和age一样的情况下hashcode是一样的ÿ…...
树莓派下安装OpenEuler
openEuler作为华为开源的应用于嵌入式设备的操作系统,正在受到越来越多的关注。树莓派是一个很好的应用场景,这篇文章就介绍下如何在树莓派上安装openEuler。 ps:openEuler要求树莓派的版本是4B 1.下载openEuler镜像 镜像网址࿱…...
VSCode Remote-SSH配置免密登录踩坑
VSCode Remote-SSH配置免密登录踩坑1. 参考2. 基本流程2.1 机器A(Windows客户端)2.2 机器B(Linux服务器)2.3 机器A(Windows客户端)的VSCode设置3. 踩坑总结相关教程很多,但要么冗余,…...
【Python语言基础】——Python NumPy 数组拆分
Python语言基础——Python NumPy 数组拆分 文章目录 Python语言基础——Python NumPy 数组拆分一、Python NumPy 数组拆分一、Python NumPy 数组拆分 拆分 NumPy 数组 拆分是连接的反向操作。 连接(Joining)是将多个数组合并为一个,拆分(Spliting)将一个数组拆分为多个。…...
虹科资讯| 虹科AR荣获汽车后市场“20佳”维修工具评委会提名奖!
2022 虹科荣获20佳维修工具 评委会提名奖 特大喜讯,在2月16日《汽车维修与保养》杂志主办的第十八届汽车后市场“20佳”评选活动中,虹科的产品“M400智能AR眼镜”凭借在AR领域的专业实力,通过层层筛选,在102款入围产品中脱颖而出…...
Mysql架构与内部模块
Mysql架构与内部模块 演示环境: MySQL 5.7 存储引擎:InnoDB 一、一条查询SQL是如何执行的? 程序或者工具要操作数据库,第一步跟数据库建立连接。 1、通信协议 首先,MySQL 必须要运行一个服务,监听默认的…...
从技术上来看,互联网技术开始衍生和蜕变出更多的新技术
很多人在看待产业互联网的问题上,一味地割裂它与互联网之间的联系,甚至还有人将产业互联网看成是对于传统互联网的颠覆。如果仅仅只是以这样的眼光来看待产业互联网,那么,他们势必是无法完整把握产业互联网的本质内涵和原始奥义的…...
最长不含重复字符的子字符串
今天处理一道算法题目,《剑指Offer》第48题,力扣中等题。 这道题也是面试的高频题! 题目描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 示例1: 输入: "abcabcbb" …...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
