某red书最新版x-s、x-s-common(下)

news2024/11/26 20:30:34

本文继续某red书参数逆向,接下来是x-s-common,x-s的逆向过程请转战某red书最新版x-s、x-s-common(上)
x-s-common就比较好找了,直接搜索就可以了
在这里插入图片描述
成功断住:
在这里插入图片描述
这里要注意了,断点是断在第二个x-s-common,上面的那个以及什么v.x8啊v.x9啊,那都不是我们要的代码,不要被误导了。我们需要的是上面的对象v。

{
    "s0": 5,
    "s1": "",
    "x0": "1",
    "x1": "3.7.8-2",
    "x2": "Windows",
    "x3": "xhs-pc-web",
    "x4": "4.33.2",
    "x5": "191db22440ad0nui1yqe2g8cb1pwchzthrlidt2z65000034",
    "x6": 1725958356205,
    "x7": "XYW_eyJzaWduU3ZuIjoiNTUiLCJzaWduVHlwZSI6IngyIiwiYXBwSWQiOiJ4aHMtcGMtd2ViIiwic2lnblZlcnNpb24iOiIxIiwicGF5bG9hZCI6IjJlNmJmNGQyZmU4ZmU1YjQzMzYwNTc4ZTU3MDE5YWEzY2FmM2NhNzBiYTg2NTEzMDgwZTg2ZDFkMDQ4YzNkNDhiNzQ0ODE1ZWQ5NTRhNjE5ZTMzZDU1OWQ4Yzk1YTRlYzI4NGVjZTg0OGIwZjRiOGY5MWU5M2M3MjhiYmY2NzFhODk0YzYzZmNmNDhhYWUwZTQ0YWEwNmZjNzZlOGYzNmM4OTMwODM1MGQ4MjMxOWRjYWFkNzljNmJjMjgyOGNmMDMxMWMxZTdmMGM0OGUxNDQwMTk4NzQ5MDE5ZDkyOWNjZjFjZjZkN2VmOTBjZGVkYzA4ODQ4Y2YxZTY0MzU1OTY4NjIyOWU0NTFlZGU5ZjY5MzdkNzVlOWUwN2EzYWQwZmZjN2U0MWVlYjdkZjg5MDFmODAyY2I4MTI3MTNlZDc0MGY5M2FiN2ZlY2M4MjYzYWFmN2UyNGQxZmE2ZDA1YWRlYjdhNGY4NjQxMjA4NWI1NGNlZDRhM2M2MTcyOWYyNTM2NWQzMDAxOGFmZmE0Zjg5YjMwYWU3NGRjNDA0Y2MyIn0=",
    "x8": "I38rHdgsjopgIvesdVwgIC+oIELmBZ5e3VwXLgFTIxS3bqwErFeexd0ekncAzMFYnqthIhJeSnMDKutRI3KsYorWHPtGrbV0P9WfIi/eWc6eYqtyQApPI37ekmR1QL+5Ii6sdnoeSfqYHqwl2qt5B0DoIx+PGDi/sVtkIxdsxuwr4qtiIkrwIi/skcc3I3VvIC7sYuwXq9qtpFveDSJsSPwXIEvsiVtJOPw8BuwfPpdeTDWOIx4VIiu1ZPwbPutXIvlaLb/s3qtxIxes1VwHIkumIkIyejgsY/WTge7eSqte/D7sDcpipedeYrDtIC6eDVw2IENsSqtlnlSuNjVtIvoekqwMgbOe1eY2IESPIhhgQdIUI38P4Z88IizuBVwMIvGF4B6sdcNskVwVIC7eWo7sYeSqIk5eTDmjtuwjIhJs6Ads3SgeiVt/c9deYqwCICMyL/0efPwELfAsSqw+I3M/I3biBPwNgVwesBZ/yLOsYeOeVPwyIh7sjg6exmSuIENejlOe3dhkIiJsTVt0IkLdPuwJ2qw0ICvs6qwAIiNs3uw5Ikvsdqt5wuwLoVwDICikICGaJdI3JL7sTqwkIiYqIies6VtheSHzr75sjBMuIkWLwqtHZqw3Ivoe6VtUtsTutPcPtBIvoejVwiIi7ekb83ICKsfI==",
    "x9": 897049888,
    "x10": 11
}

首先解读一下v,s0到x4直接写死即可。

x5是从cookie中取的a1
在这里插入图片描述
x6是从headers中取的X-t,也就是时间戳,这个要注意,请求的时候要统一一下,
x7是x-s参数,上一篇文章已经生成
x8是从localStorage中取的,测试了会变,但是可以固定不影响请求​

x9是 时间戳 + x-s + x8 拼接,然后传到encrypt_mcr函数生成返回的
x10则是 时间戳 + x-s,然后传到getSigCount函数生成返回的

