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

Js逆向案例 Scrape Spa2(Webpack自吐)

逆向目标

  • 翻页请求时携带的token
  • https://scrape.center/ SPa2案例

抓包

逆向分析

搜索token定位

在这里插入图片描述

发现由 e = Object(i["a"])(this.$store.state.url.index, a)生成

在这里插入图片描述

在这里下个断点 。

参数为字符串api(页数-1)*10 ,进入到Object(i["a"])加密逻辑中

在这里插入图片描述

算法比较简单,可以自己实现或者扣代码,这里使用扣代码的方式,这个代码是webpack打包的 ,可以参考
Webpack原理及如何扣代码

在这里插入图片描述

Object(i["a"])i["a"]是一个对象,所以``Object(i[“a”]) 等于 i[“a”],然后找到定义i[“a”]`定义处,看到是调用了一个模块

接下来只需要把加载器和调用的模块拿下来,然后调用

首先进入到加载器定义的位置,然后把全部js代码拿下来,然后导出加载器

在这里插入图片描述

模块通过自吐来获取

1.在模块调用处打上断点

在这里插入图片描述

2.刷新页面,在断点处停住后进入到上一步调用栈,进入到加载器函数,将缓存置空r = {},定义一个新对象aaa = {}用于存放后续加载的函数

在这里插入图片描述

3.在加载器第一行添加一个条件断点,将需要加载的方法设置到我们刚刚定义的空对象中,其中e是传入的装载了所有模块的大对象或数组

aaa[t] = e[t],false

在这里插入图片描述

3.释放当前断点,跳到下一个断点,此时aaa中已经加载了调用7d92所需要的模块

在这里插入图片描述

4.将这个对象合并成字符串,

Object.entries(aaa).map(([key, value]) => `"${key}":${value}`).join(",")

在这里插入图片描述

5.然后将7d92模块及上面合并得到的字符串置入到我们本地的加载模块中,

在这里插入图片描述

最后根据定义的方法调用即可

在这里插入图片描述

http://www.lryc.cn/news/625707.html

相关文章:

  • Ansible 大项目管理实践笔记:并行任务、角色管理与负载均衡架构部署
  • 基于Python的宠物服务管理系统 Python+Django+Vue.js
  • 当机器猫遇上具身智能:一款能读懂宠物心思的AI守护者
  • XML 序列化与操作详解笔记
  • Gemini CLI 自定义主题配置
  • 块存储 对象存储 文件存储的区别与联系
  • es9.0.1语义检索简单示例
  • RNN(循环神经网络)和Transformer是处理自然语言处理(NLP)任务区别
  • 《用Proxy解构前端壁垒:跨框架状态共享库的从零到优之路》
  • 高校数字化转型实战:破解数据孤岛、构建智能指标体系与AI落地路径
  • C++代码解释:实现一个 mystring 类,用于表示字符串,实现构造函数,默认构造长度为 10 的空间,提供打印字符串,获取空间大小,修改内容的成员函数
  • InnoDB为什么使用B+树实现索引?
  • Word——正确调整文字与编号的距离
  • 4.Kotlin 集合 Map 所有方法
  • Linux系统安全补丁管理与自动化部署研究与实现(LW+源码+讲解+部署)
  • Ubuntu 20 各种网卡配置IP的方法
  • pnpm 和 npm 差异
  • MySQL 三大日志:redo log、undo log、binlog 详解
  • Git+Jenkins实战(一)
  • 软件测试核心概念拆解:需求、开发模型与测试模型全解析
  • JVM调优实战指南:从原理到落地的全面优化方案
  • 安装DDNS-go
  • FlexSim-线平衡优化仿真
  • Qt元对象
  • Qt消息队列
  • es7.x es的高亮与solr高亮查询的对比对比说明
  • 使用Tomcat Clustering和Redis Session Manager实现Session共享
  • Auto-CoT:大型语言模型的自动化思维链提示技术
  • 基于“R语言+遥感“水环境综合评价方法技术应用——水线提取、水深提取、水温提、水质提取、水环境遥感等
  • STM32-FreeRTOS快速入门指南(下)