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

【学习心得】爬虫JS逆向通解思路

        我希望能总结一个涵盖大部分爬虫逆向问题的固定思路,在这个思路框架下可以很高效的进行逆向爬虫开发。目前我仍在总结中,下面的通解思路尚不完善,还望各位读者见谅。

一、第一步:明确反爬手段

反爬手段可以分为几个大类

(1)检查请求头信息

服务器会检查User-Agent、Referer、检查加密的URL/API参数等等。

(2)对JS压缩、混淆和加密

JS代码运行在客户端是公开透明的所以有必要为了反爬进行一些处理。

(3)IP限制

(4)验证码

(5)字体反爬

二、第二步:针对不同的反爬手段采集相应的策略

(1)若为“URL/API参数加密”

a、寻找并快速定位加密入口【寻找入口、快速定位】

b、找到入口后进行调试分析【调试分析、破解加密】

c、分析过后通过代码模拟执行生成加密参数【模拟执行、生成参数】

(2)若为JS压缩、混淆和加密

a、若是JS压缩:可用浏览器代码格式化、复制到pycharm里进行代码格式化

b、若是JS混淆:则需要再判断混淆手段

        变量混淆、常量混淆、控制流平坦化、调试保护等等

c、若是JS加密:测需要再判断加密方式

        AES、MD5、SM、SHA-1、Base64等等

三、总结

        JS逆向技术内容非常庞大繁杂,我画了一张思维导图帮助大家理解。图中还有部分内容由于本人尚在学习中所以还不全面。

JS逆向技术总结
JS逆向技术总结

        

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

相关文章:

  • 如何使用Logstash搜集日志传输到es集群并使用kibana检测
  • AutoEncoder和 Denoising AutoEncoder学习笔记
  • 计算机系统基础
  • live555学习 - 环境准备
  • C++ 模拟OJ
  • MariaDB MaxScale实现mysql8读写分离
  • 代码随想录day11(1)字符串:反转字符串中的单词 (leetcode151)
  • PlantUML - 时序图
  • VS Code 的粘性滚动预览 - 类似于 Excel 的冻结首行
  • Java中的List
  • Spring 框架模块深度解析:核心容器、数据访问、Web 层与其他关键模块
  • 前端配置开发环境,新电脑配置前端开发环境,Vue开发环境配置的详细过程(前端开发环境配置,电脑重置后配置前端开发环境)
  • 大模型(LLM)的量化技术Quantization原理学习
  • 2024.03.01作业
  • 力扣hot100:42.接雨水
  • 搜索回溯算法(DFS)1------递归
  • workstation 用途
  • 【三维重建】【SLAM】SplaTAM:基于3D高斯的密集RGB-D SLAM(CVPR 2024)
  • Go Barrier栅栏
  • [蓝桥杯 2023 省 B] 冶炼金属
  • 续Java的执行语句、方法--学习JavaEE的day07
  • 公网IP怎么获取?
  • 连接未来:探索嵌入式系统的智能化之路
  • 基于STM32制作的示波器(可对任意信号进行描点)
  • WEB APIs (5)
  • 物联网常见协议篇
  • Kubernetes-1
  • SpringMVC框架②
  • springboot230基于Spring Boot在线远程考试系统的设计与实现
  • 盘点:国家智能算力中心