[JS逆向] 某大学登录加密逆向教程

admin
2021-10-12 / 0 评论 / 143 阅读 / 正在检测是否收录...

声明:本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!

事情起源于我的一个朋友半夜发我的一个站...
Test
然后就开始了我们接下来得学习之旅

①咳咳,首先我们打开无痕模式,然后打开目标站点,用F12抓一下包
Test
可以看到有个login的包,很明显就是我们今天的目标
Test
点进去发现个password,我们要逆向的就是这个加密参数
②我们直接搜索password这个参数名,然后往下翻,看到个很可疑的东西(encryptAES),直接点进去,先格式化,发现有两个地方调用了这个函数,所以建议两个地方都打个断点,最后我们重新刷新一下网页,抓包,发现断点断住了
Test
可以看到encryptAES这函数传进去的两个参数第一个是我们的密码,另一个是一串字符串,我第一反应是key(后面发现确实是key)。

data = "88888888888888", _p1 = "SdsdCPXnTHBbWg1V"

控制台输出一下这函数的返回值:
Test

HU9+4XIJ0LUQONs6QYrNydL5tR2UCbKBr3snJt8+MTGPpdIcuTk+/t8RdixQqJMv2Q7IpYTUXmm0gtVqJ4TR2fUgUPYwvJuOjruMaUgtFEc=

③我们继续跟进去encryptAES这函数里面,发现又调用了另一个函数_gas,害,这写的挺绕的!我们接着给他下个断点
Test
输出了一下各参数的值
Test

_gas(_rds(64) + data, _p1, _rds(16)):
'YT5rFLrveAKHdRmYm8KIg1X5eSAuLDl3M1uDaowPiip13YYnB/1JAkG6lxFrnsPcnPhIJcf45lmUpH88dut2RixLrKlAAQELYa9cJY4xxcU=';
_rds(64):
'Q6ysTR2e54TRbdYQRmZ66imNAZ74X6YiairwjfzQM7PPKAefK3CQWGSRJQhyHrZJ';
_rds(16):
'zHhnApeDkj7hMjwH'

ps: 经分析_rds此函数的作用就是生成一串随机数(每次调用返回的值都不一样)

function _rds(len) {
    var retStr = '';
    for (i = 0; i < len; i++) {
        retStr += $_chars.charAt(Math.floor(Math.random() * _chars_len));
    }
    return retStr;
}

④我们接着跟着断点跳进去_gas(data, key0, iv0)这个方法内,发现就在上面刚刚找的那个方法。看到这熟悉的加密方式,有经验的人就已经知道答案了,加密方式确实是aes-cbc,因为这是个标准加密方式,所以我们只需要拿到key和iv即可,给他俩在下个断点
Test


function _gas(data, key0, iv0) {
    key0 = key0.replace(/(^\s+)|(\s+$)/g, "");
    var key = CryptoJS.enc.Utf8.parse(key0);
    var iv = CryptoJS.enc.Utf8.parse(iv0);
    var encrypted = CryptoJS.AES.encrypt(data, key, {
        iv: iv,
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
    });
    return encrypted.toString();
}

最后断点得出:


"传进来的key先做了一个正则处理":key0.replace(/(^\s+)|(\s+$)/g, "");
"最终的key为":
key = SdsdCPXnTHBbWg1V;
iv = DP8rtKjZ88ez7Q7Z;

至此,此站点逆向解密,完美收工!

⑤ 总结: 这个站有点奇怪,因为iv从我们传参的时候可以发现,iv就是随机数,所以iv不管是啥,我们最后的密文都能解密,只要保证key准确即可!(可能平台开发者故意迷惑人,或者是学生写的吧,哈哈)
ps: 很早就打算写一些关于这类知识的博文,正好今天闲着没事就水一下文咯,后期有时间的话也会一直更新逆向知识(包括APP)!

声明: 本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!

5

评论 (0)

取消