欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

实用篇!小米商城模拟登录、混淆 js(全方位讲解。 超详细)

最编程 2024-03-19 10:25:24
...
该文章主要提供交流学习使用,请勿利用其进行不当行为!
如本篇文章侵犯了贵公司的隐私,请联系我立刻删除!

如因滥用解密技术而产生的风险与本人无关


昨天本来想买手机的,

然后就去了小米官网。

ps:

    忠实的米粉。


为发骚而生。


然后捏。。就像看看小米的登录。。

哈哈哈哈哈哈哈啊哈哈哈哈



然后看到,是混淆的js。就起劲了。。

昨天晚上搞得。

今天测试了几遍。

然后发现。

感觉挺有意思的。

今天就写个文章吧,分享一下。

前人栽树后人乘凉。

坑都替你们过一遍了。

以下说的很详细撒!!

2000字的文章!!


进入正题;


小米官网登录网址

https://account.xiaomi.com/pass/serviceLogin


输入账号密码,最好是错误的,,

更好的抓包。

这里看到,

点击登录后,会出现四个包。

两个数据包,两个图片。



这里看一下第一个数据包。

分析一波波

k:固定的。

locale:固定的。

_t:时间戳。

s:加密数据。看着有点像AES。

d:看着给瑞数一样。。。。哈哈哈哈哈。或者就是极验的AES + RSA。

a: 固定的。



开搞开搞:


type是xhr请求。。。

那就xhr,,方便快捷。。。

这里就详细点吧。


1. 可以这样直接进入函数,



2. 在这里输入网址。。但是确定是唯一的,要不然断的地方不是自己想要的,很麻烦,,,还可以直接输入参数的名字。

具体可自行百度谷歌调试。



下上断点后,

点击登录。

然后就看到了亲爱的混淆,么么哒、



看到我们想要的数据,这里根据调用栈一步步找。


到这里后我们看到。

这里有一个data。

而且,网上看,

一个参数值是  a。

那我们所找的参数里面是不是也有a。



那我们暂且认为加密就是在这里生成的。

下上断点。

重新点击登录。。

看到断点已经停下了。

经过分析。

已经确认就是此处。


网上看,加密基于_0x494166这个参数。

我们复制出来。


//混淆。var _0x494166 = _0xe9ca87[_0x239f('0x287')]['getData']();
//正常。 var _0x494166 = _0xe9ca87["collecter"]['getData']();



这里插播一下。混淆解密。

_0x239f('0x287') === 'collecter'


看到这种混淆。

直接上顶部复制下来既可。

找到_0x239f函数。

然后打印_0x239f('0x287')


发现内存严重溢出。

也就是所说的内存爆破。

这里不过多说原理,基本上就是正则。



这里说下解决办法,,基本上通杀。。

结构如下。

删除我圈起来的函数。



然后修改为这样子。。

然后打印。。。



接着我们说的。