某后台管理系统加密参数逆向分析

news2024/11/29 2:49:25

前言

在我们日常的渗透中经常会遇到开局一个登录框的情况,弱口令爆破当然是我们的首选。但是有的网站会对账号密码等登录信息进行加密处理,这一步不由得阻碍了很多人的脚步。前端的加解密是比较常见的,无论是 web 后台还是小程序,都常常存在加解密传输,签名防篡改等机制,会使很多渗透人员没有办法直接对参数的值进行更改,大大增加了攻击者的攻击成本。本文将一个带验证码的后台实站案例与大家分享。

正文

发包逻辑分析:

开局一个登录框,随便输入一段账号密码跟验证码进行抓包

提交错误的验证码跟账号密码弹出了验证码错误!的提示,说明这个数据包就是校验账号密码跟验证码的数据包

查看一下参数,账号,验证码都是明文,密码被加密了

搜索参数关键词password,可以看到一个带有login的js文件,双击进入文件。

在文件内部总共有10个password关键词,全部打上断点发包校验。

断点在196行断了下来,t.param.password是明文。经过Object(i[“a”])函数运行之后就成了加密密文。证明Object(i[“a”])便是加密函数!后续便是把所有需要拿去爆破的明文加密成密文便可绕过前端加密直接进行暴力破解。

扣加密函数:

进入到加密函数内部查看

可以看到函数内部有个s函数,将断点下到156行,查看传进来的t是什么值,以及经过s函数运行之后的返回值又是什么呢。

t是传进来的明文,返回值是加密之后的值。

观察一下代码,可以看到"93a9"和 “7d92”,把代码拉到第一行,这个站点用的webpack打包技术。

那么webpack又是什么呢?

帮助网安学习,全套资料S信免费领取:
① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

WebPack打包

webpack是一个基于模块化的打包(构建)工具, 它把一切都视作模块

概念:

webpackJavaScript 应用程序的模块打包器,可以把开发中的所有资源(图片、js文件、css文件等)都看成模块,通过loader(加载器)和plugins(插件)对资源进行处理,打包成符合生产环境部署的前端资源。所有的资源都是通过JavaScript渲染出来的。

如果一个页面大部分是script标签构成,80%以上是webpack打包。

  1. webpack打包简介

image20220329153518062

多个JS文件打包:

如果模块比较多,就会将模块打包成JS文件, 然后定义一个全局变量 window["webpackJsonp"] = [ ],它的作用是存储需要动态导入的模块,然后重写 window["webpackJsonp"] 数组的 push( ) 方法为 webpackJsonpCallback( ),也就是说 window["webpackJsonp"].push( ) 其实执行的是 webpackJsonpCallback( ),window["webpackJsonp"].push( )接收三个参数,第一个参数是模块的ID,第二个参数是 一个数组或者对象,里面定义大量的函数,第三个参数是要调用的函数(可选)

寻找加载器

加载器一般是使用call或者apply方法

call() 方法会立即执行这个函数,接受一个多个参数,参数之间用逗号隔开;
apply()方法会立即执行这个函数,接受一个包含多个参数的数组;

我们找类似i(“1ff3”)这种的字眼,然后打断点,刷新页面进断点,一般就可以找到加载器了

断点断下来之后直接进入加载器函数

可以看到d函数里面明显的使用了call函数。

直接全扣整段webpack代码。

定义全局变量调用模块,运行代码

var 君主;

报错windows未定义。直接补上window对象。

var window={};

在导出的模块里面没有寻找到我们需要的“7d92”模块

复制donate~login.06871226.js文件到ide折叠,将其7d92模块复制到我们有加载器的模块数组里面。

调用7d92模块

报错了TypeError: Cannot read properties of undefined (reading ‘call’)模块缺失的错误。

打印传进去的模块,看看是缺失哪个模块咱们直接补。

缺失1ff3模块

缺失f28c模块

浏览器全局搜索f28c,模块f28c在chunk-vendors.db1c4c0d.js文件里面。

缺失143d模块,143d模块在donate~login.06871226.js文件里面。

后续报错的93a9,ea6a模块也都在donate~login.06871226.js文件里面。

没有报错了,调用当前函数。加密值出来了。

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

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

相关文章

TransNeXt:稳健的注视感知ViT学习笔记

论文地址:https://arxiv.org/pdf/2311.17132.pdf 代码地址: GitHub - DaiShiResearch/TransNeXt: Code release for TransNeXt model 可以直接在ImageNet上训练的分类代码:GitHub - athrunsunny/TransNext-classify 代码中读取数据的部分修改…

数据驱动与数据安全,自动驾驶看得见的门槛和看不见的天花板

作者 |田水 编辑 |德新 尽管心理有所准备,2023年智能驾驶赛道的内卷程度还是超出了大多数人的预期。 这一年,汽车价格战突然开打,主机厂将来自销售终端的价格压力,传导到下游智驾供应商,于是,市面上出现…

鸿蒙4.0实战应用(ArkTS)-抽奖转盘

构建主界面 在这个章节中,我们将完成示例主界面的开发,效果如图所示: 功能要求: 通过画布组件Canvas,画出抽奖圆形转盘。通过显式动画启动抽奖功能。通过自定义弹窗弹出抽中的奖品。 在绘制抽奖圆形转盘前&#xff…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之线性布局容器Column组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之线性布局容器Column组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Column组件 沿垂直方向布局的容器。 子组件 可以包含子组件。 接…

github登录需要双因素认证(Two-factor authentication)

前言 这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱 github登录需要双因素认证(Two-factor authentication) 今天登录github发现需要绑定双因素才能够登录 我们…

