某里227逆向分析

news/2025/1/14 18:00:02/

声明:
该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关。

本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除!

前言

这次会简单的讲解阿里227版本滑块参数n的逆向分析流程以及简单的补环境,如果有疑问可以在评论区交流讨论,我看到会及时回复的,另外,有需要可联系我。

一.目标网站

python">aHR0cHM6Ly93ZS41MWpvYi5jb20=

在这里插入图片描述
如上图 我们要过这样的滑块验证码

在这里插入图片描述

滑过之后。nocaptcha/analyze.jsonp这个链接中的 n参数 以227!开头的。
我们需要把这个参数逆向出来。这个参数与环境和滑块运动轨迹有关。

二.参数分析

1.我们得找到是哪里生成的
那我们如何找到是哪里生成的呢?这里提供两种解决方案。

a.跟栈(说实话任何一个项目都可以通过这个方法 但是这种方法效率非常低)。
b.通过监控鼠标事件。

下面我是通过监控鼠标事件。寻找参数生成的位置。
在这里插入图片描述
如上图所示。勾选这两个参数。然后鼠标点击验证码开始滑动。
然后就开始进入堆栈了。
跳过第一个栈。到达下图位置
在这里插入图片描述
可以看到这个位置其实就是一些坐标轴的信息。比如x和y等等。
继续往下看。
在这里插入图片描述
可以看到这个地方是添加事件。根据不同的鼠标事件执行不同的方法。
我们可以挨个去看。这里因为时间原因。就不浪费时间了
进入 f, “mousemove”, s中的s方法。
在这里插入图片描述
在这里插入图片描述

到达m函数生成处
在这里插入图片描述
虽然这个值的确能生成227.但是我们不确定这个值是否为正确的。先不管。打上断点再说。

在这里插入图片描述
这个位置显而易见就是当时的那个params参数中的n。
在这里插入图片描述
这里已经找到生成的位置了。但具体还需要点进函数内部去看。
由于这是添加鼠标事件。是函数 并不是执行没办法进断点。

2.通过鼠标进栈
这个时候要进栈。需要把mousedown取消。
在这里插入图片描述
然后划过滑块 不放开。这个就能进入栈。

在这里插入图片描述
接着进入这个函数。这是个过程。要有耐心的一点点看。
后面就简单了 通过单步调试
在这里插入图片描述
到这个地方。可以了 这个地方就是最终生成的位置。

分析这个参数e:
在这里插入图片描述
可以看到 e就是这个值是定值 写死就行。
3.得到参数值n的方法
这里简单介绍两种把

a.扣代码。
b.补环境
这里采用补环境的方法。大概补个1000行左右就行了。
吐出来的环境比我的命都长。
补环境代理代码:

javascript">proxy = function(proxy_array) {for (var i = 0; i < proxy_array.length; i++) {handler = '{\n' +'    get: function(target, property, receiver) {\n' +'        console.log("方法:", "get  ", "对象:", ' +'"' + proxy_array[i] + '" ,' +'"  属性:", property, ' +'"  属性类型:", ' + 'typeof property, ' +// '"  属性值:", ' + 'target[property], ' +'"  属性值类型:", typeof target[property]);\n' +'        return target[property];\n' +'    },\n' +'    set: function(target, property, value, receiver) {\n' +'        console.log("方法:", "set  ", "对象:", ' +'"' + proxy_array[i] + '" ,' +'"  属性:", property, ' +'"  属性类型:", ' + 'typeof property, ' +// '"  属性值:", ' + 'target[property], ' +'"  属性值类型:", typeof target[property]);\n' +'        return Reflect.set(...arguments);\n' +'    }\n' +'}'eval('try{\n' + proxy_array[i] + ';\n'+ proxy_array[i] + '=new Proxy(' + proxy_array[i] + ', ' + handler + ')}catch (e) {\n' + proxy_array[i] + '={};\n'+ proxy_array[i] + '=new Proxy(' + proxy_array[i] + ', ' + handler + ')}')}
}proxy_array = ['window','document','location', 'navigator', 'history', 'screen','span', 'div',

http://www.ppmy.cn/news/1522382.html

相关文章

【观察者】设计模式:构建灵活且响应式的软件系统

引言 在软件开发中&#xff0c;我们经常面临需要在多个对象之间进行通信的挑战。特别是当一个对象的状态发生变化时&#xff0c;我们希望所有依赖于这个状态的对象都能自动更新。这就是观察者设计模式大显身手的地方。 简介 观察者模式是一种行为设计模式&#xff0c;它定义…

C++——STL(vector类)

1.vector的介绍 vector的文档介绍 vector是表示可变大小数组的序列容器。vector就像数组一样&#xff0c;拥有连续的储存空间来储存元素&#xff0c;这就意味着可以通过下标的方式来访问vector的元素&#xff0c;很高效&#xff1b;但与数组不同的是vector的大小是动态改变的…

逻辑学(Logic)

GPT-4o (OpenAI) 逻辑学是研究论证的原则和标准的学科&#xff0c;主要关注如何正确地推理和论证。从抓取股票日线数据到形成有效的分析&#xff0c;我们可以应用逻辑推理。 逻辑推理步骤&#xff1a; 1. 明确目标&#xff1a;我们要抓取股票的日线数据。 2. 分析需求&#x…

图像分割分析效果2

这次加了结构化损失 # 训练集dice: 0.9219 - iou: 0.8611 - loss: 0.0318 - mae: 0.0220 - total: 0.8915 # dropout后&#xff1a;dice: 0.9143 - iou: 0.8488 - loss: 0.0335 - mae: 0.0236 - total: 0.8816 # 加了结构化损失后:avg_score: 0.8917 - dice: 0.9228 - iou: 0.…

标贝科技个性化音色定制方案 解锁语音合成无限可能

近日&#xff0c;标贝科技语音合成音色库又有新进展。针对智能客服场景&#xff0c;上新两个温和风格音色&#xff0c;适用于服务回访、业务咨询、产品介绍等细分业务场景。加上前不久的两款严肃客服音色&#xff0c;标贝科技已累计上线20多个风格迥异的男女客服发音人&#xf…

pyecharts可视化数据大屏

1. 简介 1.1. 概述 PyECharts 是一个用于生成 ECharts 图表的 Python 库。ECharts 是一款由阿里巴巴开发的开源 JavaScript 图表库,广泛应用于网页端的数据可视化。而 PyECharts 将 ECharts 的功能带到了 Python 环境中,使得 Python 开发者可以方便地在数据分析、机器学习等…

windows版本mysql8.2忘记密码

忙了一年的项目终于有点空闲时间了&#xff08;996累成狗&#xff09;&#xff0c;想折腾点开源项目&#xff0c; 结果发现忘了本地mysql密码&#xff0c;查了一些资料&#xff0c;记录如下&#xff1a; --windows mysql8.2忘记密码&#xff08;思路整理&#xff1a;先无密码…

共享单车轨迹数据分析:以厦门市共享单车数据为例(一)

共享单车数据作为交通大数据的一个重要组成部分&#xff0c;在现代城市交通管理和规划中发挥着越来越重要的作用。通过对共享单车的数据进行深入分析&#xff0c;城市管理者和规划者能够获得大量有价值的洞察&#xff0c;这些洞察不仅有助于了解城市居民的日常出行模式&#xf…