某鱼、某宝 sign 签名算法分析记录

【作者主页】:小鱼神1024

【知识星球】:小鱼神的逆向编程圈

【擅长领域】:JS逆向、小程序逆向、AST还原、验证码突防、Python开发、浏览器插件开发、React前端开发、NestJS后端开发等等

本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!若有侵权,请联系作者立即删除!

前言

今天不忙,分析一下某鱼、某宝的 sign 签名算法,记录一下。

前置分析

在请求参数中,发现有 sign 参数,如下:

某鱼、某宝 sign

如果请求不携带 sign, 会提示:{"api":"mtop.taobao.idlehome.home.webpc.feed","data":{},"ret":["FAIL_SYS_ILLEGAL_ACCESS::非法请求"],"v":"1.0"}

逆向分析

通过全局搜索 sign 关键字,找到 sign 参数的生成位置,如下:

某鱼、某宝 sign

打个断点,重新请求,如下:

某鱼、某宝 sign

发现 sign 参数是 i(d.token + "&" + j + "&" + h + "&" + c.data) 得到的。

其中 token 是来自 cookie 中的 _m_h5_tk, j 是时间戳,happKey 为定值,data 是请求参数。

那么 i 函数应该就是 sign 的生成函数了,如下:

某鱼、某宝 sign

将其扣下来。如下:

某鱼、某宝 sign

其中固定时间戳,经过对比,发现 sign 签名和网站上的 sign 签名一致。

相关的js会放到知识星球里,仅供交流学习使用,有需要的自取!

参数验证

写个小例子,验证下生成的参数是否正确,如下:

某鱼、某宝 sign

搞定!!

如果还有什么疑问,请在知识星球里留言。

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

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

相关文章

Compose笔记(十三)--事件总线

这一节了解一下Compose中的事件总线,在Jetpack Compose里,官方没有直接提供事件总线,但可以借助第三方库或者自定义实现来达成事件总线的功能,进而在不同的 Compose 控件间同步数据。 自定义事件总线 import androidx.compose.r…

Python的inspect模块

在Python编程中,**inspect**模块是一个强大的工具包,它提供了一系列函数来获取对象的信息,主要用于获取对象的源代码、参数信息、类继承关系、方法属性等。这对于调试、自动化文档生成、代码分析等场景都非常有用。本文将详细介绍inspect模块…

2025跳槽学习计划

(1)编程基础: 目录学习资料Chttps://www.bilibili.com/video/BV1z64y1U7hs?spm_id_from333.1387.favlist.content.clickLinuxPytorchhttps://www.bilibili.com/video/BV1if4y147hS?spm_id_from333.1387.favlist.content.clickopencv数据结…

WebRTC简介及应用

WebRTC(Web Real-Time Communication)是一种支持浏览器和移动设备进行实时音视频通信的技术,无需安装插件或额外的软件。它是一个开放标准,最初由Google推动,并被W3C(万维网联盟)和IETF&#xf…

【C语言】分支与循环(上)

