js逆向实战之某乐网登录参数pwd加密
声明:本篇文章仅用于知识分享,不用于其他用途
网址:https://oauth.d.cn/auth/goLogin.html
解密逻辑分析
- 访问网址,随便输入用户名和密码,看触发的流量包。
 ![image]() 
- 可以看到用户名是明文的,密码却是经过加密的,我们先看看是不是常用的加密。利用网站 https://1024tools.com/hash 查看。
 ![image]() 
- 经过对照,没有一个符合,就得我们自己找逻辑了。全局搜索auth/login关键字。
 ![image]() 
- 只有两处,很好判断,第一处就是我们要找的地方,点进去。
 ![image]() 
- 打断点,看看submitData是什么。
 ![image]() 
- 已经是加密后的数据了,说明加密逻辑在上面,往上翻翻就可看到submitData定义的地方。
 ![image]() 
- submitData中的- pwd是由- rsaPwd赋值的,搜索- rsaPwd是哪里定义的。
 ![image]() 
- 找到定义处,是个rsa加密,找到rsa函数的定义位置。
 ![image]() 
- 开始抠代码了。
var rsa = function (arg) {
      setMaxDigits(130);
      var PublicExponent = "10001";
      var modulus = "be44aec4d73408f6b60e6fe9e3dc55d0e1dc53a1e171e071b547e2e8e0b7da01c56e8c9bcf0521568eb111adccef4e40124b76e33e7ad75607c227af8f8e0b759c30ef283be8ab17a84b19a051df5f94c07e6e7be5f77866376322aac944f45f3ab532bb6efc70c1efa524d821d16cafb580c5a901f0defddea3692a4e68e6cd";
      var key = new RSAKeyPair(PublicExponent, "", modulus);
      return encryptedString(key, arg);
  };
console.log(rsa("123123"));
运行发现,没有setMaxDigits函数。

回去找定义位置。

直接把这个文件中的所有代码复制出来。再运行,没有RSAKeyPair函数。

继续回去找。

直接把这个文件中的所有代码复制出来。再运行,没有BarrettMu函数。

继续回去找。

直接把这个文件中的所有代码复制出来。再运行,成功得到结果。

与数据包中pwd的值一致,完事。
 
                     
                    
                 
                    
                







 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号