逆向解析某东h5st参数:从window.PSign到SHA256加密全流程

京东h5st和x-api-eid-token逆向分析 e是之前的对象做了处理,body已经知道是sha256后结果,中间一串固定,最后是一个当前时间戳。接下来就是模拟生成算法了,这里我采用了纯算法,完全没必要扣js,毕竟一扣就是好几万行代码。经过测试发现对其检测并不是很严格,重点还是这个h5st这个参数,废话不多说直接来分析吧。这里我们找他的加密方法,发现他是由这个r方法进行加密这个h5st这个参数的。此时发现h5st已经生成了,向上跟栈查看哪里调用了该函数。首先先抓个包,分析他的参数,发现有一个h5st这样的参数。r是由这几个参数生成的。 阅读详情

1. 初探h5st:某东搜索接口的“通行证”

大家好,我是老张,一个在爬虫和逆向领域摸爬滚打了十来年的老码农。今天咱们不聊那些虚头巴脑的理论,直接上手干一个硬核实战——逆向某东商品搜索接口里的那个让人又爱又恨的 h5st 参数。如果你在做数据采集或者接口分析时,被这个参数卡住过,那这篇文章就是为你准备的。咱们的目标很简单,就是像剥洋葱一样,一层层把这个参数的生成逻辑彻底搞清楚,从最开始的 window.PSign.sign 调用,到核心的 SHA256 加密,最后把整个环境给补全,让你能在自己的本地环境里完美复现这个加密过程。

h5st 是啥?你可以把它理解成某东H5页面(比如手机网页版)调用其核心数据接口时,必须携带的一张“动态通行证”。没有这张通行证,服务器根本不会搭理你的请求。它不是一个固定的值,而是由当前页面的状态、你的操作行为、时间戳等一系列信息,经过一套复杂的算法计算出来的。这就意味着,你不能简单地复制一个值反复用,必须自己学会怎么“造”这张通行证。我们这次聚焦的场景,就是商品列表的翻页搜索。当你滑动页面加载更多商品时,浏览器就会带着新生成的 h5st 去请求数据。我们的任务,就是把这个“造”的过程完整地逆向出来。

我刚开始接触这个参数的时候,也走了不少弯路。网上资料零零碎碎,要么只讲结果不讲过程,要么环境补全部分一笔带过,真到自己动手时,各种报错和异常值让人头大。所以,我决定把这次完整的逆向过程,包括所有踩过的坑和最终的解决方案,毫无保留地分享出来。咱们不搞花架子,就用最朴素的调试手段——断点,配合清晰的逻辑分析,一步步把它拿下。你会发现,只要思路对了,再复杂的加密也有清晰的脉络。

2. 锁定目标:从断点追踪到核心加密函数

逆向的第一步永远是定位。别一上来就想着扣代码,先得找到代码在哪。对于某东的H5页面,最有效的方法就是直接搜索关键词。我们在浏览器开发者工具的“Sources”面板里,直接全局搜索 h5st。搜索结果可能会出来好几个文件,别慌,把所有看起来可疑的位置(比如包含 h5st 赋值、h5st 作为参数传递的地方)都打上断点。

打上断点后,回到网页进行触发加密的操作——对我们来说,就是滚动商品列表触发翻页加载。一旦请求发出,代码执行就会在我们的断点处暂停。我实测下来,最终会断在一个非常关键的位置:window.PSign.sign(colorParamSign)。看到这行代码,心里就踏实了一半,因为它明确地告诉了我们两件事:第一,加密操作是由 window.PSign 这个对象的 sign 方法执行的;第二,加密的输入参数是一个叫 colorParamSign 的对象。

接下来,咱们先按住好奇心,别急着去抠 window.PSign.sign 这个函数。 按照逆向的常规思路,我们应该先分析它的输入参数 colorParamSign。在调试器里展开这个对象,你会发现它里面包含了好几个字段,比如 functionId、body、appid 等等。其中,body 字段的内容看起来像是一长串毫无规律的字符,明显是经过某种处理后的密文。而其他字段大多是明文的业务参数。我们的首要目标,就是搞清楚这个 body 是怎么来的。

把鼠标移到 body 字段上,或者查看其赋值语句的上文,很容易就能找到它的生成位置。通常,就在

JS逆向实战:链式补环境破解某东h5st签名加密 在JavaScript逆向工程与数据采集领域,环境检测是常见的反爬机制。其核心原理在于,目标网站通过检查代码运行环境(如window、document等浏览器特有对象)来区分浏览器端与Node.js等服务器端执行环境,从而阻断自动化脚本。为了应对这一挑战,补环境技术应运而生,其技术价值在于通过模拟浏览器原生对象及其完整的原型链,构建一个足以“欺骗”加密代码的虚拟执行环境,使扣取的JS加密逻辑能在Node.js中稳定运行。这一技术广泛应用于电商、社交、金融等平台的数据接口逆向场景。本文以某东搜索接口的h5st 阅读详情

相关推荐

京东联盟h5st(3.1)逆向分析

声明:本文仅作学习交流,请遵守法律法规,不要恶意爬取网站。网址:'aHR0cHM6Ly91bmlvbi5qZC5jb20vcHJvTWFuYWdlci9pbmRleA=='h5st是京东系的反爬方式,即在接口中加上一个叫h5st的参数,h5st加密有不同的版本。本文提到的网站不是京东网站,是和京东有关联的一个网站,也有h5st参数,是3.1版本。

joker_zsl的博客 5750

