【Python 逆向滑块】(实战二)逆向滑块,并实现用Python+Node.js 生成滑块、识别滑块、验证滑块、发送短信

news2024/11/15 4:38:10

逆向日期:2024.07.31

使用工具:Node.js、油猴

本章知识:逆向网易易盾【fp】参数

文章难度:中等(没耐心的请离开)

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

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

 注意 注意 注意!!!

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

看此文章前请先看预热阶段的文章!!!

【Python 逆向网易易盾滑块】(实战一)预热阶段

本篇文章逆向网易易盾的【fp】参数

1、打开某某网站(请使用文章开头的AES在线工具解密):Fm5MEvkUJN2pPTwS2vZbsXghwyHOyrcScCaJUwb7+kOMuzt/TW46136qDKIb3PTd
2、打开网站后,我们随便填写信息,然后打开控制台,点击发送验证码,即可触发滑块验证,然后我们随便滑动一下,可以在控制台里看到【fp】参数,直接去断点找

3、我们打开启动器,在堆栈里断点找,找了一会没找到,但发现Cookie里有【fp】的参数,直接将去Cookie里看一下

4、正在Cookie看到了这个参数,我们在Cookie里看这个参数的时候,也顺便注意一下上面的【Path】,如果参数的【Path】对应的是【/】,就说明这个【fp】参数是本地生成,不是服务器返回的。既然不是服务器返回的,那我就尝试用HooK,断住他添加到Cookie的一瞬间

 对照一下参数,看看是不是一样的。

5、打开我们的油猴插件,新建一个油猴文件,把代码粘贴进去,然后修改一下要查找的Cookie的键值,保存并启用【HOOK文件将在文章末尾附加】

6、要确定已经打开了插件,并启用,然后我们把当前网站的Cookie清除并刷新页面,控制台别忘了打开,不打开控制台就断不住,清除当前网站的Cookie是因为他会有检测,当我们把值清除掉后,他就会生成新的,不然的话他就不生成了,不生成我们也就断不住了。

7、清除Cookie并刷新页面,断住了,然后我们直接去跟栈,看上一个栈是什么

8、经过跟栈,分析出他的加密位置就在【CO】里,我们把【CO】代码全部复制到本地打开,并且要

9、我们在堆栈 点击CO,然后再打上断点,然后再刷新页面,如果刷新页面没有断住,就用油猴重复上一步操作即可

10、此时我们要添加一个很重要的环境,就是window,然后根据情况把CO里面开头部分所不需要的都删掉,可以大大减少我们的工作量,最主要是删掉后不会对后面生成的参数有所影响

11、现在我们要做的就是运行本地的js,看哪里有错误,有错误我们就去解决错误,缺环境补环境,,缺变量补变量。直接运行js脚本,发现有一个错误是在第五行,这个时候我们直接去控制台运行或查看【L[0xe9]】,看看是什么,这个很明显就是一个被混淆了的值,我们将其恢复后直接添加到本地js里

12、这种混淆没什么难度,一个一个输入输出,然后替换一下即可,这种类似的我就不演示了,你们自行替换即可,我们直接跳过,来到下一步操作

13、当我们把那些混淆都处理完成后,我们再次运行本地js,可以看到出现了错误,显示的是【Cl】不存在,那我们就在控制台把【Cl】打上断点,然后运行,控制台自然会在【Cl】断住,,这个时候我们就可以把鼠标放到【Cl】上,会自动弹出一个链接,我们点击一下,他会自动跳转到【Cl】这个运行函数

14、可以看到,我们直接跳转过来了,我们把代码全部复制到本地js里,然后把混淆的代码手动恢复一下,然后再去运行本地js,看什么地方有错误,就去补充什么地方

15、此处要注意一下,这里有一个try,把这个try的代码都给删掉,不懂try的用法可以去百度一下,如果不删除,代码报错后是不会显示错误,仍然会继续执行,会造成和网页生成的参数的方法不一样,因为他报错后会跳过部分代码的执行,就会造成参数没有执行某一步,是没有删除还是没有添加,谁都不知道

16、处理完成后,我们再次运行本地js,发现【CK】未定义,你有没有发现,【CK】是在try里面的,如果我不删除try,可想而知,代码会自动跳过这个错误,不执行此段代码,那你往后执行的命令就全部都会出现问题

17、找到了【CK】,直接复制粘贴,这一步步的我就不在操作了。

