如何实现c0ny1师傅的burp/jsEncrypter插件的自定义加密算法模块

前言

书接上回,既然弄出了js前端加密那么后面如果要爆破的话如何做到呢,花了一些时间研究了c0ny1/jsEncrypter的burp插件拓展发现很好用,但是如果我们要自定义加密算法的话需要自己修改代码,但是网上又没有比较详细的自定义算法的文章,所以便打算记录一下爬坑日记

Js编辑

c0yn1师傅的github项目地址为:
https://github.com/c0ny1/jsEncrypter
由于之前试过的例子发现很多前端加密都是使用了AES算法加密,但是c0yn1师傅的模块没有AES,所以我们需要自己编写。
具体安装过程就不过多阐述。
所以接下来就详细的说明一下如何针对前端加密来进行算法的提炼。
还是上一篇文章的例子,如图:
上一篇文章:https://www.wjlshare.xyz/2020/03/23/%e8%ae%b0%e4%b8%80%e6%ac%a1%e5%89%8d%e7%ab%af%e5%8a%a0%e5%af%86%e7%9a%84%e7%a0%b4%e8%a7%a3plus/

在这里插入图片描述
红框部分是一个aes加密的算法,所以我们要进行算法的提炼

在这里插入图片描述

我们需要把我们提炼之后的算法添加到模版的红框位置中

第一步,我们进行算法的提炼:
通过看网页的加密js代码,不难看出 是采用了 CryptoJS 这个依赖
所以我们只需要把 d.a 转成CryptoJS 就可以了

      const srcs = CryptoJS.enc.Utf8.parse(word);
       encrypted = CryptoJS.AES.encrypt(srcs, key, {
   
       iv:  CryptoJS.enc.Utf8.parse("1234567812345678"),
       mode: CryptoJS.mode.CBC,
       padding: CryptoJS.pad.Pkcs7
      });

这是转化的第一步 ,然后就像上一篇文章所说的那样,我们需要设断点来获取aes-key,然后在我们的javascript上补充上,然后稍加整理获得如下代码 :

    const key = CryptoJS.enc.Utf8.parse("PBLUREBUWNXCXHRQ"); //16位
    const iv = CryptoJS.enc.Utf8.parse("1234567812345678");
    const srcs = CryptoJS.enc.Utf8.parse(burp_payload);
    encrypted = CryptoJS.AES.encrypt(srcs, key, {
   
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值