逆向实战28——补环境过瑞数6

前言

本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!此外出于某种原因。本章大部分调试会省略,仅简单说个大概。

之前写了补环境瑞数4的流程。小伙伴有空可以翻一下历史记录。回顾一下。

今天我们来学习一下瑞数6的补环境流程。

网站

aHR0cHM6Ly93d3cubm1wYS5nb3YuY24vZGF0YXNlYXJjaC9ob21lLWluZGV4Lmh0bWw=

瑞数简述

如何分辨瑞数6?

第一点: 首次请求网页状态码返回202或者412。基本可以确定这个网站是瑞数反爬。

第二点:瑞数的cookie 主要分成两个

  1. 直接请求网页服务器抛给你的。
  2. 是通过js 自执行函数以及content生成的。

我们可以通过第一个(也就是服务器返回给你)cookie的value的第一个数字 来区分这是第几代版本。

这里可以去搜搜B站上视频里面有教你怎么分辨。

我这里只说个大概了。

分析

首先打开网站 > F12

熟悉的debugger; 这个网站不太一样。加了环境判断。不然内存直接爆炸。让你电脑卡死

再console中添加如下代码

js 复制代码
location = {
    'href': /*脱敏数据*/,
};
top = {'location': location};

然后我们打开控制台。可以看到。412请求。并且cookie中还返回了一个cookie 60e... 代表这个是六代的一个cookie。

然后我们基本就分析完了。

对没错 就是这么简单。

我们需要的内容只有两部分

  1. 412 页面返回给我们的内容。
  2. 412 页面中外联给我们的JS。

这个时候 有人可能要问。那自生成的VM的虚拟代码呢?

答: 不用管。因为我们环境补好了 他会自己生成的。

我们刚刚分析完了。那接下来。

让我们整理一下刚刚分析的结果。

我们要生成cookie需要哪几部分?

直接看网站412页面。

这个页面和四代五代都不要用。没有冗长的自执行函数了。

但是大体也可以分为一下几个步骤。

图中 我标了四部分。

  1. content部分 (这也是老朋友了 不过老朋友变小了)
  2. window.$_ts (老朋友了。不过换了个装)
  3. 外链的JS(这里其实也是老朋友了,自执行函数。不过现在不在一个页面了)
  4. 执行的函数(这个就是执行已经生成好的JS的一个函数。不用管)

所以我们只需要把content,window.$_ts, 外链的JS

放到一个里面 就能生成cookie

看 还是和四代五代一样。换汤不换药。

浏览器调试

上文已经分析完了。生成JS所需要的代码。

我们先不要着急去补,先放到浏览器中运行看看。

看看到底能否生成cookie,要是生成不了,

那上面说了一大堆 不是白扯。

浏览器中都运行不起来 更别说再node中了。

ok 完美生成。那我们就可以着手去补环境了。

node调试

既然我们都已经知道大概流程。就全丢进node里执行。然后一步一步补就行了。

这里推荐用代理框架一个一个慢慢对照着补。

这里我就不具体写了。

公众号里写了一部分 有兴趣的可以看看。

再来说一下有哪些监测点吧。

首先以下的某些地方一定要注意!!

  1. 检测到你的目录和你的文件地址。
  2. location中hostname参数比较重要。这个是影响cookie长度的重要参数。
  3. document.getElementsByTagName 和 getElementById
  4. addEventListener函数 还有一些触发器函数。

全部补完 然后请求就行了 补环境真的很简单 不用研究什么数组 算法。

算是快速通关的一种方式吧。

结果

然后请求出来是这样的。

为了保证每次JS以及代码的灵活性,我把没有把单链的JS写死

结语

可能文章写的不咋地。希望大家谅解。

看看有没有人需要rs5。

下一篇准备更新rs5 或者rs6的后缀。

有问题的同学记得私信。平台上回复有可能不及时。最好加一下公众号。

最近和小伙伴新建了个微信公众号和星球。有兴趣的小伙伴可以加一下。

公众号链接
星球链接

相关推荐
我就说好玩7 天前
使用Scrapy框架爬取博客信息
scrapy·pycharm·网络爬虫·spider
始識8 个月前
逆向实战33——某东登录参数与流程分析(包含滑块)
spider
始識1 年前
JS逆向实战26——某店ua模拟登陆
spider
始識1 年前
JS逆向实战24—— 补环境过某房地产瑞数4.0
spider