这次逆向的案例是财联社的登录接口,难度比之前的案例要高一点。涉及到混合加密

参数列表里面是sign被加密过了,其他三个参数看起来像固定参数

找到红框框起来的部分点进去

鼠标点到S这个接口进去看里面是什么东西,能不能有什么新的发现

在这几段代码打上断点,看看做了什么,开始调试

在这个位置,t的参数还是个明文,调试回去之后发现变成密文了!

进入方法内部,查看,明摆着写着sha1加密算法

现在加密环节也研究的差不多了,可以开始写用js代码模拟了

这是浏览器输出的结果

这是在编译器测试的结果,可以看到是完全一致的,到这了就模拟完成了!当然为什么第二个算法是md5呢??是因为第一次产生的结果是32的,可以确定就是MD5算法。
附js代码
const CryptoJS = require('crypto-js');
res = CryptoJS.SHA1("app=CailianpressWeb&cdate=2024-05-17&os=web&sv=7.7.5").toString()
console.log(res)
sign = CryptoJS.MD5(res).toString()
console.log(sign)
// sign = CryptoJS.MD5(res).toString()
// console.log(res)