【逆向实战 某视频防盗链参数的生成】防盗链cKey的生成,还要补环境?还是单嵌套的webpack?

逆向日期:2024.03.10

使用工具:Node.js

类型:单嵌套Webpack

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

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

仅供学习,仅供学习,无需登录,结尾就不放源码了,几万行代码,放不下。。。如有需要 请单独找我
1、打开某某网站(请使用文章开头的AES在线工具解密):B5G2PE2d8J7Ng5qT9sAQmuaOCMeZPfvYFqDhGyY/VcE=
2、打开网站,控制台、然后刷新页面,在过滤器里输入【get_live_info】,然后点击接口,可以看到有【cKey】这个参数,这个参数就是我们要逆向生成的参数

3、直接全局搜索大法,直接打断点,这个参数很好找,一下就能搜到。。打上断点后,刷新页面,下面看分析的图。

4、然后我们直接复制到本地,一步一步来,莫着急。然后我们再跟栈进去,就来到了加密逻辑代码这里。

5、我们把代码翻到顶部后,你可以看到他是一个webpack,全部复制到本地,然后代码全部收缩,将近8万行代码,你们某些人的电脑风扇估计快转冒烟了吧。

6、我们直接搜索刚刚跳转后的【function rs(t, e, r, n, i) {】在本地搜索啊,然后我们点击这里进行跳转,看下面图

7、跳转后,你会发现这里也是webpack。。。意思就是webpack里面又加了一个webpack,而我们只需要最里面的那个webpack就可以了,外层的那个不用,

8、看下面的图,不知你能否理解,理解不了就说明你需要多找案例去练习了,能理解的就别看了,你可以动手试试,试完后哪里不懂可以来看看。。。。我们直接把里层的webpack扣到本地

9、扣的时候要注意,尽量使用简洁一点的webpack加载器,随便在网上其他网站扣一个就行,只要运行不报错就OK,,然后将要加载的内容放到最下方那里,要注意,如果人家用的webpack是字典格式,你也用字典,如果人家用列表,那你也用列表,别搞错了,一旦搞错,运行的逻辑就会出错,列表和字典的调用方式都不一样,可要看清楚了。

10、测试你加载器是否正常,可以先添加一个参数尝试调用,看看能不能调用成功

11、运行后,报错显示window没有定义,这个大家应该都很清楚,node.js环境是【global】,浏览器环境是window,既然没有window,那我们就把window定义为【global】就可以了。

12、然后我们加载器直接调用【fb15】,为什么要调用【fb15】呢?,,因为加密的方法是在fb15里面,要让【fb15】加载运行后,我们所需要的【rs】加密方法才能存在于局部中,没加载你怎么用,对不对。所以要先加载。

13、开始补环境了,补环境这里其实也没说明难度,就是缺什么,哪里有报错,就在源代码的哪个地方打上断点,然后刷新页面或跟栈去看看是缺少什么,补上就好,我这里演示一下,,比如下面这个图里,缺少【currentScript】参数,那我们就去源代码断点,然后看看缺少什么,
14、官网直接断上,刷新页面,可以看到他是一个标签,那我们也定义标签

15、源代码分析一下,意思很简单,就是从刚刚的那个标签里拿了一个链接,那我们就修改刚刚定义的【currentScript】参数,里面改成src就行

16、运行后出现新的问题,缺少UA头,后面补环境就不演示了,一两句说不清楚,总而言之,缺什么就去网站里打断点,然后看是缺少什么东西,分析后再添加到我们本地的环境里。
下面我就直接把补完后的环境给大家看看

17、环境补完了,我们将输入参数改为和浏览器一样的,看加密结果是否一样,很好。一毛一样。

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

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

相关文章

【Java设计模式】三、简单工厂、工厂方法模式、抽象工厂模式

文章目录 0、案例:咖啡屋1、简单工厂模式 静态工厂(不属于23种之列)2、工厂方法模式3、抽象工厂模式4、简单工厂模式 配置文件解除耦合5、JDK源码中对工厂模式的应用 0、案例:咖啡屋 模拟咖啡店点餐。咖啡有多种,抽…

掌握React中的useCallback:优化性能的秘诀

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

011-keep-alive详解

keep-alive详解 1、简介2、keep-alive的使用效果未使用keep-alive的效果图使用keep-alive的效果图include和exclude指定是否缓存某些组件使用keep-alive的钩子函数执行顺序问题 3、keep-alive的应用场景举例4、总结 1、简介 keep-alive 是 Vue 的内置组件,当它包裹…

深入浅出计算机网络 day.2 概论⑤ 计算机网络的性能指标

请等一等, 用一个完整的春天 捣碎麦田 —— 24.3.10 一、计算机网络的性能指标 上 计算机网络的性能指标被用来从不同方面度量计算机网络的性能 常用的八个计算机网络性能指标 速率 比特(bit)是计算机中数据量的基本单位,一个比特…

python爬虫(4)

#前期先说明一下为啥爬虫需要学习数组的存储和处理,只是说在你后期接触到最简单的爬虫后有一个地方可以存放你的数据# 下面为大家带来一个我在做excel表整理时的代码以及上次代码的结果 上次代码的结果: 新的代码: import numpy as np im…

使用51单片机控制lcd1602字体显示

部分效果图: 准备工作: 51单片机(BST)1602显示屏 基础知识: 注:X表示可以是0,也可以是1; DL 1, N 1, F 0, 代码一: 要求显示字母…

网络安全审计是什么意思?与等保测评有什么区别?

网络安全审计和等保测评在信息安全领域中都是非常重要的环节。但不少人对于这两者是傻傻分不清楚,今天我们就来简单聊聊网络安全审计是什么意思?与等保测评有什么区别? 网络安全审计是什么意思? 网络安全审计是通过对网络系统和网…

学习和认知的四个阶段,以及学习方法分享

本文分享学习的四个不同的阶段,以及分享个人的一些学习方法。 一、学习认知的四个阶段 我们在学习的过程中,总会经历这几个阶段: 第一阶段:不知道自己不知道; 第二阶段:知道自己不知道; 第三…

数据结构部分

来源地址 一 数据结构 1 堆和树之间的区别 区别就在于树是没有特定顺序的,你需要遍历整个树才能找到特定元素;而堆是有序的,你可以直接找到最大(或最小)的元素。 堆:假设你正在开发一个任务调度系统&…

JimuReport积木报表 v1.7.2 版本发布,低代码报表工具

项目介绍 一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等! Web 版报表设计器,类似于excel操作风格,通过拖拽完成报…

YoLo进化史《A COMPREHENSIVE REVIEW OF YOLO: FROM YOLOV1 TOYOLOV8 AND BEYOND》

Abstract YOLO已成为机器人、无人驾驶汽车和视频监控应用的核心实时目标检测系统。我们对YOLO的发展进行了全面的分析,研究了从最初的YOLO到YOLOv8的每次迭代中的创新和贡献。我们首先描述标准指标和后处理;然后,我们讨论了网络架构的主要变化和每个模型…

SpringCloud-Alibaba-Nacos教程

SpringCloud-Alibaba-Nacos教程 下载地址 https://github.com/alibaba/nacos/releases/tag/2.2.3 直接进入bin包 运行cmd命令 startup.cmd -m standalone 运行成功后 进入nacos可视化页面 账号密码默认都是nacos http://localhost:8848/nacos 微服务入驻Nacos服务注册…

【Python】成功解决IndexError: list index out of range

【Python】成功解决IndexError: list index out of range 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订…

探索stable diffusion的奇妙世界--01

目录 1. 理解prompt提示词: 2. Prompt中的技术参数: 3. Prompt中的Negative提示词: 4. Prompt中的特殊元素: 5. Prompt在stable diffusion中的应用: 6. 作品展示: 在AI艺术领域,stable di…

机器学习——PPO补充

On-policy vs Off-policy 今天跟环境互动,并学习是on-policy 只是在旁边看,就是Off-policy 从p中选q个重要的,需要加一个weight p(x)/q(x) p和q不能相差太多 采样数太少导致分布差很多,导致weight发生变化 On-Policy -&g…

MySQL 的基础操作

数据库的基础操作 1. 库操作2. 表的操作3. 数据类型 数据库是现代应用程序中至关重要的组成部分,通过数据库管理系统(DBMS)存储和管理数据。 1. 库操作 创建数据库 创建数据库是开始使用数据库的第一步。下面是一些常见的创建数据库的示例&a…

全栈的自我修养 ———— vue中子组件使用父组件的方法

子组件取得父组件的方法 一、通过props(比较推荐)二、通过$emit (小编很推荐)3、provide/inject (不建议)4、 $parent (不建议) 一、通过props(比较推荐) 在父组件页面给子组件绑定方法,左边是子组件接收的方法名,内容…

6 种 卷积神经网络压缩方法

文章目录 前言 1、低秩近似 2、剪枝与稀疏约束 3、参数量化 4、二值化网络 (1)二值网络的梯度下降 (2)两个问题 (3)二值连接算法改进 (4)二值网络设计注意事项 5、知识蒸馏 6、浅层 …

SpringBoot基础入门

SpringBoot2讲义链接 源码链接 springboot中文网 由于讲义中有代码的详细实现步骤,故此笔记只记录理论部分,项目具体构建细节需搭配 讲义 食用 csdn比较好的博客 第一章 JavaConfig 项目见讲义第1章,项目名为 001-springboot-pre Xml 配置容…

亲测:腾讯云8核16G服务器价格1668元一年送3个月,购买需谨慎

腾讯云8核16G轻量服务器CPU性能如何?18M带宽支持多少人在线?轻量应用服务器具有100%CPU性能,18M带宽下载速度2304KB/秒,折合2.25M/s,系统盘为270GB SSD盘,月流量3500GB,折合每天116.6GB流量&…