<vns0777s>CT电子游戏摆脱破解减脂角膜塑型镜的方案!

今天看啥 热点:
逆向人人客户端,破解校验算法之&暴力破解+撞库&
逆向人人客户端,破解校验算法之&暴力破解+撞库&
这是多年之前的发现了,写出来纪念那些日子,纪念那些被我爆破过的过客。。。。。
正常登陆人人,进行抓包,发现了比较多的字段
http://api./api
固定值client.login
client_info手机信息
gz固定值compression
v固定值1.0
format固定值JSON
uniq_id固定值000
api_key固定值8bc471c8d337f(官方从这里应该能查出软件版本)
user用户邮箱
password用户密码md5加密
call_id时间戳
sig校验字段
从上面不难看出除了sig这个字段之外其他都好说,产生数据后进行提交发现产生异常提示sig字段不正确。现在没办法只能逆向去计算这个sig值到底怎么计算出来的。具体过程比较复杂最后逆向出如下
paras.Sort(new ParameterComparer());//paras为提交的所有字段的键值名和键值对,先进行排序
StringBuilder sbList = new StringBuilder();
foreach (APIParameter para in paras)
string temp = para.Name + &=& + para.V//将每个排序后的键值名和键值对进行排序之后按照这个格式进行拼接起来
if (temp.Length &= 62)//如果单个字符串超过62位要进行截取。这里简直要了我的老命,调试了一天才弄对
sbList.Append(temp.Substring(0, 62));
sbList.Append(temp);
sbList.Append(&91c82b04d8a0ad605ab95&);//最后在字符串结尾拼接上这个字符串,据估计这个应该是带有版本信息的hash
sig = HttpUtil.MD5Encrpt(sbList.ToString());//最后计算md5就得到了sig
按照这个方法再提交就能正常了,然后分析范围值,来确定密码时候正确,这里注意即使出现error_code 10000 密码仍然是正确的。
危害是可以进行暴力破解,当然也可以搞现在流行的撞库。
以上是大约两年前发现的问题,现在测试仍然存在,当时写了一个暴力破解程序,附在后面。请使用测试程序进行测试,源码都在里面。因为是vs的项目文件太多,只能百度云共享,厂家验证后如果感觉不合适请及时通知我取消分享
用我自己的账号进行测试爆破,我把自己的密码放在最后。
效率的话是代码写的比较久了 当时也不回优化。
下面是使用刚申请的账号进行测试。
用户名:[email&protected] 密码:kefcjmqy
随便生成2000个不正确的密码。然后把正确密码分别放在最后和最前面,测试结果如下
如上可以看出一共两次爆破出正确密码
68kefcjmqyjieya:{&session_key&:&t2dwompKw2BslD3k&,&ticket&:&0q2rVlw2HkZP6wNIEk6cd3&,&uid&:,&secret_key&:&cb7c7d40e03&,&user_name&:&玩啊啊&,&head_url&:&/wap/figure/head100.png&,&now&:8,&login_count&:1,&fill_stage&:0,&is_guide&:1,&vip_url&:&/client/icon?uid=&,&vip_icon_url&:&&,&web_ticket&:&05e2d659b7527c8abe933&,&uniq_key&:&197eab97f9b154ad26ceea0a586c322c&}
这是第一次,是在第68个破解时正确
2115kefcjmqyjieya:{&error_code&:10000,&error_msg&:&登录失败,请重试&}
如上面所说返回&error_code&:10000也是密码正确,这次是第2115次爆破。
解决方案:
禁用老版本的应用
次数过滤等
建议把校验算法等比较关键的东西写入jni中,提高逆向的门槛
相关搜索:
相关阅读:
相关频道:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&
加密解密最近更新

我要回帖

更多关于 塑型瘦身 的文章

 

随机推荐