前言:C语言是由顺序结构、选择结构、循环结构组成的结构化的程序设计语言。 那C语言是如何设计和实现这些结构的呢?话不多说,马上开始。 三种结构如图所示: 我们可以使用 if else语句、 switch语句 来实现选择(分支&am…

一次与chatgpt关于VO的深入讨论。

我: {"usageRate":50,"projectInfo":[{"productName":"长江一号","deviceInfo":[{"deviceName":"AA","num":10},{"deviceName":"BB","num":3}]},…

Springboot学习笔记3.20

目录 1.实战篇第一课 我们将会在本次实战中学习到哪些知识点? 开发模式和环境搭建: 注册接口 1.Lombok 2.开发流程 1.controller层,这个层会指明访问路径和要执行的逻辑: 2.我们把返回结果根据接口文档包装成一个类result&a…

docker save如何迁移镜像更节省空间?

文章目录 方法一:使用docker save命令方法二:直接保存多个镜像到一个tar文件哪个方法更节省磁盘空间?空间效率对比实际测试示例其他优势结论 如何用脚本迁移加载镜像 迁移镜像时候,往往会碰到基础镜像相同的很多镜像需要迁移&…

全新升级 | Built For You Spring ‘25 发布,Fin 智能客服实现新突破!

图像识别、语音交互、任务自动化,立即体验智能客服蜕变! 上周,Intercom 举办了 Built For You Spring 25 发布会,正式揭晓了 AI Agent Fin 的一系列令人振奋的更新。Fin 正在以前所未有的速度革新客户支持模式——它已经成功解决了…

需求导向的K8S网络原理分析:Kube-proxy、Flannel、Calico的地位和作用

最近发现自己似乎从来没学明白过Kubernetes网络通信方案,特开一贴复习总结一下。 在k8s中,每个 Pod 都拥有一个独立的 IP 地址,而且假定所有 Pod 都在一个可以直接连通的、扁平的网络空间中。所以不管它们是否允许在同一个 Node(宿…

Vulnhub:Digitalword.local: FALL靶机渗透

将靶机按照图中连接方式打开,fall在virtualBox中打开 信息收集 扫描得ip arp-scan -l 扫描端口 nmap -A -T4 -sV -p- 扫描目录 gobuster dir -u http://192.168.117.160 -x php,txt,html -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt 一个一个…

4、网工软考—VLAN配置—hybird配置

1、实验环境搭建: 2、实验过程 SW1: 先创建vlan2和vlan3 [Huawei-Ethernet0/0/2]port link-type hybrid //hybird端口 [Huawei-Ethernet0/0/2]port hybrid pvid vlan 2 [Huawei-Ethernet0/0/2]port hybrid untagged vlan 10 //撕掉vlan10的标签 …

【OCR】技术

OCR图像识别 一、OCR是什么二、Python中如何实现OCR1.简单应用 三、OCR的核心步骤1.​图像预处理​(提高识别准确率)2.​文字识别3.​输出结果 四、OCR到的应用场景五、注意事项六、扩展学习 此贴用来更新在工作中遇到的一些图片解析内容 一、OCR是什么 …

深入理解 dispatchEvent:前端事件触发的艺术

dispatchEvent 是 DOM 元素的一个方法,用于手动触发/派发一个事件。这个方法允许开发者以编程方式触发事件,而不是等待用户交互或浏览器自动触发。 1.基本概念 作用:dispatchEvent 用于在指定的 DOM 节点上触发一个事件 使用场景&#xff1…

2025年数智化电商产业带发展研究报告260+份汇总解读|附PDF下载

原文链接:https://tecdat.cn/?p41286 在数字技术与实体经济深度融合的当下,数智化产业带正成为经济发展的关键引擎。 从云南鲜花产业带的直播热销到深圳3C数码的智能转型,数智化正重塑产业格局。2023年数字经济规模突破53.9万亿元&#xff…

【深度学习】【目标检测】【OnnxRuntime】【C++】YOLOV5模型部署

【深度学习】【目标检测】【OnnxRuntime】【C】YOLOV5模型部署 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】【目标检测】【OnnxRuntime】【C】YOLOV5模型部署前言Windows平台搭建依赖环境模型转换--pytorch转onnxONNXRuntime推…

深入解析 JSON-RPC:从基础到高级应用(附调用示例)

在当今的软件开发领域,远程过程调用(RPC)技术是实现分布式系统间通信的关键手段之一。JSON-RPC,作为一种基于 JSON 数据格式的轻量级 RPC 协议,因其简洁性和高效性而备受青睐。本文将全面深入地探讨 JSON-RPC 的核心概…

抽象代数:群论

系列笔记为本学期上抽象代数课整理的,持续更新。 群的相关定义 群的定义 群是一个带有满足结合律、单位元、逆元的二元运算的集合,记作 ( G , ⋅ ) \left({G, \cdot}\right) (G,⋅)。若群运算满足结合律,则该集合构成半群。如果该半群中含…

线程同步——读写锁

Linux——线程同步 读写锁 目录 一、基本概念 1.1 读写锁的基本概念 1.2 读写锁的优点 1.3 读写锁的实现 1.4 代码实现 一、基本概念 线程同步中的读写锁(Read-Write Lock),也常被称为共享-独占锁(Shared-Exclusive Lock&a…

全面解析PRN文件:从原理到可视化的完整指南 【标签打印】

文章目录 一、PRN文件概述二、PRN文件结构深度解析2.1 文件头配置2.1 绘图指令详解2.3 文本处理方案2.4 条码/二维码实现2.5 RFID指令集 三、实战:PRN可视化工具开发3.1 基于Canvas的实现方案3.2 坐标转换关键算法 四、常见问题解决方案4.1 内容偏移问题4.2 中文乱码…