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

requests,js逆向练习

 自上而下排除jquery源码,点进去utils

发现第一次请求是getTime

 

 

 再次运行此断点才是登录,这个时候密码已经被加密了 

 

查看上级js页面,发现加密函数

 

 

进去看函数加密过程 

 

 得到结果RSA

 

python代码 

import base64
import jsonimport requests
from fake_useragent import UserAgent
from Crypto.Cipher import PKCS1_v1_5
from Crypto.PublicKey import RSAfrom spider_WE.utils.tujian import crack_code_img_b64username = '账号'
password = '密码'
headers = {'User-Agent': UserAgent().random,'Content-Type': 'application/json; charset=utf-8'
}
# 1.进入登录页->加载cookie
session = requests.session()
resp = session.get('https://user.wangxiao.cn/login')# 2.获取验证码->打码平台
verify_code_url = 'https://user.wangxiao.cn/apis//common/getImageCaptcha'
verify_resp = session.post(verify_code_url, headers=headers)
verify_data = verify_resp.json()
verify_b64_img = verify_data['data'].split('base64,')[-1]
verify_code = crack_code_img_b64(verify_b64_img, 3)# 3.把密码加密
get_time_url = 'https://user.wangxiao.cn/apis//common/getTime'
get_time_resp = session.post(get_time_url, headers=headers)
get_time_data = get_time_resp.json()['data']
pwd = password + str(get_time_data)
pub_key = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDA5Zq6ZdH/' \'RMSvC8WKhp5gj6Ue4Lqjo0Q2PnyGbSkTlYku0HtVzbh3S9F9oHbxeO55E8tEEQ5wj/' \'+52VMLavcuwkDypG66N6c1z0Fo2HgxV3e0tqt1wyNtmbwg7ruIYmFM+dErIpTiLRDvOy+0vgPcBVDfSUHwUSgUtIkyC47UNQIDAQAB'
rsa_key = RSA.import_key(base64.b64decode(pub_key))
# 加密
rsa = PKCS1_v1_5.new(rsa_key)
crypto = rsa.encrypt(pwd.encode('utf-8'))
crypto_pwd = base64.b64encode(crypto).decode('utf-8')# 4.登录
login_url = 'https://user.wangxiao.cn/apis//login/passwordLogin'
login_data = {'imageCaptchaCode': verify_code,'password': crypto_pwd,'userName': username
}
login_resp = session.post(login_url, data=json.dumps(login_data), headers=headers)
login_info = login_resp.json()['data']# 5.对登录后的cookie信息进行整理
cookie_dic = {"autoLogin": "null","OldPassword": login_info['passwordCookies'],"OldPassword_": login_info['passwordCookies'],"OldUsername": login_info['userNameCookies'],"OldUsername_": login_info['userNameCookies'],"OldUsername2": login_info['userNameCookies'],"OldUsername2_": login_info['userNameCookies'],f"{login_info['userName']}_exam": login_info['sign'],"token": login_info['token'],"UserCookieName": login_info['userName'],"UserCookieName_": login_info['userName'],"userInfo": login_info,"sessionId": session.cookies.get("sessionId")
}

相关文章:

requests,js逆向练习

自上而下排除jquery源码,点进去utils 发现第一次请求是getTime 再次运行此断点才是登录,这个时候密码已经被加密了 查看上级js页面,发现加密函数 进去看函数加密过程 得到结果RSA python代码 import base64 import jsonimport requests f…...

Chrome 插件调试

http://blog.haoji.me/chrome-plugin-develop.html#te-bie-zhu-yi-background-de-bao-cuo 手把手:Chrome浏览器开发系列(四):调试我们开发的插件 - 掘金...

云轴科技ZStack成为交通运输业上云用云推进中心首批成员单位

近日,中国信息通信研究院、中国交通运输协会信息专业委员会联合发起成立“交通运输业上云用云推进中心”,上海云轴信息科技有限公司(简称云轴科技ZStack)凭借优秀的产品技术创新能力和在交通运输领域的实践经验成为首批成员单位并…...

代码随想录算法训练营31期day4,力扣24+19+02.07+142

