【爬虫逆向实战 逆向滑块 Python+Node】今天逆向的网站有点嘿嘿,还是仅供学习,别瞎搞

逆向日期:2024.03.01

使用工具:Node.js、Python

加密方法:AES标准算法

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

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

仅供学习,仅供学习,不附源码,全程图片代码
1、打开某某网站(请使用文章开头的AES在线工具解密):/liDZBx6bZua7bit+Hewycjp4zAJsK6BUD1nuOunNn2RGuyWRfvGrfc+U+6GvvGc
2、我们打开网站后,输入纳税人编号,可以去企查查里拿公开的,必须是山西地区的哦,因为这个网站只能查山西地区的,然后点击查询,会看到有一个滑块让你验证,将滑块划到正确位置,,,然后在控制台可以看到,共发送了四次请求,我来和大家一个一个讲一下
【第一个api】:荷载的信息都是固定的,【ts】是有一个13位的时间戳,分析图下方。。。这个接口的作用就是发放无权限token和验证信息

【第二个api】:载荷的信息只有【token】和【pointJson】会变动。。【token】可在第一个api里获取。。【pointJson】需要模拟算法生成。。。这个接口的作用就是 验证滑块是否成功,并给之前的token赋予访问权限

【第三个api】:荷载信息只有【captchaVerification】【nd】【NSR】会变动。【captchaVerification】需要模拟算法去生成。【nd】是个13位的时间戳。【NSR】是你要查询的纳税人识别号。。。。这个api的作用是使用已授权的token进行访问数据

【第四个api】:这个就不用讲了,这个api和第一个api是一样的作用,,当你信息验证失败或你主动刷新滑块验证码的时候,就会有这个请求,,作用和第一个一样,只是会重新给你一套全新的信息,比如token、滑块的图片.....
3、已知第一个api是生成信息,无需模拟算法生成,,那我们直接去模拟第二个api的【pointJson】这个是需要通过算法去生成的,,直接全局搜索大法,找到了,他是把你滑动的距离进行了一个加密,密钥使用的第一个api内获取的,加密的参数是你滑动滑块的距离,然后经过一个简单的算法运算后得出一个参数【{"x":101.525,"y":5}】

4、我们继续跟栈走,没想到呀,他用的是一个AES加密方法,而且还没有混淆,这感情好呀,我们直接本地模拟去

5、因为js代码较少,所以我将js代码写进了python里,方便直接调用,省去了读取加载步骤

6、在这里讲一下为什么我上面要将计算出的滑块【距离乘于1.3】,看下面图,我将原网站的滑块背景图在新标签页中打开后,发现距离不一样

7、我们接下来搞第三个api接口,这个接口就是用来获取最终数据的,但我们还要去模拟【captchaVerification】参数值,其他的参数你们都懂,仍然一样,全局搜索,,没想到呀,算法竟然一样的,直接用上一个算法就可以,只不过加密的参数多了一个token,仍然简单,直接模拟去

8、都模拟完成了,允许测试,妥了,成功

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

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

相关文章

实现unity场景切换

本文实现两个按键实现场景1和场景2之间的切换 ①首先在unity 3D中创建两个场景,分别为Scene1和Scene2 ②在Scene1中创建一个Button,修改txt内容为“To Scene2”,并在Buttons下创建一个空物体,用于挂载脚本。 脚本Trans Scene.…

操作系统x面试|进程与线程

1. 线程进程的区别 进程可以称为是资源分配的最小单元,而线程可以称为是处理器分配的最小单元。 资源包括内存空间。同时进程是一段代码的执行过程,这段代码需要多少的内存在代码确定时已经确定下来了。 处理器就是执行单元,一个进程可以拆解…

程序员的金三银四求职宝典

程序员的金三银四求职宝典 金三银四,即三月和四月,是程序员求职的黄金时期。在这个关键时期,求职者们需要做好充分的准备,以便在面试中脱颖而出。以下是一些建议,帮助程序员在金三银四期间更好地准备求职:…

【DAY06 软考中级备考笔记】数据结构:树

数据结构:树 3月1日 – 天气:晴 之前在B站看的视频讲的是在太过简单,弃了。现在换了新的视频继续,后续会重新看前面的视频补过来。https://www.bilibili.com/video/BV1pT4m1S7uH/ 1. 树的基本概念 需要注意的是: 并不是…

CentOS7使用yum安装MySQL8.0教程

