IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> js逆向案例-某知x-zse-96补环境与扣逻辑 -> 正文阅读

[JavaScript知识库]js逆向案例-某知x-zse-96补环境与扣逻辑

一、流程简单了解

二、补环境的方式

  • 这个案例网上太多太多太多太多了,那我就跟着前辈的20篇文章思路,补环境试一试,此次补环境(node下npm install jsdom)需要的代码如下
    const jsdom = require("jsdom");
    const { JSDOM } = jsdom;
    const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
    window = dom.window;
    document = window.document;
    XMLHttpRequest = window.XMLHttpRequest;
    
  • 定位入口:采用搜索关键词x-zse-96定位,如图11703行的signature打上断点,x-zse-96=“2.0_” +signature,如图只需要研究u()函数,而u()函数就是__g._encrypt(encodeURIComponent(e))这个结果
    在这里插入图片描述
  • 所以研究__g._encrypt函数,__g._encrypt函数又是r()函数,所以扣r()函数所在的范围部分,__g._encrypt函数传入md5值即可解出我们要的signature
    在这里插入图片描述
  • r()函数如下,这里直接将当前js文件所有的js代码先复制下来,然后把所有函数先折叠起来
    在这里插入图片描述
  • 然后搜索var A = "2.0"去定位函数体,扣出函数体
    在这里插入图片描述
  • 接着头部加上相关环境jsdom,尾部加上输出,测试运行即可生成signatrue
    在这里插入图片描述
  • 至此补环境结束,测试结果正常,这个案例单看补环境分分钟解决问题(前辈文章太多约20篇,所以就比较容易),不过也可以看看扣算法的方式
    在这里插入图片描述

三、扣逻辑的方式

  • 定位入口:采用搜索关键词x-zse-96定位,如图11703行的signature打上断点,x-zse-96=“2.0_” +signature
    在这里插入图片描述

  • 清除缓存,刷新定位,js中signature: u()(f()(s))分析见图中,我们要研究signature就是研究这个u()函数即可
    在这里插入图片描述

  • u()函数如图,经过深层的调试,我们会到如图G.prototype.v 的位置,在37026行打上日志断点"索引:", this.C, " 值:", JSON.stringify(this.r),然后清除缓存刷新输出大概有1.7k的日志,从日志里面推算算法逻辑
    在这里插入图片描述
    在这里插入图片描述

  • signature是由11部分组成,且4个为一组
    在这里插入图片描述

  • 这篇文章,以及这篇文章,会了解如何逆推算法,最终算法就30多行
    在这里插入图片描述
    在这里插入图片描述

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 11:22:00  更:2022-02-26 11:22:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:52:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码