jd 逆向补环境

Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

5.1 jd补环境

1. 基础补环境(显式)

使用代理, 对环境进行监测, 补全显示环境; (这个应该都会, 不多说)

2. 补环境要点(隐式)

方法

在代理中 加入 debugger断点, 可以知道 检测环境的控制流在哪里
然后跟栈一步步调试,找到检测的点
(加快的方法: 在控制流中 在 判断\call函数调用的地方进行断点)

  1. document.all(特性和原型链)
  • document.all == null --> 需要打断点, 找到 运算结果赋值或比较函数, 手动添加判断
  • typeof document.all == undefined --> jd中并没有 找到检测的地方
  • document.all.proto == HTMLAllCollection.prototype
  1. document

body和head中子标签的个数(不同jd网站不同, 同一网站个数也可能变化)

  1. navigator.plugins 是否存在(目前只会取长度)
  2. 专门设置报错 ,捕获报错, 检测报错

是否含有 node:internal/ (本地node环境 报错提示中有 node:internal/)–> 需要, 打断点, 找到 运算结果赋值或比较函数, 手动添加判断
在这里插入图片描述

  1. 检测window, 会使用 toString()方法将window转换为字符串, 与在浏览器转换后的字符串进行比较
  • 绕过方法:
      1. 对window的toString()方法进行重写, 拦截, 返回自定义字符串
      1. 在比较判断时, 判断是否为检测window, 若检测的是window, 则返回true
      1. 初始化window时, 使用 window = new Window()

其他

在跟栈调试过程中 还会发现有其他可以检测的点, 但并没有进行监测,各位师傅们可以尝试分析一下

想要代码, 微信联系
交流微信: s15835001049

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值