前端JS加密对抗由浅入深-2

前言:

本文主要讲解,针对前端非对称、多段加密数据传输站点,如何进行动态调试,如何进行安全测试。本次讲解不涉及任何漏洞方面,仅为学习探讨,该站点现已经更改加密方式,严禁非法测试!

首先我看来看一下请求包效果
在这里插入图片描述
该站点无论是请求还是返回包均为密文,且加密方式为AES+DES+RSA三段式加密,找不找秘钥已经意义不大了,但是活还得干,毕竟请求和返回都是密文的,那么这种情况我们应该如何进行测试?如何入手呢?
老规矩,打开开发者工具,登录一次后查看网络选项
在这里插入图片描述
定位到加密处,直接打断点即可
在这里插入图片描述
此时输入用户名密码
在这里插入图片描述

成功一步到位,直接就拿到了加密之前的请求包数据,既然无法bp测试,那么我们可以直接在控制台进行参数修改
在这里插入图片描述
上图是加密的位置,我们一会需要利用这个函数,因为当时笔者没有截图,现在站点已经修复了,下面的函数是可以断点打到的
在这里插入图片描述
可以看到,我们吧参数加进去后,直接是可以对数据包进行加密的,其实大家也可以按照第一个断点进行参数的修改,这个断点其实有点画蛇添足的味道,不过这里的目的主要是用来演示返回包异常用的,所以各位看官请耐心看下去

在这里插入图片描述
上图其实是BP接到的返回包,但是当初没有截图,所以大家看起来有点别扭,截这个图的目的其实是为了告诉各位,非对称加密是不可逆的,所以最好不要用这种办法去进行返回包解密,大家可以直接截取到返回包解密后的函数进行断点,然后就可以看到明文的返回包,而不要想着去发包改包然后解密返回包,这么做有一种脱裤子放屁的感觉

在这里插入图片描述
上图为重新打的断点,这几个断点的目的是为了截取到明文的返回包,接下来我们可以看,我们无需进行数据包二次加密,而是在控制台直接修改请求数组里面的其中一个参数
在这里插入图片描述
第一步,回到控制台,opts.param可以看到所有的请求参数
在这里插入图片描述
假设我们只修改lbnNm参数
在这里插入图片描述
此时返回调试,放过F10一次,代码运行到rpdata = eval(“(” + rpdatas + “)”);
在这里插入图片描述
返回控制台,此时看到返回体是加密的 rpdata
在这里插入图片描述
返回调试程序,单步步过,直到程序运行至
rpdata = YT.isEmpty(rpdata.body)?rpdata:rpdata.body;
在这里插入图片描述
返回控制台,输入rpdata ,得到明文返回包
在这里插入图片描述
可是如果每个接口的请求包和返回包都这么玩的话,那么可太麻烦了,可是步骤省略也是有限度的,那么我们可以直接修改ajax.js代码,每次自动返回请求和返回的明文数据,然后根据实际情况去看是不是需要进行测试
在这里插入图片描述
其实就是在加密之前和解密之后,任意位置添加控制台打印就行了
在这里插入图片描述
那么此次调试就告一段落了,下一期,将会为大家介绍,网站不知道什么加密方式,做了debuger反调试,应该如何进行愉快的调试,让我们敬请期待吧

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Uncaught (in promise) ReferenceError: require is not defined

在 Vue3 中加载项目路径下的资源图片,起初按照之前 vue 的写法 require 但浏览器却抛出了异常 Uncaught (in promise) ReferenceError: require is not defined 因为 require 采用的 webpack 加载方式,而 vue3 中通过 vite 的方式,两者存在差异,所以才产生了刚开始的一目; vu…

python基础教程八(循环1)

1. while循环 为避免多次重复的代码&#xff0c;我们会用到循环 while (condition): 执行语句 while循环的结构非常简单只要条件满足就一直循环直到&#xff0c;条件不满足为止。 例子如下&#xff1a; x1 while x<100:print(x)x1结果就是最简单的输出1-100的数字 while…

MySQL常用连接工具

Navicat 缺点&#xff1a;老版本不支持mysql8数据库连接&#xff0c;而且样式没有新版的好看 优点&#xff1a;新版支持多种数据连接&#xff0c;而且样式比较好看 HeidiSQL 官网&#xff1a;Download HeidiSQL 有一个非常好的优点就是不用输入表名称&#xff1a;双击就会自…

TS 36.211 V12.0.0-上行(4)-参考信号

本文的内容主要涉及TS 36.211&#xff0c;版本是C00&#xff0c;也就是V12.0.0。 本文具体内容为该协议的<Uplink>一章中的5.5节。

OS_lab——分页机制与内存管理

认真阅读章节资料&#xff0c;掌握什么是分页机制 调试代码&#xff0c;掌握分页机制基本方法与思路 代码pmtest6.asm中&#xff0c;212行~237行&#xff0c;设置断点调试这几个循环&#xff0c;分析究竟在这里做了什么 掌握PDE&#xff0c;PTE的计算方法 动手画一画这个映…

C# OpenCvSharp DNN 部署yoloX

目录 效果 模型信息 项目 代码 下载 C# OpenCvSharp DNN 部署yoloX 效果 模型信息 Inputs ------------------------- name&#xff1a;images tensor&#xff1a;Float[1, 3, 640, 640] --------------------------------------------------------------- Outputs ---…

Showroom Environment gallery