所以我们需要先解决x9跟x10的生成逻辑

首先x9,断点断在encrypt_mcr,然后跳进去,单步执行。里面有一个 对象包含多个函数,进行了多次调用。而 对象包含多个函数,进行了多次调用。而 对象包含多个函数,进行了多次调用。而是J赋值的,J则在上面进行了赋值,所以这里不能单抠我们需要的函数,需要把外面这整个抠出
在这里插入图片描述
也就是这个:
在这里插入图片描述
然后encrypt_mcr依赖的其它函数如下图。就不一个一个解析了,反正就是缺少抠啥。
提示:iiiii函数就是i函数,不改名会冲突,望周知
在这里插入图片描述
前面说过了需要传时间戳 xs 跟x8的拼接值进来,上面只是做个演示,大家知道要传xs跟x8就行了,如上图就能拿到x9的结果。
然后是x10
在这里插入图片描述
x10比较简单,几行代码搞定。
最后就是x-s-common的生成逻辑了

encrypt_b64Encode(encrypt_encodeUtf8(stringify_default()(v)))

先把v对象转字符串,先传给encrypt_encodeUtf8,再传给encrypt_b64Encode就能拿到最终结果。

所以接下来就抠encrypt_encodeUtf8跟encrypt_b64Encode函数

首先是encrypt_encodeUtf8,其函数与所依赖函数如下图:
在这里插入图片描述
还是缺啥抠啥的逻辑,需要注意的是a0_0x4562函数中有个大数组,这个数组会在其它函数中做处理,位置会调换。所以如果你直接拿了原来的大数组是出不来结果的。

这里要么你去抠调换函数,要么去取最终生成的数组。我比较懒,就拿到了调换后的数组替换进去了,其它就没什么了,到这里就能拿到encrypt_encodeUtf8返回的大数组。

最后是encrypt_b64Encode,如下
在这里插入图片描述
到此x-s,x-s-common参数​就全部拿到了。
在这里插入图片描述
测试可用性也没问题。
在这里插入图片描述
某红书over~

个人逆向gongzhong号,感兴趣的朋友可以关注下,不定期更新大厂逆向干货!!!vx搜索:当爬虫遇到逆向
在这里插入图片描述

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

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

相关文章

使用Nignx打包前端项目

项目打包 我们开发用的脚手架其实就是一个微型服务器,用于:支撑开发环境、运行代理服务器等。 打包完的文件中不存在:.vue、.jsx、.less等文件,而是:html、css、js等。 打包后的文件,不再借助脚手架运行…

WireShark分析localhost包

文章目录 需要npcap。 java 需要配置Npcap,如果没有需要卸载重新安装 Npcap 是专为 Windows 开发的一款网络抓包 SDK,该 SDK 提供了被应用程序调用的库文件和系统驱动程序。通过 Npcap,我们可以得到原始(raw)网络数据&…

灵活的参数传递:使用*args和**kwargs让类实例像函数一样调用

在Python的世界里,我们经常会遇到需要让类实例表现得像函数的场景。这不仅可以增强代码的灵活性,还能提高其可读性和可维护性。 通过一些巧妙的技巧,我们可以模拟函数的行为,让类实例在调用时表现得如同内置函数一样自然。本文将…

【大模型专栏—入门篇】科研数据与显卡使用

大模型专栏介绍 😊你好,我是小航,一个正在变秃、变强的文艺倾年。 🔔本文为大模型专栏子篇,大模型专栏将持续更新,主要讲解大模型从入门到实战打怪升级。如有兴趣,欢迎您的阅读。 &#x1f4…

神经网络的可解释性理论及工具

1.可解释性分析简介 explainable AI:why,利用决策树 eg: interpretable AI:how 2.机器学习的可解释性 解释工具: 按输入对输出的贡献值。 然后把值sigmoid成0-1. 例子: 就是去计算,有你和没你…

统计上升四元组

🌈个人主页:Yui_ 🌈Linux专栏:Linux 🌈C语言笔记专栏:C语言笔记 🌈数据结构专栏:数据结构 🌈C专栏:C 文章目录 1. 题目描述2. 解释3. DP前缀和枚举 1. 题目描…

# CentOS7 设置mysql的 root 用户密码时,报错 ERROR 1819(HY000)...ERROR1193... 解决方法。

CentOS7 设置mysql的 root 用户密码时,报错 ERROR 1819(HY000)…ERROR1193… 解决方法。 一、错误描述: mysql ALTER USER rootlocalhost IDENTIFIED BY 123; ERROR 1819 (HY000) Your password does not satisfy the current policy requirementsERRO…

基于SC04B触摸芯片实现的触摸按键方案

基于SC04B触摸芯片实现的触摸按键方案 随着科技的不断进步,触摸按键技术已经广泛应用于各种电子设备中。SC04B作为一种常见的触摸感应芯片,以其高性能、低成本、高灵敏度和易于集成的特点,在触摸按键方案中备受青睐。 SC04B触摸芯片特点 SC…

