小程序安全 | 对某次渗透项目加密密文进行解密

渗透技巧 1年前 (2022) admin
380 0 0

小程序安全 | 对某次渗透项目加密密文进行解密

1.当接到某个项目进行渗透测试时,我个人比较偏向小程序,当我打开小程序点击其他功能点的时候发现参数被进行加密了。

小程序安全 | 对某次渗透项目加密密文进行解密

2.对小程序进行反编译后得到小程序的前端代码,使用小程序开发者工具进行查找搜索encrypt参数,先看app.js成功定位到encrypt。ps(为什么先看APP.js,因为其他那些是引用的库)

小程序安全 | 对某次渗透项目加密密文进行解密

3.跟进 o,o是A6F17FD27F6C38AFC09717D525323F76.js

小程序安全 | 对某次渗透项目加密密文进行解密

4.找到 A6F17FD27F6C38AFC09717D525323F76.js 中的encrypt

小程序安全 | 对某次渗透项目加密密文进行解密

5.成功找到加密方法:


   r.encrypt = function(t,e,i) {
      return function(t, e, i) {
        var n = r.enc.Utf8.parse(t);
        return r.AES.encrypt(n, e, {
          iv: i,
          mode: r.mode.CBC,
          padding: r.pad.Pkcs7
        }).ciphertext.toString().toUpperCase();
      }(t, e, i);
    }, r.decrypt = function(t, e, i) {
      return function(t, e, i) {
        var n = r.enc.Hex.parse(t), s = r.enc.Base64.stringify(n);
        return r.AES.decrypt(s, e, {
          iv: i,
          mode: r.mode.CBC,
          padding: r.pad.Pkcs7
        }).toString(r.enc.Utf8).toString();
      }(t, e, i);
    }, module.exports = r;
               

小程序安全 | 对某次渗透项目加密密文进行解密

6.现在得到的信息有:

aes加密,cbc模式,pkcs7填充

aes解密函数第一个参数s是明文,第二个参数e是密钥,i是iv

跟进e,发现e是传进来的

那就只能搜一下key试试看看


小程序安全 | 对某次渗透项目加密密文进行解密

7.继续 跟进n,看一下1F03AD467F6C38AF7965C541D7123F76.js

小程序安全 | 对某次渗透项目加密密文进行解密

8.成功找到key和iv值


小程序安全 | 对某次渗透项目加密密文进行解密

9.剩下就是拉出来js文件调试;成功解密出密文。

小程序安全 | 对某次渗透项目加密密文进行解密

解密成功密文后接下来跟常规渗透测试无区别了。

原文始发于微信公众号(星云安全):小程序安全 | 对某次渗透项目加密密文进行解密

版权声明:admin 发表于 2022年11月26日 下午3:21。
转载请注明:小程序安全 | 对某次渗透项目加密密文进行解密 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...