展示厅环境-画廊 PBR包中的所有纹理。它们适用于URP和内建。在标准状态下,所有内容都是在URP下配置的。如果你有整个场景“粉红色”,请更改渲染设置。 简单的画廊内部,配有用于照片和图片的画布。非常适合您的虚拟画廊或展厅。此套餐包含一个展厅,您可以在其中展示您的作品…

python总结-生成器与迭代器

生成器与迭代器 生成器生成器定义为什么要有生成器创建生成器的方式一(生成器表达式) 创建生成器的方式二(生成器函数)生成器函数的工作原理总结 迭代器概念可迭代对象和迭代器区别for循环的本质创建一个迭代器 动态添加属性和方法运行过程中给对象、类添加属性和方法types.Met…

我想从Spring Cloud Alibaba开始聊聊架构的本质?

另外我的新书RocketMQ消息中间件实战派上下册&#xff0c;在京东已经上架啦&#xff0c;目前都是5折&#xff0c;非常的实惠。 https://item.jd.com/14337086.html​编辑https://item.jd.com/14337086.html “RocketMQ消息中间件实战派上下册”是我既“Spring Cloud Alibaba微…

【Helm 及 Chart 快速入门】01、Helm 基本概念及仓库管理

目录 一、为何需要 Helm 二、什么是 Helm 三、Helm 核⼼概念 四、Helm 架构 五、Helm 安装 六、Helm 仓库管理 6.1 查看仓库 6.2 添加仓库 6.3 更新仓库 6.4 删除仓库 一、为何需要 Helm 在早期的 Linux 系统中&#xff0c;维护和安装软件包是⼀件极其麻烦的…

【赠书第16期】码上行动:用ChatGPT学会Python编程

文章目录 前言 1 ChatGPT简介 2 Python编程简介 3 使用ChatGPT学习Python编程 4 如何使用ChatGPT学习Python编程 5 推荐图书 6 粉丝福利 前言 随着人工智能技术的不断发展&#xff0c;聊天机器人已经成为我们日常生活和工作中不可或缺的一部分。其中&#xff0c;ChatGP…

Android系统的启动流程

Android系统启动流程大致可以概括为以下的几个步骤&#xff1a; 电源启动BootLoader启动Linux内核启动init进程启动Zygote进程启动SystemServer进程启动Launcher启动 关键的进程及其作用&#xff1a; init进程 init进程是Android系统中用户空间的第一个进程&#xff0c;进程号…

leetcode 每日一题 2023年12月28日 收集巧克力

题目 2735. 收集巧克力 给你一个长度为 n、下标从 0 开始的整数数组 nums&#xff0c;nums[i] 表示收集位于下标 i 处的巧克力成本。每个巧克力都对应一个不同的类型&#xff0c;最初&#xff0c;位于下标 i 的巧克力就对应第 i 个类型。 在一步操作中&#xff0c;你可以用成…

每个程序员都该学习的5种开发语言

我曾在某处读到过&#xff08;可能在《代码大全》&#xff0c;但我不敢确定&#xff09;&#xff0c;程序员应该每年学习一门新的编程语言。但如果做不到&#xff0c;我建议&#xff0c;你至少学习以下5种开发语言&#xff0c;以便你在职业生涯有很好的表现。 每个公司都喜爱精…

【数据结构】数据结构中应用题大全(完结)

自己在学习过程中总结了DS中几乎所有的应用题&#xff0c;可以用于速通期末考/考研/各种考试。很多方法来源于B站大佬&#xff0c;底层原理本文不做过多介绍&#xff0c;建议自己研究。例题大部分选自紫皮严书。pdf版在主页资源 一、递归时间/空间分析 1.时间复杂度的分析 设…

润和软件HopeStage与永中Office完成产品兼容性互认证

近日&#xff0c;江苏润和软件股份有限公司&#xff08;以下简称“润和软件”&#xff09;HopeStage 操作系统与永中软件股份有限公司&#xff08;以下简称“永中软件”&#xff09;永中Office办公软件完成产品兼容性测试。 测试结果表明&#xff1a;企业级通用操作系统HopeSta…

2023量子科技十大人物(团队) | 光子盒年度系列

今年&#xff0c;是量子科学与技术的又一个丰收年&#xff0c;学术研究团体和科技公司纷纷庆祝在量子计算、量子通信和量子计量学以及基础量子科学方面取得的重大成就。面对如此多令人兴奋的进展&#xff0c;我们不能不为这些进展庆祝——而所有这些的一切&#xff0c;都离不开…

如何编写高效的正则表达式?

正则表达式&#xff08;Regular Expression&#xff0c;简称regex&#xff09;是一种强大的文本处理技术&#xff0c;广泛应用于各种编程语言和工具中。本文将从多个方面介绍正则表达式的原理、应用和实践&#xff0c;帮助你掌握这一关键技术。 正则可视化 | 一个覆盖广泛主题…

为什么网络安全从业者都考CISP-PTE

网络an全从业者考取CISP-PTE证书的原因&#x1f447; 1️⃣高度认可 &#x1f48e;CISP-PTE证书是中国信息an全测评中心认证颁发&#xff0c;是国家对信息an全人员资质的zui高认可&#xff0c;具有很高的含金量。 对于网络an全从业者来说&#xff0c;可以证明自己具备规划测试方…

【python、pytorch】

什么是Pytorch Pytorch是一个基于Numpy的科学计算包&#xff0c;向它的使用者提供了两大功能。作为Numpy的替代者&#xff0c;向用户提供使用GPU强大功能的能力。做为一款深度学习的平台&#xff0c;向用户提供最大的灵活性和速度。 基本元素操作 Tenors张量&#xff1a;张量…