当前位置:   article > 正文

关于爬虫js逆向的思路分享和知识总结_如何用chatgpt进行js逆向爬虫

如何用chatgpt进行js逆向爬虫

本文章主要分享爬虫的js方面的知识和特别的知识点  文末有惊喜,最近Chat GPT很火,有想体验的小伙伴文末提供一个GPT体验地址。如果想经常使用可以加入我的知识星球 星球链接地址知识星球

基础部分 

js基础知识点

        关于js中一些很基础的东西不在去详细介绍了,有兴趣的可以去js教学网  去学习了解(后面的补环境也需要用到这个网站),本文讲解一写比较重要和特殊的知识点。

        原型链

                在js中不管是一个实例还是一个原型都存在原型链这个说法(其实就是浏览器中各种对象之间的继承关系,不管是原型还是实例最终都会指向null)

                实例访问原型链的方法 实例.__proto__ 访问到第一个原型对象,可以通过不断地.__proto__ 访问原型对象直到最后为null为止。

                

  1. 示例 document 访问原型链的过程
  2. document.__proto__ //HTMLDocument
  3. document.__proto__.__proto__ //Document
  4. document.__proto__.__proto__.__proto__ //Node
  5. document.__proto__.__proto__.__proto__.__proto__ //EventTarget
  6. document.__proto__.__proto__.__proto__.__proto__.__proto__ // EventTarget 下面的方法 __proto__ 指向为null

                原型访问原型链的方法 原型.prototype 访问到第一个原型对象,然后可以通过.__proto__访问原型链。

  1. //例如Element 原型对象访问原型链的方法 并且能看到该原型链下所包含的方法
  2. Element.prototype //访问到 第一个原型对象 Node
  3. Element.prototype.__proto__ //访问到 第二个原型对象 EventTarget
  4. Element.prototype.__proto__.__proto__ //访问到 第三个个原型对象 Object
  5. Element.prototype.__proto__.__proto__.__proto__ // 查看Object 下拥有的方法 并且在这看到 他的__proto指向null

        特殊的方法的调用

        

  1. //函数的定义
  2. 关键词 function 函数名(参数){
  3. 函数内部处理
  4. }
  5. (function(){})--匿名方法 可以直接用变量接受
  6. 自执行方法--在脚本文件一被加载就会执行。
  7. 定义方式:在匿名方法后面加个()即(function(){})()

        arguments 获得函数参数数组

其他

    true+"" 返回 true   任何类型和文本类型相加返回的是文本类型   除文本类型以外的任何类型和整数相加返回的是整数类型

工具的介绍(浏览器)

        浏览器是js逆向中经常用到的工具,笔者在这里建议使用360极速浏览器进行js逆向(360极速浏览器是基于v8引擎开发的和谷歌使用同一款引擎)。

        浏览器的布局设置---保留日志和停用缓存一定要勾上

        笔者的浏览器布局

        

 

js调试基础

        js中的断点分为以下几种断点:条件断点、页面元素断点 、dom断点、事件断点(XHR 断点)

反调试基础

        常见的反调试:格式化检测、无限debugger、禁止控制台调试、

高级部分

如何补环境

        将扣下来的代码,在node环境中运行,缺啥补啥。

        两个原则要么删要么补。

          删 --删除的代码没有参与最后的计算

         补 --参与了本地计算或者提交到服务器

vmp原理讲解

        浏览器的vmp一般是基于栈式虚拟机,找到总栈,对他进行输出能很快的定位到一些很

vmp 基于栈式虚拟机 或 寄存器虚拟机(有栈)
                            性能更快 可以简化复杂语法

        需要找到总栈、op、局部栈
        在vmp中不容忽视的关键词:eval、apply、call

        还有两个不容忽视的API charCodeAt()、String.fromCharCode()

js逆向无他为手熟尔,多调多练。

GPT跳转链接

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/998615
推荐阅读
相关标签
  

闽ICP备14008679号