某东 h5st第8个参数 指纹加密纯算解析

本文分析了某东H5st浏览器指纹加密算法中的第8个参数生成过程

weixin_66580433的博客 1868

某东详情页h5st 算法分析

某东详情页h5st 算法分析

自成背后的博客 1万+

实战篇---某东h5st破解(1)--- 初识h5st

京东h5st是一种用于京东平台数据获取的加密参数,部分接口需要携带此参数,才能获取数据,h5st是通过一系列加密算法才能获取到的。

zhouzhou_98的博客 3520

京东商品接口加解密算法解析

首先,是请求参数中的json字符串sha265加密,组装成了一个r对象。可以看到,第一层加密很容易,第二层加密有些难度,我们直接分析一下第二层的加密技术。解析一下接口,接口返回值跟没什么特殊说明,首尾加了一个方法名,请求参数中有一个h5st的加密参数就是加密的内容。接着,全局搜索h5st,找到js文件,打开源文件,打上断点,继续鼠标下滑,找到了加密的地方。但是意外的发现是,多次请求的结果,返回的h5st是有一定规律的。打开页面,打开开发者工具,往下滑动鼠标,获取接口地址。,然后打开搜索页面,如下图。

xiangzhihong8的专栏 2849

通过ssh进行宇树g1机器人进行连接

原因:就是g1机器人输出接口损坏,无法连接外部显示器。前期准备:本文电脑是联想Y7000p(windows)2.进入页面后:3.出现是一个压缩包,解压后:4.安装时:要注意,需要在文件夹中找到这个文件目录,然后在此鼠标右键开启终端进行安装:接着按照提示next下去即可,可以自定义安装路径。

m0_72207463的博客 1289

Syzkaller实战教程2:运行环境配置+实例运行

本文详细介绍了在linux系统上搭建Syzkaller内核模糊测试环境的完整流程。 1.环境配置:通过VMware创建Ubuntu20.04虚拟机A,配置QEMU/KVM虚拟化环境,安装Go语言工具链和Syzkaller; 2.内核编译:下载Linux内核源码并配置KCOV等调试选项,编译生成带覆盖率支持的bzImage内核镜像; 3.测试环境构建:使用debootstrap创建Debian虚拟机镜像,通过QEMU启动嵌套虚拟机B; 实例测试: 4.演示两种测试场景 - 提供完整上手教程

cuguanren的博客 1378

浅析MOS管导通过程及RC吸收电路设计要点

RC吸收电路 米勒电容 MOS导通过程

liangbo1999的博客 2万+

控制台模拟前端请求实现快速刷网课时长

本教程仅用于学习前端技术和网页开发,旨在提供教育与技术指导。对于任何未经授权或违反规定的使用行为,本人不承担任何责任。注意到那个serive后面有timestamp时间戳,暗示它很可能就是每30秒汇报一次进度和播放时长的命令,我们右键——复制——复制为fetch。有的网站上的网课需要的不仅仅是进度,而是时长,所以倍速插件失效,但我们可以使用控制台命令来模拟请求实现快速刷网课时长。尝试修改即可,例如我修改time为800,然后复制粘贴到控制台执行。播放视频,等待前端请求出现,然后复制前端请求为fetch。

m0_74823408的博客 2071

使用R语言实现循环神经网络RNN进行文本生成

首先,让我们回顾一下循环神经网络(Recurrent Neural Networks,RNN)的基本概念。RNN是一种深度学习技术,特别适合处理序列数据,如时间序列和文本数据。RNN的关键特性是它的隐藏状态,这个状态可以捕捉到当前输入之前的信息。这使得RNN能够利用前面的信息来影响后续的输出,从而对序列数据进行有效的处理。

斌擎科技 726

STM32嵌入式标准化封装五层架构设计与工程实践

在嵌入式系统开发中,代码封装是保障可维护性、可复用性与可靠性的核心工程能力。其本质是通过分层抽象(硬件抽象层→设备驱动层→应用逻辑层)解耦硬件依赖与业务逻辑,实现跨芯片移植、多任务安全及确定性实时响应。关键技术包括HAL库重构以消除硬编码初始化、驱动层提供同步/异步/事件驱动三类UART接口、中断优先级矩阵管理确保响应确定性、双阶段时钟配置兼顾启动鲁棒性与运行能效,以及面向Modbus等工业协议的语义化API封装。这些实践直击STM32项目中引脚变更难、HAL裸调风险高、中断处理不安全、时钟配置僵化等典型痛

weixin_35019679的博客 68

从零到一构建一个智能爬虫 Agent 完整教程

本文将打造一个具备自主决策、动态解析、反反爬、持久化能力的智能爬虫 Agent

数据知道的博客 4799

飞腾平台(FT2000/4 D2000/8)配置GPIO引脚

飞腾平台配置CPU的引脚为GPIO工作模式的方式有永久型和暂时型: - 永久型是通过UEFI中的MmioWrite32函数来实现的,该方法可以在UEFI阶段就对复用引脚的工作模式配置为GPIO,并且在进入操作系统后仍然不会发生便会; - 临时型是通过rw工具,在系统下手动修改复用引脚的工作模式,该方法在系统重启后会失效,所以是暂时型的。

qq_30135687的博客 5617

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

上一篇: 前端实时通信的5种主流技术对比与实战指南
下一篇: 从离散拉普拉斯算子到LOG:边缘检测中的数学原理与实践
github5actions
博客等级 码龄1天 0粉丝 1824原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值