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

news2024/9/23 19:24:42

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

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

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

(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.coloradmin.cn/o/1488269.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Tabby-全网最详细讲解

1.Tabby简介 Tabby是一个无限可定制的跨平台终端应用程序,适用于local shells、serial、SSH和Telnet的连接。 Tabby是基于TypeScript开发的终端模拟器,可用于Linux、Windows和Mac OS系统。 Tabby (前身是 Terminus) 是一个可高度配置的终端模拟器和 SSH …

如何使用支付宝沙箱环境本地配置模拟支付并实现公网远程访问【内网穿透】

文章目录 前言1. 下载当面付demo2. 修改配置文件3. 打包成web服务4. 局域网测试5. 内网穿透6. 测试公网访问7. 配置二级子域名8. 测试使用固定二级子域名访问 前言 在沙箱环境调试支付SDK的时候,往往沙箱环境部署在本地,局限性大,在沙箱环境…

青少年软件编程(Python)等级考试试卷(一级)2020年3月

青少年软件编程(Python)等级考试试卷(一级)2020年3月 第 1 题 【单选题】 运行下方代码段,输出的是( )。 print("a"*3) A :a3 B :3a C :a a a D :aaa 正确答案:D 试题解析 第 2 题 【单选题】 下…

MySQL基础-----SQL语句之DDL数据定义语句

目录 前言 开启登录数据库 一、数据库操作 1.查询所有数据库 2.切换使用数据库 3.查询当前使用的数据库 4.创建数据库 创建一个hello数据库, 使用数据库默认的字符集。 创建一个itheima数据库,并且指定字符集 5.删除数据库 二、表操作 1.查询当前数据库所有…

深入理解C语言:开发属于你的三子棋小游戏

三子棋 1. 前言2. 准备工作3. 使用二维数组存储下棋的数据4. 初始化棋盘为全空格5. 打印棋盘6. 玩家下棋7. 电脑下棋8. 判断输赢9. 效果展示10. 完整代码 1. 前言 大家好,我是努力学习游泳的鱼,今天我们会用C语言实现三子棋。所谓三子棋,就是…

Progressive Widening

下面的解释来源于论文《Monte Carlo Tree Search With Iteratively Refining State Abstractions》,因为这篇论文的重点不是Progressive Widening,所以就不全文学习了,只摘抄其中关于Progressive Widening的部分。 Progressive Widening&…

shell文本处理工具-shell三剑客1

shell脚本常用基础命令2 shell脚本常用基础命令 shell脚本常用基础命令2一、grep用法二、sed用法2.1p参数 (显示)n参数(只显示处理过的行) 文本处理三剑客:grep sed awk 一、grep用法 grep -E egrep (扩展搜索正文表…

【C/C++随笔】static 的用法和作用

「前言」所有文章已经分类好,放心食用 「归属专栏」C语言 | C嘎嘎 「主页链接」个人主页 「笔者」枫叶先生(fy) static 的用法和作用??? static作用: 作用1修改存储方式:用 static 修饰的变量存储在静态区…

牛客练习赛122

D:圆 正着求删除的最小代价不好做,采用逆向思维,求选择一些不相交的线段使得构成一个圆的代价尽量大,最后答案就是所有线段权值之和减去最大代价。 那么如何求这个最大代价呢?显然区间DP 老套路:破环成链&#xff0…

一文读懂DDoS,分享防御DDoS攻击的几大有效方法

DDoS攻击是目前最常见的网络攻击方式之一。其见效快、成本低的特点,使它深受不法分子的喜爱。每39秒就会发生一次新的网络攻击,全球每天大约发生23000次DDoS攻击。对于未受保护的企业来说,每次DDoS攻击的平均成本为20万美元。可见部署DDoS防御…

LabVIEW齿轮传动健康状态静电在线监测

LabVIEW齿轮传动健康状态静电在线监测 随着工业自动化的不断发展,齿轮传动作为最常见的机械传动方式之一,在各种机械设备中发挥着至关重要的作用。然而,齿轮在长期运行过程中易受到磨损、变形等因素影响,进而影响整个机械系统的稳…

二维码门楼牌管理系统技术服务:门牌编设规则详解

文章目录 前言一、门牌编设规则解读二、区间编号与分段编号策略三、多出入口建筑物的门牌编设 前言 随着城市化的快速推进,门楼牌管理成为城市管理中不可或缺的一环。二维码门楼牌管理系统的引入,不仅提升了管理的效率,也为市民提供了更为便…

poi-tl表格行循环(自定义复杂表头)

输入模板 注:集合使用{{xx}}进行标识(在其需要循环的上一行进行标识),[xx]中的内容表示集合中对象属性 public static void main(String[] args) throws IOException {Map<String, Object> map new HashMap<>();LoopRowTableRenderPolicy policy new LoopRowTab…

FPGA高端项目:FPGA基于GS2971的SDI视频接收+图像缩放,提供3套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本方案的SDI接收转HDMI输出应用本方案的SDI接收纯verilog图像缩放纯verilog多路视频拼接应用本方案的SDI接收HLS图像缩放HLS多路视频拼接应用本方案的SDI接收HLS动态字符叠加输出应用本方案的SDI接收HLS多路视频…

【Web - 框架 - Vue】随笔 - 通过CDN的方式使用VUE 2.0和Element UI

通过CDN的方式使用VUE 2.0和Element UI - 快速上手 VUE 网址 https://cdn.bootcdn.net/ajax/libs/vue/2.7.16/vue.js源码 https://download.csdn.net/download/HIGK_365/88815507测试 代码 <!DOCTYPE html> <html lang"en"> <head><meta …

【论文阅读-PRIVGUARD】Day4:3节

3 PRIVANALYZER&#xff1a;强制执行隐私政策的静态分析 本节介绍PRIVANALYZER&#xff0c;这是一个用于强制执行由PRIVGUARD追踪的隐私政策的静态分析器**。我们首先回顾LEGALEASE政策语言&#xff0c;我们使用它来正式编码政策&#xff0c;然后描述如何静态地强制执行它们**…

【24最新版PythonPycharm安装教程】小白保姆级别安装教程

今天&#xff0c;我就来教大家一下&#xff0c;如何去安装Python&#xff01; 需要博主打包好的一键激活版Pycharm&&Python也可扫下方直接获取 ​ 1 了解Python Python是一种面向对象的解释型计算机程序设计语言&#xff0c;由荷兰人Guido van Rossum于1989年发明&…

调试工具vue,react,redux

React Developer Tools Redux DevTools Vue devtools 使用浏览器官方组件扩展搜索安装

阿克曼转向车型导航末段位姿调整控制

1目标 分析RPP算法时控制器算法学习1-RPP受控纯追踪算法发现,在终点时如果角度还有较大偏差,该算法无法进行很好的调整,故开始尝试在末端接近目标点时,用自己的控制算法去调整位姿,姑且命名为TEA算法(Target-End-Adjust Algorithm for Ackermann) 2控制思路 step1. 将…

nginx使用详解--缓存

Nginx 是一个功能强大的 Web 服务器和反向代理服务器&#xff0c;它可以用于实现静态内容的缓存&#xff0c;缓存可以分为客户端缓存和服务端缓存。 客户端缓存 客户端缓存指的是浏览器缓存, 浏览器缓存是最快的缓存, 因为它直接从本地获取(但有可能需要发送一个协商缓存的请…