0
点赞
收藏
分享

微信扫一扫

js逆向-土巴兔登陆pwd分析

声明

本文仅供学习参考,请勿用于其他途径,违者后果自负!

前言

目标网站:aHR0cHM6Ly93d3cudG84dG8uY29tL25ld19sb2dpbi5waHA=

接口:aHR0cHM6Ly93d3cudG84dG8uY29tL25ld19sb2dpbi5waHA=

参数分析

抓包看到有两处加密,分别是val和pwd。 在这里插入图片描述 由于该请求不是xhr,所以没有办法在这里下xhr断点。只能通过搜索关键字去找加密的文件,搜索password会发现有很多js文件。通过观察js文件的名字,发现了端倪。 loginAndReg.js命名的文件很可疑,跳入该文件继续搜索关键字。

一共7处,分别打上断点,重新请求。 在这里插入图片描述

断点断在133行,此时的usernum还是明文,F8跳到下一个断点,发现此时已经将密码的val设置为密文,val函数中的值是一个函数。看名字就知道是一个rsa加密,直接将明文传入生成密文。然后将密码设置为密文。

136行发现username也是同样操作,都是将加密后的结果设置为密文。

既然加密函数找到了,直接跳进观看加密逻辑。

在这里插入图片描述 将加密后的结果进行编码。

先把内层的函数拿下来,encodeURIComponent是js的自带函数直接使用就可以了。 在这里插入图片描述

继续跳入就可以看到rsa的全部逻辑都在这里了,直接cv到本地。 在这里插入图片描述 navigator未定义,直接在开头定义一个。

 navigator = {};

重新加载代码发现window未定义。 在这里插入图片描述

同理,在开头定义一下。

window = this;

重新加载发现没有问题了。

然后把加密函数写一下

function rsaString(str) {
    return encodeURIComponent(RSAUtilszb.encryptfun(str));
}

重新加载,运行。 在这里插入图片描述

最后得到结果。

这里只是将pwd进行了加密,username的加密也是一样的,将参数改变一下即可。

举报

相关推荐

ssh登陆

0 条评论