数据结构--串的模式匹配算法

文章目录 串的模式匹配算法1.朴素算法(Brute-Force(BF)暴力算法)BF算法分析 2.KMP算法字符串的最长公共前后缀部分匹配表(前缀表)Next 串的模式匹配算法 查找子串(模式串)在主串中的位置的操作通常称为串的…

NET8 MAUIBlazor发布用于windows应用

1.打开 PowerShell 终端 , 命令行进入工程目录,以我的例子工程为例 DOS命令:cd 项目名 2.复制窗口里面的 Thumbprint 下的指纹码, 例如我这个是E18EF79CF31104139F16BD2089F4AB1898D381C2 3.配置项目生成设置, 双击项目名称或者直接编辑 ltyj.C2.Cilent.csproj 文件 添加下面…

C语言操作符详解(13)

文章目录 前言一、二进制和进制转换2进制转10进制10进制转2进制2进制转8进制2进制转16进制 二、原码、反码、补码三、移位操作符左移操作符右移操作符 四、位操作符&^~一道奇葩的面试题一道练习题再来一个练习题 五、逗号表达式六、结构成员访问操作符结构体结构的声明结构…

汇编调用C库函数—printf、scanf和Win32API

RadASM: ;右键 -> 生成依赖项 -> 生成自定义 -> masm .586 .model flat,stdcall option casemap:noneinclude msvcrt.inc include Kernel32.inc include User32.incincludelib msvcrt.lib includelib Kernel32.lib includelib User32.libscanf proto c :ptr,:vararg …

Java 的Swing 之JFrame快速入门

3、讲原件添加到当前窗口当中 //讲原件添加到当前窗口当中 this.add(btnlong); this.add(btnreset); this.add(usertext); this.add(passtext); this.add(username); this.add(password); this.setVisible(true); 4、对对应按钮设置动作监听 btnlong.addActionListene…

足球大小球及亚盘数据分析与机器学习实战详解:从数据清洗到模型优化

本文将深入探讨Java在数据分析和机器学习中的实际应用,涵盖数据预处理、模型训练和优化等方面的内容。通过详尽的代码示例,帮助读者掌握相关技术并应用于实际项目中。 数据分析、初盘数据、走地数据、分析管理系统、AI大模型预测系统、全自动化下单系统…

直播相关02-录制麦克风声音,QT 信号与槽,自定义信号和槽

一 信号与槽函数 #include "mainwindow.h" #include <QPushButton> #include <iostream> using namespace std;//我们的目的是在 window中加入一个button&#xff0c;当点击这个button后&#xff0c;关闭 MainWindow 。 MainWindow::MainWindow(QWidget …

【实施文档】软件项目实施方案(Doc原件2024实际项目)

软件实施方案 二、 项目介绍 三、 项目实施 四、 项目实施计划 五、 人员培训 六、 项目验收 七、 售后服务 八、 项目保障措施软件开发管理全套资料包清单&#xff1a; 工作安排任务书&#xff0c;可行性分析报告&#xff0c;立项申请审批表&#xff0c;产品需求规格说明书&am…

【文献阅读】Unsupervised Machine Learning for Bot Detection on Twitter

Abstract 引入新特征&#xff0c;并降低所提模型的复杂性&#xff0c;从而提高基于聚类算法的机器人识别准确性。 最小化数据集维度和选择重要特征来实现的。 实验证明该方法的特征可以与四种不同的聚类技术&#xff08;agglomerating、k-medoids、DBSCAN 和 K-means&#x…

Android Graphics 显示系统 - VirtualDisplay mirrorDisplay 简单示例

“ Life is like a box of chocolates, you never konw what youre going to get。最近我也得到了一块巧克力&#xff0c;迫不及待地想尝一下甜的惊喜 。” 前言 上一篇文章&#xff0c;我们分享了一个VirtualDisplay的简单实例&#xff0c;主要是为了引入创建虚拟屏幕都使用了…

C# 如何检查两个给定的线段是否相交(How to check if two given line segments intersect)

给定两条线段(p1, q1)和(p2, q2)&#xff0c;判断给定的线段是否相交。 在讨论解决方案之前&#xff0c;让我们先定义方向的概念。平面中有序点三元组的方向可以是 –逆时针 –顺时针 –共线 下图显示了&#xff08;a&#xff0c;b&#xff0c;c&#xff09; 的不同可能方…

多进程批量下载era5再分析数据

1.配置key https://cds.climate.copernicus.eu/api-how-to 获取key 修改配置文件&#xff0c;把url和key复制进行 vim $HOME/.cdsapirc2.下载 根据要求修改年和月份等变量 import cdsapi import calendar import concurrent.futures import osdef download_month_data(year,…