某土地市场网JS逆向:debugger脚本限制秒退和webpack hash参数加密

🔍某土地市场网逆向思路

🚫 解决网页反debugger

🔍 网页禁止打开开发者工具

在访问中国土地市场网时,我们会发现网页禁止了开发者工具的使用,包括F12和右键调试。

🔍强制进入开发者工具 窗口关闭并回退

这种反debugger机制会导致强制进入开发者工具时,网页自动跳转。

💡 解决方法:事件监听断点调试

我们可以通过事件监听断点调试的方法找到限制脚本的位置。找到脚本后,将限制代码删除,并开启本地替换,这样就可以正常使用开发者工具了。

🔍 抓包请求接口,发现请求头hash值加密

使用抓包工具捕获请求接口的数据包,发现请求头中的hash值是经过加密的。

🧩 全局搜索hash相关代码,找到代码加密位置

在JS代码中全局搜索hash=,我们可以定位到具体的加密代码位置。代码中提到hash参数是由一个函数生成的,该函数接收的参数为useragent、当天日期以及url的最后一个元素。

其中有一串代码

js 复制代码
n = (c.a.isKey("manageLoginToken") && (n = c.a.get("manageLoginToken"),
                !Object.prototype.hasOwnProperty.call(e, "manageLoginToken")) && n && (e.Authorization = "Bearer " + n),
                i("lPiR"))

该表达式意思:如果 && 4个条件都成立 赋值i("lPiR")

🔍 分析代码结构,为典型的webpack加密

通过分析代码结构,发现这是一个典型的webpack加密模式,变量名、属性名和方法名都经过了混淆。

💻 扣取JS代码

扣取生成hash参数的关键JS代码,并整理成可用的代码片段。

🐍 Python调用JS代码

使用Python调用扣取的JS代码,模拟生成请求头中的hash值。

💡 成功获取数据

最终通过正确生成的hash值请求数据接口,成功抓取到某土地市场网的数据。

相关推荐
yannan201903135 分钟前
【算法】(Python)动态规划
python·算法·动态规划
埃菲尔铁塔_CV算法7 分钟前
人工智能图像算法:开启视觉新时代的钥匙
人工智能·算法
EasyCVR8 分钟前
EHOME视频平台EasyCVR视频融合平台使用OBS进行RTMP推流,WebRTC播放出现抖动、卡顿如何解决?
人工智能·算法·ffmpeg·音视频·webrtc·监控视频接入
linsa_pursuer9 分钟前
快乐数算法
算法·leetcode·职场和发展
小芒果_0110 分钟前
P11229 [CSP-J 2024] 小木棍
c++·算法·信息学奥赛
qq_4340859011 分钟前
Day 52 || 739. 每日温度 、 496.下一个更大元素 I 、503.下一个更大元素II
算法
Beau_Will12 分钟前
ZISUOJ 2024算法基础公选课练习一(2)
算法
XuanRanDev14 分钟前
【每日一题】LeetCode - 三数之和
数据结构·算法·leetcode·1024程序员节
蒙娜丽宁15 分钟前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!
python·opencv·计算机视觉
gkdpjj16 分钟前
C++优选算法十 哈希表
c++·算法·散列表