干货!| 针对前端加密爆破的方法及实战案例

一 、概述

现在基本上大部分web应用系统都在后台登录界面对密码使用了js加密,有的是将用户名密码同时进行了加密,对于使用了加密的我们可以利用burp插件直接调用加密函数本地加密后再进行爆破,也可以使用一些工具直接模拟浏览器登录界面进行爆破。

二、工具介绍

1、blasting(图形化爆破工具)
优点:可自动化进行爆破和验证码识别,无视加密方法,调试难度较低
缺点:结果只有title和响应长度,爆破结果可能存在误报
下载方式:https://github.com/gubeihc/blasting

2、jsEncrypter | 前端加密Fuzz插件
优点:burp安装,速度快,准确率高,结果方便查看
缺点:需要下载加密js到本地,需要手动查找加密函数的调用方法
下载方式:https://github.com/c0ny1/jsEncrypter

3、BurpCrypto | burp插件
优点:无需下载js,在burp中可以进行加解密
缺点:需要手动查找加密参数,目前仅支持AES/DES加密、RSA公钥加密
下载方式:burp扩展商店搜索BurpCrypto安装

三、实战案例

1、通过BurpCrypto 进行爆破使用前缀+AES加密的参数

(1)加密方法查找

1、首先输入用户名123,密码456,使用抓包工具拦截查看

图片

2、可以看到用户名和密码都进行了加密,并且这里我们得知了对应的参数loginName和loginPwd

图片

3、浏览器F12,这里先搜索下loginName

图片

4、 在我们觉着比较像是加密函数调用的地方,打个断点,不是没有关系,多打几次断点看看就行

这里我们看到用户名和密码还没有被加密,但是用户名加了一个前缀”undefined#”,那我们继续往上翻

图片

5、 从前面我们可以看到loginName=orgid+#+loginName1 (undefind#123),这里我们也就知道用户名的前缀怎么来的了,继续往下看

图片

6、继续点击单步跳过下一个函数执行,从下图可以看出加密是使用aes对用户名和密码进行加密,并且key和iv这里都给出来了,那是不是就可以拿着加密后的值去反向解密去验证了呢,当然可以,但是我们还需要知道aec加密的模式等,继续往下翻

图片

7、从下图可以看出,AES加密的模式为CBC,填充为Pkcs7,编码是base64

图片

8、 现在我们使用解密工具去验证一下,从下图可以看到,用户名和密码成功解密,证明我们加密参数没有问题,接下来就到了下一步自动进行加密爆破

图片

图片

(2)BurpCrypto使用及配置方法

1、 打开burp选择对应插件,配置如下参数,点击add processor 并填写任意名称

图片

2、 将之前抓到的登陆包发送至爆破模块,这里将用户名和密码都添加上

图片

3、再进行添加用户名字典及处理规则,处理规则里先添加前缀undefined#,再添加BurpCrypto扩展调用,密码直接添加BurpCrypto扩展调用即可

图片

图片

4、 点击开始攻击后即可进行爆破,同时插件也可以支持解密,使用方法为完整选中密文内容,右单击后找到BurpCrypto菜单中的Get PlainText功能。

图片

更多网络安全优质免费学习资料与干货教程加

送渗透工具、技术文档、书籍,面试题、视频(基础到进阶。环境搭建,HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)、应急响应笔记、学习路线。

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值