【JS逆向学习】同花顺(q.10jqka)补环境

news2024/9/22 22:30:39
逆向目标

目标网址:https://q.10jqka.com.cn/
目标接口
https://q.10jqka.com.cn/index/index/board/all/field/zdf/order/desc/page/3/ajax/1/
目标参数:cookie

逆向过程

老规矩,先分析网络请求,发现是 cookie 加密,那就好办了,我们直接 hook ,不知道怎么 hook 的可以参考我的另一篇文章JS常用HOOK调试技术
在这里插入图片描述
这里我们直接控制台注入hook 代码,然后翻页发现代码断在了设置cookie的位置,如下图
在这里插入图片描述

逆向分析

找到入口接下来跟栈分析就行了
在这里插入图片描述
继续向下跟
在这里插入图片描述
我们新建个无痕浏览器并把代码拷贝进去执行下,将rt变量暴露出来,然后控制台继续执行rt.update(),😊得来全不费功夫
在这里插入图片描述
但是浏览器环境和nodejs环境是不同的,我们把代码在 nodejs中执行发现报错document未定义,缺什么补什么就行了
在这里插入图片描述
这里我们先用jsdom简单补一下

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const dom = new JSDOM('<!DOCUMENT html><p>Test</p>')
window = dom.window
document = window.document
navigator= window.navigator

发现还是报错Error: Not implemented: HTMLCanvasElement.prototype.getContext (without installing the canvas npm package)
在这里插入图片描述
查资料时网上很多说法是安装 canvas: npm install canvas,其实并没有什么用,补上以下环境就OK了

window.HTMLCanvasElement.prototype.getContext = () => {

  // return whatever getContext has to return

};

在这里插入图片描述
拿到我们想要的结果了,至此加密参数的分析过程就完成了

逆向总结

回顾整个流程,其实没有什么难度,入口也很好找,参数的加密逻辑也不复杂,源码下载

原创声明:未经许可,不得转载。
如有侵权,请联系作者删除删除。

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

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

相关文章

MySQL 8.0.36 WorkBench安装

一、下载安装包 百度网盘链接&#xff1a;点击此处下载安装文件 提取码&#xff1a;hhwz 二、安装&#xff0c;跟着图片来 选择Custom,然后点Next 顺着左边框每一项的加号打开到每一个项的最底层&#xff0c;点击选中最底层的项目&#xff0c;再点击传过去右边的绿色箭头&a…

光伏智慧化运维系统:实现一站式光伏服务前沿探索

随着全球能源结构的转型&#xff0c;光伏发电已成为绿色能源的重要组成部分。然而&#xff0c;光伏企业的运营和管理却面临着诸多挑战&#xff0c;如方案设计慢、运行状况难以实时掌握、收资效率低等。为解决这些问题&#xff0c;光伏智慧化运维系统应运而生&#xff0c;以其一…

2024牛客(4)K题