uniapp 底部导航栏 tabBar

在 static 文件夹中新建文件夹 tabBar,放入标签图片 源素材如下: 在 pages.json 中添加 // 底部导航"tabBar": {// tab默认文字颜色"color": "#bfbfbf",// tab选中后的文字颜色"selectedColor": "#153c65&…

【SpringCloud】-Nacos客户端与服务端源码解析

Nacos系列 Nacos—简述、注册中心、配置中心 Nacos安装教程 SpringBoot项目与Nacos配置 一、背景介绍 Nacos(Naming and Configuration Service)是阿里巴巴开源的服务发现和配置管理工具,它是一个全面的微服务基础设施组件,提供…

HTML-基础知识-基本结构,注释,文档说明,字符编码(一)

1.超文本标记语言不分大小写。 2.超文本标签属性名和属性值不区分大小写。 3.超文本标签属性值重复&#xff0c;听取第一个。 4.html结构 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"vi…

MySQL数据库多版本并发控制(MVCC)

在数据库中&#xff0c;并发控制是确保多个事务能够同时执行&#xff0c;而不会导致数据不一致或冲突的关键机制。多版本并发控制(MVCC)是一种流行的并发控制方法&#xff0c;它可以允许多个事务同时读取同一数据项的不同版本&#xff0c;而不会相互阻塞。本文将讨论MVCC的原理…

dubbo-admin连接虚拟机中的zookeeper报错zookeeper not connected

目录 前言 解决过程 总结 前言 可以优先查看总结看能否解决大家的问题&#xff0c;如果不能解决不需要查看解决过程浪费时间了。 解决过程 该问题卡住我很久&#xff0c;网上大多数文章都是修改配置文件中的连接超时时间&#xff0c;即修改如下内容 dubbo.registry.tim…

【2023】通过docker安装hadoop以及常见报错

&#x1f4bb;目录 1、准备2、安装镜像2.1、创建centos-ssh的镜像2.2、创建hadoop的镜像 3、配置ssh网络3.1、搭建同一网段的网络3.2、配置host实现互相之间可以免密登陆3.3、查看是否成功 4、安装配置Hadoop4.1、添加存储文件夹4.2、添加指定配置4.3、同步数据 5、测试启动5.1…

windirstat磁盘管理工具,清理磁盘神器(附网盘链接)

Windirstat是一款用于可视化磁盘空间使用情况的开源工具。它允许用户以图形方式查看磁盘上的文件和文件夹&#xff0c;以便更容易地识别和理解哪些文件或文件夹占用了最多的磁盘空间。该工具通过在磁盘上创建一个可交互的树状图&#xff0c;以及颜色编码和图表&#xff0c;帮助…

短说社区运营的使用工具分享(一)

本文是一篇针对短说社区运营的使用工具分享帖&#xff0c;是小编结合日常使用&#xff0c;总结的一些可以帮助网站管理员和运营人员进行日常操作和管理的工具。 1. 想天工作台之运营面板 想天工作台可以将桌面划分不同的类型来辅助办公&#xff0c;我分享下我当前的桌面情况&…

Linux下安装RocketMQ

1、创建文件夹app/rocketMQ 在xshell里可以找到这里&#xff0c;xftp可以直接创建文件夹&#xff0c;并上传文件&#xff0c;也可以使用命令创建文件夹&#xff0c; 创建文件夹命令&#xff1a;mkdir app、mkdir rocketMQ 2、上传好后解压 使用命令解压 unzip 压缩包名 3、获…

python进阶 — Python解释器

1、Python解释器 Python解释器是一个计算机程序&#xff0c;它将Python代码转换为计算机可以理解的机器代码&#xff0c;并执行这些机器代码。 1. 这篇文章介绍如何下载和安装Python解释器&#xff1a; python基础&#xff08;2&#xff09;— 环境搭建 2 . 这篇文章介绍如…

三年Java开发的技术职业规划

开篇 时间如白驹过隙般&#xff0c;不知不觉又到了一年的结尾。回头展望&#xff0c;已经从业Java开发三年。这三年内酸甜苦辣也都领会过&#xff0c;整体这一年&#xff0c;一句话评价的话&#xff0c;那就是也无风雨也无晴。 不管怎样&#xff0c;疫情三年后的第一个年&…

案例253:基于微信小程序的懂球短视频管理系统

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SpringBoot JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder …

DDR3通信协议介绍篇

一.DDR3简介 DDR核心技术点就在于&#xff1a;(1)双沿传输。(2)预取prefetch. DDR的频率&#xff1a;(1)核心频率 (2)时钟频率 (3)数据传输频率&#xff1b;核心频率就是内存的工作频率&#xff1b;DDR1内存的核心频率是和时钟频率相同的&#xff0c;到了DDR2和DDR3时才有了时…

【kubernetes】集群网络(一):基础篇

Flannel 1 路由表 & arp & fdb 1.1 路由表 任何网络设备都需要路由表&#xff0c;路由表用来决定&#xff0c;当收到数据包时&#xff0c;该向哪里进行转发。路由表项通常会包含以下几个字段&#xff1a; Destination&#xff1a;目的地Gateway&#xff1a;网关Mas…

GA/T1400公安视图库在视频监控系统中对接及方案

公安视频图像信息应用系统系列标准&#xff0c;标号为GA/T 1400&#xff0c;现行版本为2017年版&#xff0c;由公安部发布。现较广泛地使用于平安城市安防监控系统、智慧城市安防监控系统、雪亮工程安防监控系统之中。 公安视频图像信息应用系统系列标准&#xff0c;共分为4个部…