js逆向补环境-b站志远二期最后8节课笔记

2023-10-25 14:20

本文主要是介绍js逆向补环境-b站志远二期最后8节课笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

      • 一、基础知识
        • 1、什么是纯净V8
        • 2、什么是BOM和DOM
        • 3、node环境/浏览器环境/V8引擎区别
        • 4、如何本地调试js补环境
        • 5、补环境相对于逆向算法的好处
        • 6、vm和vm2介绍
      • 二、8个视频内容笔记概括
        • 1、补环境基本知识/头条案例手动插桩补
        • 2、Proxy代理/toString函数保护介绍
        • 3、补环境框架设计思路特点
        • 4、拼多多案例介绍如何补环境
        • 5、补DOM-Document
        • 6、补BOM-window-localstorage
        • 7、补BOM-navigator-plugin/mimetype
        • 8、补BOM-pluginArray/MimeTypeArray

一、基础知识

1、什么是纯净V8
  • 1、什么是纯净V8参考文章:V8 (Google),用 C++编写,开放源代码,由 Google 丹麦开发,是 Google Chrome 的一部分,也用于 Node.js。
    在这里插入图片描述
    在这里插入图片描述
  • 2、纯净V8是Google Chrome浏览器组成中的JavaScript引擎,它是一个高性能的JavaScript解释器,用于解析和执行JavaScript代码在纯净V8中,除了V8引擎本身之外,没有其他浏览器相关的组件和功能。因此,开发人员可以使用纯净V8来构建独立的JavaScript应用程序(例如Node.js),而无需依赖于任何浏览器的特定功能和API
    在这里插入图片描述
2、什么是BOM和DOM
  • 什么是BOM和DOM,参考这篇文章,BOM包含DOM
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
3、node环境/浏览器环境/V8引擎区别
  • 1、node环境/浏览器环境区别, 参考这篇文章
    在这里插入图片描述
    ● 2、浏览器官方api查询地址 , JavaScript内置对象,所有不在内置对象的都不是v8引擎自带的,比如Regexp/Object/Proxy是v8有的, global不属于v8属于node特有的
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

4、如何本地调试js补环境
  • 1、参考这个视频介绍,以及对应的[参考这篇文章目录三] (https://blog.csdn.net/weixin_43411585/article/details/131607539) , 主要依赖使用Proxy来监测拦截浏览器环境API的使用,辅助补浏览器环境
    在这里插入图片描述
5、补环境相对于逆向算法的好处
  • 补的越完善,兼容的网站就越多,相当于自己伪造了一个简易的浏览器,最终可能实现通杀所有JS环境检测
  • 比如阿里/瑞数等大型反爬js,补环境的速度可能更快,相比逆向算法耗时短
  • 补环境缺陷运行时间长,耗资源
6、vm和vm2介绍
  • vm/vm2介绍:https://www.npmjs.com/package/vm2 ,相当于重新启动了一个进程,不允许你加载各种node的东西,把node的相关属性给全部干掉,然后做了一个沙箱,然后把我们的js放到这个沙箱里面去运行,所产生的任何效果相当于在v8环境运行的,而不是node环境运行的

二、8个视频内容笔记概括

  • 参考b站志远二期补环境最后八节课总结的知识点
1、补环境基本知识/头条案例手动插桩补

在这里插入图片描述

2、Proxy代理/toString函数保护介绍

在这里插入图片描述

3、补环境框架设计思路特点

在这里插入图片描述

4、拼多多案例介绍如何补环境

在这里插入图片描述

5、补DOM-Document

在这里插入图片描述

6、补BOM-window-localstorage

在这里插入图片描述

7、补BOM-navigator-plugin/mimetype

在这里插入图片描述

8、补BOM-pluginArray/MimeTypeArray

在这里插入图片描述

这篇关于js逆向补环境-b站志远二期最后8节课笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/283167

相关文章

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

python获取cmd环境变量值的实现代码

《python获取cmd环境变量值的实现代码》:本文主要介绍在Python中获取命令行(cmd)环境变量的值,可以使用标准库中的os模块,需要的朋友可以参考下... 前言全局说明在执行py过程中,总要使用到系统环境变量一、说明1.1 环境:Windows 11 家庭版 24H2 26100.4061

pytest+allure环境搭建+自动化实践过程

《pytest+allure环境搭建+自动化实践过程》:本文主要介绍pytest+allure环境搭建+自动化实践过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、pytest下载安装1.1、安装pytest1.2、检测是否安装成功二、allure下载安装2.

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1

SpringBoot实现多环境配置文件切换

《SpringBoot实现多环境配置文件切换》这篇文章主要为大家详细介绍了如何使用SpringBoot实现多环境配置文件切换功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 示例代码结构2. pom文件3. application文件4. application-dev文

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见

MyBatisX逆向工程的实现示例

《MyBatisX逆向工程的实现示例》本文主要介绍了MyBatisX逆向工程的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录逆向工程准备好数据库、表安装MyBATisX插件项目连接数据库引入依赖pom.XML生成实体类、