18、在操作的时候也要注意几个事项,我们在写方法的时候,不要把方法都放在一起,因为有很多方法是重名的,只要我们把规范整理好就行,也不要去想这修改人家的方法名字,修改方法名字是最大的错误,因为有些方法是会自调用,就是自己调用自己,如果你修改了方法名字,那你的逆向难度将会上升一个等级,所有不要想着去修改人家的东西,我们尽可能的去遵顼别人的执行方法。

19、其他也没有什么可演示的,都是重复性去断点 复制粘贴,但难度还是有的,别大意,多注意堆栈的变化,包括一些随机性的错误,里面是有坑的,细心一点总没错

【附上代码】

🟢油猴脚本 - HOOK大法

// ==UserScript==
// @name         Cookie HOOOK大法
// @namespace    Cookie HOOOK大法
// @version      0.1
// @description  控制台追踪Cookie的变化
// @author       小木_.
// @match        *://*/*
// @grant        none
// @run-at       document-start
// ==/UserScript==

// 【Cookie 捕捉】
var cookie_cache = document.cookie;
Object.defineProperty(document, 'cookie', {
    get: function () {
        return cookie_cache;
    },
    set: function (val) {
        // ****************** 要查找的cookie对象值
        if (val.indexOf('gdxidpyhxdE') !== -1) {
            console.log('[J] - 捕获到设置[*Cookie] - debugger -> ', val)
            debugger;
        }
        var cookie = val.split(";")[0];
        var ncookie = cookie.split("=");
        console.log('[J] - 捕获到设置[*Cookie] -> '+ `[${ncookie[0]}]==[${ncookie[1]}]`);
        // ****************** 是否添加cookie 此处可控制是否添加cookie
        var flag = true;
        var cache = cookie_cache.split("; ");
        cache = cache.map(function (a) {
            if (a.split("=")[0] === ncookie[0]) {
                flag = true;
                return cookie;
            }
            return a;
        })
        cookie_cache = cache.join("; ");
        if (flag) {
            cookie_cache += cookie + "; ";
        }
        return cookie_cache;
    },
});

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1966473.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

配电盘emc测试技术咨询

申请配电盘 EMC 测试技术咨询的费用因机构、测试项目和服务内容的不同而有所差异。一般来说,测试机构会根据测试项目的复杂程度、测试时间和场地等因素来确定费用。 影响配电盘 EMC 测试技术咨询办理费用的因素有很多,其中主要的因素有: 1、检…

windows 环境测试使用 Visual Studio 2022 MSVC 自带的 cl + nmake 版本的 Makefile 编译代码

前言: windows 环境的 cl 和 nmake 就相当于 Linux 环境的 gcc、g 和 make;linux 中可以在 Makefile 中写 gcc、g 语句,然后执行 make;同样的,在 windows中也可以新建 Makefile 文件,在里面写 cl 语句&…

基于springboot+vue+uniapp的养老院管理系统小程序

开发语言:Java框架:springbootuniappJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包&#…

45.二维数组练习:计算季度营业额和年总营业额

