事先说明:发布文章内容,只为自己自学逆向分析做一个记录,方便以后加以巩固学习逆向分析。

本人为逆向小白,所以发布的内容都是简单的逆向分析。大佬请高抬贵手!

 

1、分析的登陆网站:

礼品代发网
http://www.aiyonglipin.com/login

2、使用工具

chrome浏览器
精易编程助手

3、开始分析

首先打开chrome浏览器的开发者工具,点击到network面板,勾选上preserve log,然后随便输入手机号码和密码,

在这里账号为:13188888888  密码为:a12345678

输入验证码后点击登陆,提示用户不存在,或密码不正确。

查看开发者工具后,可以看到,有一条登陆的post数据,

查看post的提交数据

appType: 3
codeKey: 0.030411000733939764
mobile: 13188888888
password: "e9bc0e13a8a16cbb07b175d92a113126"
verificationCode: "8606"

一共有五条数据提交到服务器上,通过再次抓包可以发现,这么几个可以获取到的信息:

appType 这个参数是固定不变的。

codekey 是随机的。(暂时不知道怎么生成的)

mobile 是我们输入的手机账号

password 是被加密的字符串

verificationCode 是验证码

4、破解参数password

 

首先我们来解决这个password的问题,不用怀疑,这个"e9bc0e13a8a16cbb07b175d92a113126" 字符串一定是 通过 密码:a12345678 通过加密算法转变过来的。

不借助任何的工具,查看这个字符串一共有32个字符,我们可以想想看,一般情况下有哪些生成32位的加密算法的。

 

通常使用的MD5就是会生成32位的和64位的不可逆的加密字符串。所以我们可以通过一些工具来验证我们的猜想。

在这里,我使用精易编程助手作为我的猜想工具,输入 a12345678 进行加密,得到了 e9bc0e13a8a16cbb07b175d92a113126 的字符串

这个和网页生成出来的password一模一样,说明网站的登录密码是通过md5加密生成的。

 

那么至此,网站的密码加密就被我们“破解”成功。

 

5、破解参数codekey

然后还有一个codekey 这个提交的参数需要破解

这个时候我们可以通过全局搜索这个 关键词 codekey

 

 

双击进入这个搜索到的js 文件当中。通过Ctrl+F 搜索这个Js中的codekey关键词,一共搜索到五处。

第一处的codekey是空,应该就是codekey进行初始化赋值的地方。

 

当我跳到第二处的时候,可以发现,原来codekey就是一个是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机。

this.codeKey = Math.random();

通过console 也可以直观的看到。

所以说codekey也被我们破解了。

 

那么这个时候五个登陆的参数都被我们知晓了。

appType 这个参数是固定不变的。就是等于3

codekey 是随机的。取大于等于 0.0 且小于 1.0 的伪随机

mobile 是我们输入的手机账号

password 是md5加密的密码

verificationCode 是验证码

这个时候就可以用自己熟悉的语言写出来登陆了。

 

 

 

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