CentOS7使用yum安装MySQL8.0 一、下载MySQL Yum下载仓库二、安装MySQL三、为MySQL运行提供相关的用户以及环境四、启动MySQL五、MySQL开机自启六、修改MySQL中root账户的密码 一、下载MySQL Yum下载仓库 MySQL下载地址:https://dev.mysql.com/downloads/ 首先进入下…

Java通过Semaphore控制同一时间只有3个线程运行

怎么控制同一时间只有3个线程运行? 直接上代码 import java.util.Date; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore;public class SemaphoreThreadPoolExample {private static…

【网站项目】324企业人事信息管理系统

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…

Windows下卸载JDK

操作步骤: 直接到windows程序卸载面板进行卸载 然后删除已配置的环境变量

深入解析Golang的encoding/ascii85库:从基础到实战

深入解析Golang的encoding/ascii85库:从基础到实战 引言基础知识什么是ASCII85编码?ASCII85编码的工作原理ASCII85编码的优点ASCII85编码的缺点 使用Golang的encoding/ascii85库引入encoding/ascii85包ASCII85编码ASCII85解码实战示例小结 进阶技巧和最佳…

用于游戏开发的顶级 PYTHON 框架

一、说明 我们试图用python开发游戏,一旦产生这个念头,就伴随这样一个问题:当今用于构建游戏的领先 Python 框架有哪些?python下,支持游戏开发平台有哪些优势?我们在这篇博文中告诉你。 二、高级游戏平台简…

驱动高级--mknod

一、起源 仅devfs,导致开发不方便以及一些功能难以支持: 热插拔 不支持一些针对所有设备的统一操作(如电源管理) 不能自动mknod 用户查看不了设备信息 设备信息硬编码,导致驱动代码通用性差,即没有分离…

【改进算法】【IHAOAVOA】天鹰优化算法和非洲秃鹫混合优化算法

目录 1 主要内容 IHAOAVOA流程图 主要创新点 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序复现《IHAOAVOA: An improved hybrid aquila optimizer and African vultures optimization algorithm for global optimization problems》,天鹰优化算法&am…

spring boot3解决跨域的几种方式

⛰️个人主页: 蒾酒 🔥系列专栏:《spring boot实战》 🌊山高路远,行路漫漫,终有归途。 目录 1.前言 2.何为跨域 3.跨域问题出现特征 4.方式一:使用 CrossOrigin 注解 5.方式二:自定义…

2024年3月2日 十二生肖 今日运势

小运播报:2024年3月2日,星期六,农历正月廿二 (甲辰年丙寅月乙丑日),法定节假日。 红榜生肖:鸡、蛇、鼠 需要注意:狗、马、羊 喜神方位:西北方 财神方位:东…

微服务间通信重构与服务治理笔记

父工程 依赖版本管理,但实际不引入依赖 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation&…

力扣111 二叉树的最小深度 Java版本

文章目录 题目描述层序遍历解法递归解法 题目描述 给定一个二叉树&#xff0c;找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明&#xff1a;叶子节点是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,nu…

[SS]语义分割_膨胀卷积

膨胀卷积 目录 一、概念 1、定义 2、知识点 二、详细介绍 1、引入 2、膨胀系数设定 一、概念 1、定义 膨胀卷积&#xff08;Dilated Convolution&#xff09;&#xff0c;也称为空洞卷积&#xff08;Atrous Convolution&#xff09;&#xff0c;是一种在卷积神经网络…

Cloudera虚拟机配置(虚拟机环境自带Hadoop、Impala等大数据处理应用)

上学期的大数据处理课程&#xff0c;笔者被分配到Impala的汇报主题。然而汇报内容如果单纯只介绍Impala的理论知识&#xff0c;实在是有些太过肤浅&#xff0c;最起码得有一些实际操作来展示一下Impala的功能。但是Impala的配置实在是有些困难与繁琐&#xff0c;于是笔者通过各…

uni-app去除页面头部的标题栏

uniapp项目 每个界面都会有一个标题栏 配置在我们项目根目录的 pages.json中 我们将它全部去掉 上面还是有一条黑的 体验非常差 我们只需要在pages.json中 指定page的 style中加入 "navigationStyle": "custom"对应的page 就没有这个标题栏了

【王道数据结构】【chapter8排序】【P371t6】

试设计一个算法&#xff0c;判断一个数据序列是否构成一个小根堆&#xff08;下面代码中的堆排序的部分仅仅是为了方便设计测试用例&#xff09; #include <iostream> #include<time.h> #include<stdlib.h>int * buildarray(int size) {int* tmp(int *) mall…