2021-09-07JS逆向之空气质量历史数据查询

Posted 阿J~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-09-07JS逆向之空气质量历史数据查询相关的知识,希望对你有一定的参考价值。

文章仅供学习使用,请勿用于非法活动


前言

目标网站:aHR0cHM6Ly93d3cuYXFpc3R1ZHkuY24vaGlzdG9yeWRhdGEvZGF5ZGF0YS5waHA/Y2l0eT0lRTYlOUQlQUQlRTUlQjclOUUmbW9udGg9MjAyMTA5

反爬类型:反调试,动态js,数据加密


一、页面分析

打开网页后,f12调用开发者工具,弹出提示框

解决办法:点这玩意设置里直接打开开发者工具,或者新开一个网页,f12再进链接

然后成功打开了,页面马上段住,直接never pause here 跳过

接着页面不给数据,出来这么些玩意

然后下js断点,重新进网页

这里段住,进eval,有两个函数 endebug、txsdefwsw用来反调试的,加载eval后直接将这两函数置空即可。

继续走,到首页下面还有两eval

可以清楚的看到一些检测的东西,逐一修改检测值即可避过检测

反调试总结

  1. function endebug(off, code) {};function txsdefwsw() {};
  2. window.innerHeight = 1024;
  3. window.clearInterval(handler);

二、数据获取

解决完反调试后,再下一个xhr断点,这里段住,可以看出请求参数和加密的数据

网上跟就可以看到加密的函数

自然解密的js也在这个里面

这个请求的js 就包含了上面动态的加解密js,文件链接在页面源码里

还有些解密用到的函数,都在一开始的eval里,直接扣下来就行

然后最麻烦的就是怎么获取动态的js了,经测试发现,这个网站没10分钟会动态一次js,且都在xx:x5时间点上,所以调试的时候尽量保存在本地,除非你10分钟就可以搞出来

他的js加密大致有三四套的样子,有直接eval就出js的,还有一次bs64解密跟两次bs64解密后出来的,这些都不重要,之后就写个正则匹配那些调用的方法即可

三、总结

直接eval出js

一次bs64解密

两次bs64解密

结果

以上是关于2021-09-07JS逆向之空气质量历史数据查询的主要内容,如果未能解决你的问题,请参考以下文章

Python进阶必备之JS逆向-某榜某博数据采集

Python进阶必备之JS逆向-某榜某博数据采集

Python进阶必备之JS逆向-某榜某博数据采集

爬虫之js逆向(易车网实例)

2022-01-11JS逆向之拉钩登入(上)

#yyds干货盘点# Python网络爬虫之js逆向之远程调用(rpc)免去抠代码补环境简介