当前位置: 首页 > news >正文

猿人学js逆向比赛第一届第六题

分析请求

在这里插入图片描述

请求中有m和q是密文,看一下堆栈,定位到这里。注意到这里window.i是+=所以这里要动态传入。

在这里插入图片描述

q函数是简单的字符串拼接,m是r函数然后传入了时间戳和o那下断点调试一下

在这里插入图片描述

可以看到这里实际是调用的z函数。这里看一new的n是什么,可以在这里看到这是一个rsa加密

在这里插入图片描述

同时还定位到了encode函数。然后可以尝试扣代码了,因为rsa为非对称算法,所以现当作标准的如果不对,在返回来扣取这部分。下面是改写的js代码:

encode = function(t, e) {var i = e ? e + "|" + t : t;return encodeURIComponent(RSA_Public_Encrypt(i))
}
function main(i,o){let t = Date.parse(new Date());;let list = {"m": encode(t, o),"q": i+o + '-' + t + "|",};return list;
}

编写python代码尝试调用main函数请求,得到下面的结果:

在这里插入图片描述

这里回到刚才的浏览器中,抠取代码。

扣取代码

在这里插入图片描述

将浏览器代码复制到本地时,发现这堆东西,顺手还原一下:

在这里插入图片描述

然后就在下面看到了navigator,window被赋值为空,这里直接设置window为global,删掉navigator,在全局搜索一下navigator,window,看一下有哪里调用检测的。然后手动将他们参照浏览器修改,同时这里发现一段jsfuck混淆的代码,扔然复制到浏览器,然后修改对应的值;

在这里插入图片描述

再次运行就出值了,然后使用py调用尝试一下。发现只能获取第一页的数据。比较一下有什么区别。

在这里插入图片描述

这里推测是i的问题,因为第一次i是空,那么每次都传空试一下。

在这里插入图片描述

注释掉这行+=的代码,发现就可以正常得到数据了,但很明显这里和浏览器是对不上的,是一个风控点,这里就不再向下推测了。
在这里插入图片描述

http://www.lryc.cn/news/571781.html

相关文章:

  • excel 待办日历软件(需要宏)特别推荐
  • 《挑战你的控制力!开源项目小游戏学习“保持平衡”开发解析:用HTML+JS+CSS实现物理平衡挑战》​
  • 吉林大学软件工程章节测试答案-第八章
  • 数学基础(线性代数、概率统计、微积分)缺乏导致概念难以理解问题大全
  • 每日一篇博客:理解Linux动静态库
  • 一文学懂快浮点数据格式
  • 【深度学习】卷积神经网络(CNN):计算机视觉的革命性引擎
  • 蚂蚁百宝箱+MCP打造p 人解放神器agent,解放大脑
  • 设置环境变量(linux,windows,windows用指令和用界面)
  • HarmonyOS性能优化——感知流畅优化
  • 鸿蒙网络编程系列54-仓颉版实现Smtp邮件发送客户端
  • LVS +Keepalived 高可用群集
  • 51c大模型~合集141
  • maven编译报错java: Compilation failed: internal java compiler error
  • 基于C++实现(控制台)机械提取词频
  • Hive的分区表(静态分区、动态分区)、分桶表、四种排序方式和数据加载方式
  • Linux操作系统之进程(六):进程的控制(上)
  • 鼎捷T100开发语言-Genero FGL 终极技术手册
  • Linux软件管理包-yum和基础开发工具-vim
  • 6.18 redis面试题 日志 缓存淘汰过期删除 集群
  • 【Leetcode】每日一题 —— No.2966
  • milvus和attu的搭建
  • 八种常见的神经网络介绍
  • Ubuntu 使用kubeadm部署k8s系统组件反复重启的问题
  • LVS +Keepalived高可用群集
  • 物联网控制技术期末复习 知识点总结 第六章 物联网控制算法(PID算法 PWM算法)
  • vscode连接不上服务器问题修复
  • 如何运用 AI 工具运营海外社媒账号
  • 借助AI学习编程,走向架构师之路
  • class对象【C#】2025复习