瑞数 vmp js逆向 (补环境)

注:本篇博客仅供学习使用,请勿用做其他商业用途,如有侵权,请联系本菜鸟删除

写在前面:本小菜鸟已经有一年多时间没更新博客了,在这段时间中一直处于摆烂状态,而且在这段时间中各种大佬都出了直接的js补环境框架,环境框架那种一力破万法的方式很强,我很羡慕,但是我是菜鸟没得那么强的js功底,扣逻辑起码得把博主痔疮坐出来(直接劝退),所以今天发一点纯补js过瑞数vmp的文章以供大家学习参考

现在是人均瑞数时代,只要涉及gov网站的或多或少都会和瑞数打打交道,不少爬虫新手被这个玩意儿打击的不轻,今天我们也来一个类似的网站

学习目标网址:

aHR0cDovL2NyZWRpdC5jdXN0b21zLmdvdi5jbi9jY3Bwd2Vic2VydmVyL3BhZ2VzL2NjcHAvaHRtbC9jY3BwaW5kZXguaHRtbA==

一、瑞数vmp特征

1.第一次请求网页状态返回状态为412或者202,那么基本可以确定这是瑞数反爬了
在这里插入图片描述
2.响应码中如下:
在这里插入图片描述
以及请求200携带的本地cookie没有数字开头,从上面几个方面可以基本确定是瑞数vmp版本

二、准备工作

1.将412页面返回给我们的meta_content和js代码以及外链js代码扣取下来放入一个js代码中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、补环境

1.补第一层的js环境

运行一次上面的js代码
在这里插入图片描述
后面会依次出现document,location,我们还是本着缺啥补啥的原则一一补上

window = globalThis;
document = {}
location = {
    "ancestorOrigins": {},
    "href": "http://xxxx/index.html",
    "origin": "http://xxx.xx.cn",
    "protocol": "http:",
    "host": "xxx.xx.cn",
    "hostname": "xxx.xx.cn",
    "port": "",
    "pathname": "xxx/index.html",
    "search": "",
    "hash": ""
};
navigator = {
    userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36",
    languages: ["zh-CN", "zh"],
    }
}

在这里插入图片描述

这里我们已经补完location,但是依旧提示我们location undefined ???
这特么谁受的了,这我能忍??直接给我整红温了
直接加上我的proxy代理器
在这里插入图片描述
然后直接提醒我window.top ---> undefined
在这里插入图片描述
好嘛,我们直接把这个给补上

window.top = window;

后面直接给我出现_$dE[_$m_[43]] is not a function
在这里插入图片描述
这表示第一层js代码以及补完,下面我们正式进入第二层call

2.补第二层js环境

还是把window的代理加上

提示我们localStorage没有,所以我们把localStorage补上

在这里插入图片描述
由上图可知,实例对象localStorage上是没得任何方法的,所以我们要补localStorage原型上的方法

在这里插入图片描述
后面还有window.document.createElement需要我们补
在这里插入图片描述
好了window的先就讲这么多,其他的由同学们自己去补齐
后面的我们依次将document、navigator、location等加上代理
document检测了createElement等
此外代码中还有定时器,触发定时器node代码会一直跑
在这里插入图片描述

所以我们要把这个定时器处理掉

window.setInterval = function (){}
document.appendChild = function (){}
document.removeChild = function (){}

而且还检测了事件监听
在这里插入图片描述
太多了。。。,算了算了,不写了,选择躺平
在这里插入图片描述
最后成功拿到cookie成功请求到200页面
在这里插入图片描述
在这里插入图片描述
少更新文章是希望各位爬虫伙伴不要那么卷,希望大家理解!拜拜,下班躺平

  • 10
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值