• aqistudy真气网JS逆向 + 数据采集(20220801)


    说明:仅供学习使用,请勿用于非法用途,若有侵权,请联系博主删除

    作者:zhu6201976

    一、目标站点分析

    站点:https://www.aqistudy.cn/?mobile=false

    难度系数:中级

    反爬点:

            1.反调试:无限debugger + 禁用F12 + 禁用CTRL+S + 禁用右键 + 检测浏览器内宽高......

            2.JS动态返回

            3.JS混淆

            4.JS加密:请求参数加密且参数不固定 + 响应加密

     

    禁用F12

    访问目标网站,按下F12,弹窗提示:

    绕过方式:提前打开F12 或 CTRL+SHIFT+I

    禁用右键:

    绕过方式:代理中间人拦截修改响应检测点 

    无限debugger

    访问目标网站,提前按下F12,进入无限debugger:

    绕过方式:never pause here

    说明:网站反调试主要集中在以下两个链接,可直接使用mitmweb + Python脚本解决,一劳永逸。

    https://www.aqistudy.cn/?mobile=false

    https://www.aqistudy.cn/html/city_realtime.php?v=2.3

    二、分析流程: 

    1.无线debugger --> never pause here


    2.反调试脚本绕过 mitmweb -p 8890 -s mitmweb_test.py

    https://www.aqistudy.cn/?mobile=false --> mitmweb 脚本替换 https://www.aqistudy.cn/html/city_realtime.php?v=2.3 mitmweb 脚本替换


    3.encrypt_e9OKk3qfXQqT.js 动态返回 --> GET https://www.aqistudy.cn/html/city_realtime.php?v=2.3 提取js链接 请求


    4.解密encrypt_e9OKk3qfXQqT.js


    5.补充执行环境依赖 https://www.aqistudy.cn/js/jquery.min.js?v=1.3 静态返回


    6.提取 加密函数名称 data加密参数名称 解密函数名称


    7.执行加密函数 请求


    8.执行解密函数 获取结果

    三、代码执行结果

    此处以采集  杭州、北京、上海、广州、深圳 五城市当日Aqi数据为例,以下为执行日志:

     

    四、获取完整代码

    本项目已开源,原创首发,完整代码详见github:https://github.com/zhu6201976/aqistudy20220801

    欢迎star、交流!

  • 相关阅读:
    HK1 BOX刷入 Armbian系统作为服务器
    聊聊GPU与CPU的区别
    遗传算法简单案例笑脸拟合(6*6矩阵)(java)
    AtCoder ABC344 A-E题解
    ElasticSearch--优化写入速度的方法--修改配置
    针对图像分类的数据增强方法,离线增强,适合分类,无标签增强
    关于MAC如何安装ubuntu
    【云原生】Kubeadmin安装k8s集群
    Lambda 表达式怎么用?
    C++ day4
  • 原文地址:https://blog.csdn.net/zhu6201976/article/details/126124548