登录—专业IT笔试面试备考平台_牛客网 using i64 long long; using ll long long; constexpr ll M 1e9 7; template<class Info> struct SegmentTree {int n;std::vector<Info> info;SegmentTree() : n(0) {}SegmentTree(int n_, Info v_ Info()) {init(n_, …

学习笔记-Git

Git 问题一描述解决方法注意事项 问题一 描述 在commit和push的时候因为网络太慢了中途强行关闭了进程&#xff0c;而push的内容因为文件过大导致无法正常push 按照原本的流程在push的时候会提示失败&#xff0c;并且需要在解决了大文件之后重新push 而因为中途中断了&#x…

GitHubApp大集结!GSYGithubAppFlutter带你飞越编程世界!

GitHubApp大集结&#xff01;GSYGithubAppFlutter带你飞越编程世界&#xff01; GSYGithubAppFlutter是一个功能丰富、跨平台的开源GitHub客户端应用程序&#xff0c;基于Flutter框架开发。该项目属于GSYGithubApp系列&#xff0c;目前已经拥有Flutter、Weex、ReactNative和Ko…

Microsoft PowerToys:自定义 Windows 的实用程序

Microsoft PowerToys&#xff1a;自定义 Windows 的实用程序 Microsoft PowerToys 是一组实用程序&#xff0c;供高级用户调整和简化其 Windows 体验以提高工作效率。 微软官方地址为&#xff1a;https://learn.microsoft.com/en-us/windows/powertoys/&#xff0c;其github源…

防火墙内容安全笔记

目录 DFI和DPI IDS和IPS 签名 AV URL过滤 HTTPS过滤 内容过滤 文件类型过滤 文件内容过滤 邮件过滤 VPN概述 DFI和DPI DFI和DPI技术 --- 深度检测技术 DPI DPI --- 深度包检测技术 --- 主要针对完整的数据包&#xff08;数据包分片&#xff0c;分段需要重组&#…

Spring的copy属性

Spring 的 BeanUtils.copyProperties()实现的是浅拷贝 ClassA public class ClassA {private Integer age;private String name;private ClassC c;public Integer getAge() {return age;}public void setAge(Integer age) {this.age age;}public String getName() {return n…

【stm32】hal库-双通道ADC采集

【stm32】hal库-双通道ADC采集 CubeMX图形化配置 程序编写 /* USER CODE BEGIN PV */ #define BATCH_DATA_LEN 1 uint32_t dmaDataBuffer[BATCH_DATA_LEN]; /* USER CODE END PV *//* USER CODE BEGIN 2 */lcd_init();lcd_show_str(10, 10, 24, "Demo14_4:ADC1 ADC2 S…

vue大文件读取部分内容,避免重复加载大文件,造成流量浪费

使用场景&#xff1a;项目点云地图是pcd文件&#xff0c;但是文件可能上百兆&#xff0c;我需要获取到文件中的版本信息&#xff0c;跟本地的缓存文件做比较&#xff0c;如果不一致&#xff0c;才会加载整个文件。从而节省流量。 避免重复加载整个“.pcd文件&#xff0c;以最大…

2.21数据与结构算法学习日记(最小生成树prim算法)

目录 最小生成树prim 最小生成树算法是一种用来在一个加权连通图中找到最小生成树的算法。最小生成树是一个包含图中所有顶点的树&#xff0c;其总权值最小。 prim算法 洛谷题目示例 P3366 【模板】最小生成树 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题…

郑板桥的人生境界是难得糊涂

郑板桥是康熙秀才&#xff0c;雍正举人&#xff0c;乾隆进士。 郑板桥小时候跟父亲在真州读书&#xff0c;长大后在真州教书。后来&#xff0c;郑板桥去扬州卖画谋生。 郑板桥没有老师&#xff0c;画画靠自己琢磨。郑板桥一生画竹&#xff0c;画了四十年的竹子&#xff0c;主…

【析】考虑同时取送和时间窗的车辆路径及求解算法

期刊&#xff1a;computer engineering and applications 计算机工程与应用![c 引言 1. 问题分析 1.1 问题描述 问题描述为&#xff1a; 若干运输车辆从配送中心出发为客户取送货并最终返回配送中心&#xff0c;每位客户仅由一辆车服务一次&#xff0c;车辆在配送过程中任…

《图解设计模式》笔记(二)交给子类

三、Template Method模式&#xff1a;将具体处理交给子类 示例程序类图 public static void main(String[] args) {// 生成一个持有H的CharDisplay类的实例AbstractDisplay d1 new CharDisplay(H);// 生成一个持有"Hello, world."的StringDisplay类的实例AbstractD…

11-树-二叉树的前序遍历

这是树的第11篇算法&#xff0c;力扣链接。 给你二叉树的根节点 root &#xff0c;返回它节点值的 前序 遍历。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,2,3] 做了这么久的树问题&#xff0c;现在开始回忆三种遍历方法&#xff0c;这篇文章…

C#上位机与三菱PLC的通信06--MC协议之QnA-3E报文测试

1、A-3E报文回顾 1、存储区分类及访问规则 2、命令类型 命令由主命令子命令组成 3、报文结构 2、启动mc服务器 3、创建VS项目 这节继续使用上节的VS2022的项目&#xff0c;增加一个方法 MCTestA3E()&#xff0c;具体怎么创建项目&#xff0c;见上节的过程。C#上位机与三菱…

Spring Security学习(六)——配置多个Provider(存在两种认证规则)

前言 《Spring Security学习&#xff08;五&#xff09;——账号密码的存取》一文已经能满足一般应用的情况。但实际商业应用也会存在如下的情况&#xff1a;用户提交的账号密码&#xff0c;能在本地的保存的账号密码匹配上&#xff0c;或者能在远端服务认证中匹配上&#xff…

171基于matlab的随机共振微弱信号检测

基于matlab的随机共振微弱信号检测&#xff0c;随机共振描述了过阻尼布朗粒子受周期性信号和随机噪声的共同作用下,在非线性双稳态系统中所发生的跃迁现象. 随机共振可用于弱信号的检测。程序已调通&#xff0c;可直接运行。

Linux用到的命令

1 压缩文件 tar -czf wonderful.tar.gz pm 这个命令的作用就是创建一个以.tar.gz结尾的包文件&#xff0c;然后调用gzip程序将当前目录下的pm文件夹压缩到这个以.tar.gz结尾的文件里面去

Colmap学习笔记(一):Pixelwise View Selection for Unstructured Multi-View Stereo论文阅读

1. 摘要 本文展示一套MVS系统&#xff0c;该系统利用非结构化的图片实现鲁棒且稠密的建模。本文的主要贡献是深度和法向量的联合估计&#xff0c;用光度和几何先验进行像素筛选&#xff0c;多视图几何一致项&#xff0c;该项同时进行精修和基于图片的深度和法向量的融合。在标…