32_阿里227逆向分析

Date
Feb 22, 2024
Created
Mar 2, 2024 03:12 PM
Tags
JS逆向实战

前言

本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 公众号链接星球链接

目标网站

aHR0cHM6Ly93ZS41MWpvYi5jb20=
227的很多。可以自己去找。不是不写 太长了 一大坨。我只能告诉你我爬的是这个站点。

目标

notion image
如上图 我们要过这样的滑块验证码
notion image
滑过之后。
nocaptcha/analyze.jsonp
这个链接中的 `n` 参数 以227!开头的。 我们需要把这个参数逆向出来。

参数分析

首先第一步。我们得找到是哪里生成的吧 那我们如何找到是哪里生成的呢? 这里提供两种解决方案。
  1. 跟栈(说实话任何一个项目都可以通过这个方法 但是这种方法效率非常低)
  1. 通过监控鼠标事件
这里我们不犹豫肯定是监控鼠标事件的。
notion image
如上图所示。勾选这两个参数。然后鼠标点击验证码开始滑动。 然后就开始进入堆栈了。 跳过第一个栈。到达下图位置
notion image
可以看到这个位置其实就是一些坐标轴的信息。比如x和y等等。 那基本可以确定就是这一圈了。 继续往下看。
notion image
可以看到这个地方是添加事件。根据不同的鼠标事件执行不同的方法。 我们可以挨个去看。这里因为时间原因。就不浪费时间了 进入
f, "mousemove", s
中的s方法。 继续
notion image
继续往下走
notion image
到达生成处
notion image
虽然这个值的确能生成227.但是我们不确定这个值是否为正确的。先不管。打上断点再说。 继续往下看。
notion image
ok 这个位置显而易见就是当时的那个params参数中的
n
notion image
结果也正是。 这里已经找到生成的位置了。但具体还需要点进函数内部去看。 由于这是添加鼠标事件。是函数 并不是执行没办法进断点。

通过鼠标进栈

这个时候要进栈。需要把
mousedown
notion image
然后划过滑块 不放开。这个就能进入栈。 ok 继续
notion image
这是个过程。要有耐心的一点点看。 后面就简单了 通过单步调试
notion image
到这个地方。可以了 这个地方就是最终生成的位置。

逆向。

这里拿到了
i(40, e)
这个参数。
notion image
可以看到 e就是这个值是定值 写死就行。 至于这个i。 这里篇幅问题就不展开了。有很多种方法去过。 这里简单介绍两种把
  1. 还原
  1. 补环境
遇事不决补环境。 大概补个1000行左右就行了。 吐出来的环境比我的命都长。 建议有能力的还是switch还原一下吧。

结语

这里就搞出来了。 具体补环境教程。 已经放到星球里了 (插一句题外话。下个月星球涨一波价格。要加的赶紧加。) 毕竟也搞了大半天。 这里感谢 江夏大佬对我的支持。大部分都是他指导我的 确实自己一个人研究有点费力。 详细文章如下:
https://articles.zsxq.com/id_sg9hm8crwhpx.html
这里轨迹的话。我自己也没研究个明白。研究明白再水一篇。 只能说搞得这个贝塞尔曲线。普通的227还是随便过的。 至于说淘宝的x5sec 成功率有点感人。
notion image