【爬虫逆向实战 逆向滑块 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.hqwc.cn/news/502180.html

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

相关文章

让人春分日 梦熊联盟2023比赛成绩,山西太恐怖

本人是山东人,山东66人 但 没想到山西有77个人!!! 泰酷辣 听懂掌声!

靠谱的车【华为OD机试-JAVAPythonC++JS】

题目描述 程序员小明打了一辆出租车去上班。出于职业敏感,他注意到这辆出租车的计费表有点问题,总是偏大。 出租车司机解释说他不喜欢数字4,所以改装了计费表,任何数字位置遇到数字4就直接跳过,其余功能都正常。 比如&…

Python中操作MySQL和SQL Server数据库的基础与实战【第97篇—MySQL数据库】

Python中操作MySQL和SQL Server数据库的基础与实战 在Python中,我们经常需要与各种数据库进行交互,其中MySQL和SQL Server是两个常见的选择。本文将介绍如何使用pymysql和pymssql库进行基本的数据库操作,并通过实际代码示例来展示这些操作。…

基于Beego 1.12.3的简单website实现

参考 用Beego开发web应用 https://www.cnblogs.com/zhangweizhong/p/10919672.htmlBeego官网 Homepage - beego: simple & powerful Go app frameworkbuild-web-application-with-golang https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/pr…

今天面试招了个18K的人,从腾讯出来的果然都有两把刷子···

公司前段时间缺人,也面了不少测试,前面一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资在15-20k,面试的人很多,但平均水平很让人失望。看简历很多都是4年工作经验,但面试中,不…

高级语言期末2010级B卷(软件学院)

1.编写程序根据如下公式计算X的值&#xff08;精确到1e-5&#xff09;。 #include <stdio.h>int main(){int i1;double flag1.0/(2*i-1)*2.0*i/(2*i-1);double sum0;while(flag>1e-5){sumflag;i;flag1.0/(2*i-1)*2.0*i/(2*i-1);}printf("%lf",sum);return 0…

计算机网络_2.2物理层下面的传输媒体

2.2物理层下面的传输媒体 一、传输媒体的分类二、导向型传输媒体1、同轴电缆2、双绞线3、光纤&#xff08;1&#xff09;光纤通信原理&#xff08;2&#xff09;光纤组成&#xff08;4&#xff09;多模光纤与单模光纤对比&#xff08;5&#xff09;光纤的波长与规格&#xff08…

mysql,for循环执行sql

遇到一个问题&#xff0c;我需要模拟上百万数据来优化sql&#xff0c;线上数据down不下来&#xff0c;测试库又没有&#xff0c;写代码执行要么慢要么就是sql语句太长。 于是&#xff0c;直接用mysql自带的功能去实现&#xff01; 简单而简单 mysql可以for循环&#xff1f;没…

物体检测-系列教程19:YOLOV5 源码解析9 (Focus模块、Model类构造函数)

&#x1f60e;&#x1f60e;&#x1f60e;物体检测-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Pycharm中进行 本篇文章配套的代码资源已经上传 点我下载源码 13、Focus模块 13.1 基本流程 原始输入图像的格式为&#xff1a;tensor: float32[1,3,64…

map和set例题应用

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 目录 第一题 第二题 第三题 第一题 随机链表的复制https://leetcode.cn/problems/copy-list-with-random-pointer/description/ 思路 首先遍历旧链表&#xff0c;并创建新节点&#xff0c;同时用map将旧节点与新节点…

存储过程基本了解

文章目录 介绍存储过程示例1. 目的2. 输入参数3. 输出参数4. 执行逻辑5. 返回值6. 示例用法7. 注意事项 存储过程的关键字有哪些简单实操 介绍 存储过程是一组预编译的SQL语句&#xff0c;以及流程控制语句&#xff0c;封装在数据库服务器中并可以被重复调用。它们可以接收参数…

Mac 重新安装系统

Mac 重新安装系统 使用可引导安装器重新安装&#xff08;可用于安装非最新的 Mac OS&#xff0c;系统降级&#xff0c;需要清除所有数据&#xff09; 插入制作好的可引导安装器&#xff08;U盘或者移动固态硬盘&#xff09;&#xff0c;如何制作可引导安装器将 Mac 关机将 Ma…