/* 某商场每个季度营业额如下,单位:万元 第一季度:22,66,44 第二季度:77,33,88 第三季度:25,45,65 第四季度:11,66,99 要求…

贵州桐梓影像大赛启动 百名摄影师齐聚桐梓采风创作

夏季的桐梓,山水秀美,天空湛蓝。近日,贵州桐梓首届旅游影像大赛启动,来自全省各地的100余名摄影师共聚一堂,开展一场别具一格的采风创作活动。他们带着镜头,追寻着光影的脚步,捕捉桐梓的自然风光…

使用WebSocket实现log日志流的实时展示-从轮询到通知

场景介绍 最近开发一个系统,其中一个模块需要展示实时的执行过程,过程日志可能比较多。以前的方案都是前端定时轮询,比如每秒查一次后端接口,将拉取回来的日志重新展示。轮询方案简单容易实现,但是比较消耗资源&#…

ctfhub-SQL注入-1-基础题目详解

1.打开题目在url上判断是数字型注入还是字符型注入 1 //无回显,说明是报错了,‘和后面的‘冲突了 1’ -- //有回显,是因为--把后面的‘注释掉了 2.使用命令判断列数 1order by 1-- //有回显 1order by 2 -- //有回显 1order by …

推荐Nodejs下高效存储树到数据库工具库-FlexTree

官网 | English FlexTree是Nodejs下一个基于左右值算法的树结构库,它提供了一种简单的方式来存储和操作树形结构数据。 FlexTree提供了简单而丰富的API让你可以轻松的操作树,如增删改查、遍历、移动、查询等。 主要特性: 基于左右值算法&a…

AMEYA360:纳芯微高集成单芯片SoC如何高效智能控制车载步进电机?

随着现代汽车电子技术的快速发展,步进电机作为一种精确且可靠的执行元件,在汽车电子系统中的应用日益广泛。为了实现车载步进电机应用的精确控制,纳芯微推出了集成LIN和MOSFET功率级的单芯片车用小电机驱动SoC——NSUC1610,可以帮…

全面掌握VS Code:提升开发效率的终极指南

Visual SCode Visual Studio Code(简称VS Code)是一款由微软开发的免费、开源且跨平台的代码编辑器。它支持多种编程语言,通过其强大的扩展库,可以满足各种开发需求。本教程将详细介绍如何从安装到高级使用,帮助你充分…

降低Anki对C盘空间占用的四种方法

Anki安装后,笔记中所用到的各种媒体和资源文件默认保存在C盘,例如我的电脑上是保存在“C:\Users\asus\AppData\Roaming\Anki2”,其中asus是我电脑的登录用户名。随着笔记收集越来越多,对C盘的占用也越来越大,因此&…

5问5答!您想了解的数据采集DAQ关键指标都在这里了

1、什么是采样率,它对测量结果有何影响? 采样率是数据采集卡每秒采集数据的次数。采样率对测量结果的准确性有直接影响。如果采样率过低,可能会错过信号的重要部分,导致数据失真。 理论上根据采样定理,采样率应为信…

【C++BFS】802. 找到最终的安全状态

本文涉及知识点 CBFS算法 LeetCode802. 找到最终的安全状态 有一个有 n 个节点的有向图,节点按 0 到 n - 1 编号。图由一个 索引从 0 开始 的 2D 整数数组 graph表示, graph[i]是与节点 i 相邻的节点的整数数组,这意味着从节点 i 到 graph…

【Qwen-Audio部署实战】Qwen-Audio-Chat模型之对话机器人部署测试

系列篇章💥 No.文章1【Qwen部署实战】探索Qwen-7B-Chat:阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用4【Q…

02.计算器存储器的原理

02.计算器存储器的原理 目录介绍 01.什么是存储器 1.1 了解存储器是什么1.2 存储器类型 02.存储器系统设计 2.1 存储器分层设计2.2 存储器层次结构2.3 高速缓存设计思想2.4 虚拟内存访问内存 03.存储器类型 3.1 按照材质划分3.2 按芯片类型划分3.3 内存 vs CPU3.4 存储器访问…

【Yolov8】实战三:手把手教你使用YOLOv8以及pyqt搭建中医耳穴辅助诊断项目原理及模型部署

摘要 今天,学习RTMPose关键点检测实战。教大家如何安装安装MMDetection和MMPose。 实战项目以三角板关键点检测场景为例,结合OpenMMLab开源目标检测算法库MMDetection、开源关键点检测算法库MMPose、开源模型部署算法库MMDeploy,全面讲解项目…

Spring源码解析(26)之AOP的核心对象创建过程

一、前言 在上一节中我们介绍了在Spring 解析xml配置文件的时候,给我们往容器中生成了很多BeanDefinition,其中最重要的是advice对象,而advice对象最外层是用一个advisor对象包裹起来,而我们的advice对象的创建需要三个参数&#…

|迁移学习| 迁移学习详解及基于pytorch的相关代码实现

🐑 |迁移学习| 迁移学习详解及基于pytorch的相关代码实现 🐑 文章目录 🐑 |迁移学习| 迁移学习详解及基于pytorch的相关代码实现 🐑🐑 前言🐑🐑 迁移学习详解🐑🐑 迁移学…

第34篇 子程序FINDSUM求和<一>

Q:如何设计汇编语言程序求数组[1:n]的和? A:基本原理:可编写一段实现子程序FINDSUM,子程序中使用一个loop来实现数组的求和运算。子程序FINDSUM的参数N存储在内存中,主程序从该内存中将其读取到一个寄存器…

MES系统如何实现生产任务的自动或辅助调度

MES系统(Manufacturing Execution System,制造执行系统)通过一系列集成化的功能模块和智能算法,实现生产任务的自动或辅助调度。以下是MES系统实现生产任务自动或辅助调度的具体方式: 1. 生产计划与排程 计划制定&am…