24,动指针 class Solution { public:ListNode* swapPairs(ListNode* head) {//建立虚拟头结点auto dummynew ListNode(-1);dummy->nexthead;for(auto pdummy;p->next&&p->next->next;){auto ap->next;auto ba->next;p->nextb;a->n…...

eNSP学习——利用单臂路由实现VLAN间路由

目录 原理概述 实验内容 实验目的 实验步骤 实验拓扑 实验编址 配置步骤 创建VLAN并配置Access、Trunk接口 配置路由器子接口和IP地址 配置路由器子接口封装VLAN 测试结果 原理概述 在以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响&#…...

ISO27001认证:企业与个人发展的必备之选

ISO27001认证,对于企业和个人来说,都具有极高的价值和重要性。作为国际权威的信息安全管理体系标准,它为企业提供了保障信息安全、防范风险和提升竞争力的有力工具。 💼对企业的价值: ISO27001认证可以帮助企业满足国家…...

SpringBoot使用druid

SpringBoot使用druid 一、前言二、配置1、pom依赖2、配置文件yml3、配置类 一、前言 Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。 Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C…...

TongWeb8交流常见问答集

问题1:今后用到你们TongWeb产品该联系谁? 答复: 1. 商务问题,如:报价、license授权、合同等请联系销售。 2. TongWeb技术问题,未签项目联系售前,已签项目联系售后。有指定项目经理的项目&…...

GBASE南大通用分享-mysql中的load data infile用法

GBASE南大通用分享 mysql中的load data infile用法 LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE file_name.txt [REPLACE | IGNORE] INTO TABLE tbl_name [FIELDS [TERMINATED BY \t] [OPTIONALLY] ENCLOSED BY ] [ESCAPED BY \\ ]] [LINES TERMINATED BY \n] [IGNORE number L…...

Ubuntu18编译jdk8源码

环境 系统 ubuntu18 Linux ubuntu 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux jdk源码openjdk-8u41-src-b04-14_jan_2020.zip bootJdk jdk-8u391-linux-x64.tar.gz ps -e|grep ssh sudo apt-get install ssh…...

《开始使用PyQT》 第01章 PyQT入门 02 安装Python3和PyQT6

02 安装Python3和PyQT6 《开始使用PyQT》 第01章 PyQT入门 02 安装Python3和PyQT6 So that all readers are on the same page, let’s begin by installing or updating your version of Python. 为了让所有读者都能理解,让我们从安装或更新 Python 版本开始。 …...

Java集合-Map接口(key-value)

Map接口的特点:①KV键值对方式存储②Key键唯一,Value允许重复③无序。 Map有四个实现类:1.HashMap类2.LinkedHashMap类3.TreeMap类4.Hashtable类 1.HashMap类: 存储结构:哈希表 数组Node[ ] 链表(红黑…...

【操作系统】实验九 写一个设备驱动程序

🕺作者: 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux 😘欢迎关注:👍点赞🙌收藏✍️留言 🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要&…...

基于密码技术的身份认证——基于对称密码体制的身份认证

一、符号说明: A→B:表示通信实体A向通信实体B发送消息; Ek(x):表示用认证双方共享的密钥K对x进行加密; Text1,Text2,……,Text n属于可选项; ||:表示比特…...

算法36:单调栈结构、子数组最小乘积的最大值问题(力扣1586)----单调栈

单调栈:就是在栈中实现数据的单调性。即从栈底到栈顶,要么递增,要么递减。 那么,使用单调栈,可以解决什么问题呢? 给定一个可能含有重复值的数组arr,i位置的数一定存在如下两个信息 1&#x…...

django mysql in 有序返回

from django.db.models import * ordering f"FIELD(id, {,.join([str(_) for _ in ids])})" # 默认就按照算法返回的 id 排序p_data_result PeptidesDataResult.objects.using("polypeptide").filter(id__inids).values().extra(select{ordering: orderi…...

c++24.1.26嵌套if语句

嵌套if语句:if语句中的if语句 实践:...

机器学习--基础概念(二)

1.分类算法 分类算法是有监督学习的一个核心问题,他从数据中学习一个分类决策函数或分类模型,对新的输入进行预测,输出变量取有限个离散值。 以下是一些常见的分类算法: 逻辑回归 (Logistic Regression): 用于二分类问题&#x…...

Ubuntu20.04 安装 ROS noetic + MAVROS

本文在 AlphaCatOvO【ROS】在 Ubuntu 20.04 安装 ROS 的详细教程 基础上,根据实际安装经验,稍微进行补充。 一、安装Ubuntu20.04 假设已经正确安装。 二、安装 ROS noetic 2.1 换源 执行 sudo apt update sudo mv /etc/apt/sources.list /etc/apt/…...

【数学笔记】一元n次不等式,分式不等式,绝对值不等式

不等式 基本性质 一元n次不等式一元二次不等式一元高次不等式分式不等式绝对值不等式 基本性质 性质 a > b ⇔ b < a a>b\Leftrightarrow b<a a>b⇔b<a a > b , b > c ⇒ a > c a>b,b>c\Rightarrow a>c a>b,b>c⇒a>c a > b ,…...

量子信号处理技术及其在离子阱系统中的应用

1. 量子信号处理技术概述量子信号处理&#xff08;Quantum Signal Processing, QSP&#xff09;是近年来量子计算领域涌现的一项基础性技术&#xff0c;它通过精心设计的量子比特旋转序列&#xff0c;实现对量子数据的系统性多项式变换。这项技术的核心价值在于&#xff0c;它为…...

DeepSeek Clean Code终极阈值(v2.3.1正式版):超出3个指标即触发强制重构——你达标了吗?

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek Clean Code终极阈值的演进与哲学内核 DeepSeek Clean Code 的“终极阈值”并非静态指标&#xff0c;而是代码可维护性、语义清晰度与执行确定性三者动态收敛的临界点。它源于对 LLM 推理链中 …...

数据库优化(八)MySQL 大小管理 ——东方仙盟金丹期

1查询整个mysql下数据库大小SELECTtable_schema AS db_name,ROUND(SUM(data_length index_length)/1024/1024,2) AS size_mb FROM information_schema.tables GROUP BY table_schema ORDER BY size_mb DESC;| db_name | size_mb | -------------------------…...

通过Taotoken模型广场为不同视频类型选择合适的生成模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Taotoken模型广场为不同视频类型选择合适的生成模型 为视频内容生成高质量的文本描述、脚本或字幕&#xff0c;是许多创作者和…...

告别底噪与失真:手把手教你用STM32 I2C驱动WM8988音频Codec(附完整寄存器配置代码)

嵌入式音频开发实战&#xff1a;WM8988音质优化全攻略 在嵌入式音频系统开发中&#xff0c;WM8988作为一款高性能低功耗的音频编解码芯片&#xff0c;因其出色的音质表现和灵活的配置选项&#xff0c;成为众多开发者的首选。然而&#xff0c;很多工程师在完成基础驱动后&#x…...

策略梯度定理实战解析:从蒙特卡洛回报到PyTorch梯度实现

1. 这不是数学课&#xff0c;是写给实战者的政策梯度定理手记你打开这篇文字的时候&#xff0c;大概率正卡在某个强化学习项目里&#xff1a;模型跑不通、梯度爆炸、训练曲线像心电图一样乱跳&#xff0c;或者更糟——明明代码和论文一模一样&#xff0c;但 reward 就是上不去。…...

贝叶斯深度学习不确定性估计:集成学习与MC-Dropout实战对比

1. 项目概述&#xff1a;为什么我们需要量化深度学习的不确定性&#xff1f;在自动驾驶汽车识别前方障碍物、医疗AI系统诊断病灶、或者机器人进行精细操作时&#xff0c;一个错误的预测可能导致灾难性的后果。传统的深度神经网络&#xff08;DNN&#xff09;在这些任务上表现出…...

【限时公开】谷歌内部未文档化Gemini JavaScript SDK隐藏能力:流式响应中断控制、上下文压缩率提升63%实测数据

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Gemini JavaScript SDK核心能力概览 Gemini JavaScript SDK 是 Google 官方提供的轻量级客户端库&#xff0c;专为在浏览器和 Node.js 环境中无缝集成 Gemini 模型能力而设计。它抽象了底层 HTTP 请求、…...

2026年图片换背景免费工具完全指南:一键抠图软件推荐

现在是5月&#xff0c;我想很多人都在为各种证件照、商品图、头像等需要换背景的图片犯愁。前两天有朋友问我"哪个软件可以给图片换背景"&#xff0c;我才意识到很多人还在用古老的PS或者繁琐的在线工具。今天就来给大家分享一下2026年最好用的图片换背景工具&#x…...

别只把Docker当虚拟机!《Docker实践》没细说的5个生产环境‘骚操作’

别只把Docker当虚拟机&#xff01;5个生产环境高阶实践指南 当团队从开发测试转向生产环境时&#xff0c;Docker的使用方式往往需要质的飞跃。许多工程师在初期将容器简单视为轻量级虚拟机&#xff0c;却忽略了容器化架构真正的威力。本文将揭示那些官方文档鲜少提及&#xff0…...