【web js逆向分析易盾滑块cb参数】逆向分析网易易盾滑块的cb参数,仅供学习交流

embedded/2025/2/2 22:29:22/

文章日期:2025.2.1

使用工具:Node.js

本章知识:分析易盾滑块的cb参数生成

version:2.28.0

文章难度:简单

文章全程已做去敏处理!!!  【需要做的可联系我】 

AES解密处理(直接解密即可)(crypto-js.js 标准算法):​​​​​​在线AES加解密工具

声明:为了保护本作者可以持续的更新知识,此次逆向出的网站源码代码不予分享,有需要可以直接找我。但作者所写出的代码(非网页源代码)会在网站最低部公示。

注意:仅供学习!!仅供交流!!仅供测试!!

随着某网站的滑块更新,我的文章也要紧跟步伐,抽出时间进行更新教学,无论之前逆向的代码是否还能继续使用,我都要随着版本更新再次逆向一下,都是为了更好的了解某网站的规则。

废话不多说,先看小视频,我模拟生成的参数直接把网站里的值替换掉,可以看到依然可以运行,这就说明我模拟生成的值是没问题的,如果有问题,他就不会成功。

接下来步入正题,重复的东西我就会给大家跳过,重要是讲一些逆向时会遇到的问题并解决问题,其实这个参数没有什么难度,但需要细心一点,有耐心,尤其是扣代码的时候认真一点,扣代码容易出问题

1、打开某某网站(使用文章开头的AES在线工具解密): 

eumnTMBK1YX1yHa2YPIzznz0lllcK4OHdbDHkOTYuvQ=

2、我们打开网站后,选择嵌入式会比较方便一点,然后单独刷新一下滑块验证码,可以在控制台看到今天要逆向分析的参数,cb参数。

注意:cb参数可以用于滑块的任何请求载荷,都是通用的,只要是关于当前滑块的请求,那么cb都是可以相互使用,无需重复逆向

3、首先,我们要先做一个操作,使用替换功能,把网站里的源文件进行修改替换,因为我们要逆向分析的js文件的链接后面有类似时间戳的东西,这个东西是不会走缓存的,简单来说就是会对我们逆向打断点有影响,所以必须要修改一下。

4、我们打开启动器,然后进如堆栈看看

5、我们在右键js文件进行替换,然后把这个代码删除掉即可,别忘了保存一下。他这个代码就是添加v载荷的,我们将其删除就不会添加了。

6、我们清空控制台,然后刷新页面,可以看到我们替换的文件有一个紫色的小点,说明成功替换了文件。然后在来看另一个js文件,会发现链接后面没有了v载荷,这样他的链接就会走缓存了,就不会让我们打的断点失效

7、好了,接下来开始逆向分析cb参数,我们刷新滑块,然后进入堆栈直接打断点

8、我们刷新滑块,断住后,我们进入匿名堆栈

9、我们进入堆栈后,我们看上方代码,很明显可以看到cb参数的生成位置,打上断点后,我们刷新滑块,等他断住

10、断住后,我们直接进入方法里(鼠标放到f3上,等一会即可出现此框框)

11、既然找到了方法,那我们就可以开始扣代码了,直接扣到本地,然后补上一个环境,此环境必补,然后我们打印一下结果,看缺少什么,我们在慢慢去补代码即可

12、然后我们运行一下,发现缺少v参数,我们直接打上断点,然后放行让其断住,然后我们在进入方法,把代码扣下即可

13、我们进来后会发现,他就是一个调用方法解混淆的,这个没有什么难度,但要注意结果,如果结果不一样,就说明你扣少或扣错了,要注意细节

14、接下来我直接给大家讲某些部分代码怎么扣,比较一步一步太多了,所以我就直接跳过简单的,直接讲容易出现问题的

15、问题一:

15.1、我们把代码拆分开,很明显就能看懂,直接全部复制到本地

 15.2、复制到本地后,需要稍作修改,看图修改一下,即可运行

16、问题二:

16.1、我们只复制这个D方法

16.2、将D改为W,然后修改一下内容,不明白为什么要这样修改的,可以一步一步跟栈看他怎么运行的,他无论怎么运行,最终返回的都是这个方法参数,所以我们直接写固定即可,没什么难度,不需要额外补环境

17、问题三(重要):

17.1、运行成功了,但不出结果,是因为他用了try,报错是不会显示的,然后就返回了空字符。解决方法也很简单,我们直接搜索try,从底部向上搜索,反向搜索排查

17.2、我们直接删除try方法,直接让他正常运行,如果报错,我们就正常的去看缺少什么东西,补上就好

18、最终完成了,已经成功运行了

 19、接下来我们要把生成的cb参数将其替换到网站滑块里,验证一下,看一下是否成功,成功则代表我们扣的代码已经没有问题了,如果滑块错误,就代表我们扣的代码还是有问题的

20、好了,本文到此结束,别忘了三连,下次继续更新


http://www.ppmy.cn/embedded/159025.html

相关文章

DeepSeek R1:中国AI黑马的崛起与挑战

文章目录 技术突破:从零开始的推理能力进化DeepSeek R1-Zero:纯RL训练的“自我觉醒”DeepSeek R1:冷启动与多阶段训练的平衡之道 实验验证:推理能力的全方位跃升基准测试:超越顶尖闭源模型蒸馏技术:小模型的…

C++中常用的十大排序方法之1——冒泡排序

成长路上不孤单😊😊😊😊😊😊 【😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于C中常用的排序方法之——冒泡排序的相关…

【Unity2D 2022:C#Script】DoTween插件的使用

一、插件介绍 DOTween 是一个快速、高效、完全类型安全的 Unity 面向对象的动画引擎,针对 C# 用户进行了优化,免费和开源,具有大量高级功能 二、插件的下载 1. DoTween官网:DOTween (HOTween v2) 2. DoTween下载: …

Qt事件处理:理解处理器、过滤器与事件系统

1. 事件 事件 是一个描述应用程序中、发生的某些事情的对象。 在 Qt 中,所有事件都继承自 QEvent ,并且每个事件都有特定的标识符,如:Qt::MouseButtonPress 代表鼠标按下事件。 每个事件对象包含该事件的所有相关信息&#xff…

Keepalived高可用集群入门学习

一、高可用集群 1.LB:load Balance 负载均衡 HA:High Availability 高可用集群 HPC: High Performance Computing 高性能集群 2.提高系统高用性的解决方案:降低MTTR(mean time to repair)平均故障时间 建立冗余机制…

WGCLOUD服务器资源监控软件使用笔记 - Token is error是什么错误

[wgcloud-agent]2025/01/30 10:41:30 WgcloudAgent.go:90: 主机监控信息上报server开始 [wgcloud-agent]2025/01/30 10:41:30 WgcloudAgent.go:99: 主机监控信息上报server返回信息: {"result":"Token is error"} 这个错误是因为agent配置的wgToken和serv…

javaweb复习总结

Maven仓库的作用 Jar包管理编译、打包、测试 Maven仓库分类 本地仓库远程仓库 私服中央仓库其他公共库 Maven命令 mvn clean 刷新清理mvn clean compile 编译mvn clean test 执行所有测试用例mvn clean package 打包mvn clean install 下载jar包 Git工作流程: 从工…

【江苏省乡镇街道边界】面图层shp格式arcgis数据+乡镇名称和编码wgs84无偏移内容测评

江苏省乡镇界面图层shp格式arcgis数据乡镇名称和编码2020年wgs84坐标无偏移