吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6927|回复: 46
收起左侧

[Android 原创] 《摩尔庄园》手游登录协议分析

  [复制链接]
物语之心 发表于 2021-9-19 17:11
本帖最后由 物语之心 于 2021-9-19 23:36 编辑

0x00 前言

最近学习安卓逆向,刚好发现有个小时候玩过的页游,现在最近一段时间出了手游,拿来练练手也挺好。写的不是很好,请各位看官看个热闹就好。

0x01 使用工具

  • Fiddler 任意版本 、jadx、IDA

  • 雷电模拟器

  • 代{过}{滤}理工具 Postern

  • 任意一款编程工具

0x02 教程内容

0x20 首先配置好 Fiddler 这里就不赘述了,论坛里有很多相关教程,模拟器里配置好

image-20210916131809228.png

0x21 打开游戏,随便登录个账号密码抓个登录包。

image-20210916133958555.png

image-20210916133230728.png

可以发现返回内容是没经过加密,然后需要的参数 这里就列举几个比较重要的参数

表单名称 说明
channelNo 110001 登录渠道,如IOS渠道为 210009
key 1881c326106056afee3da488560d75b9 经过 username与pwd计算得出的md5
username 123123123 游戏账号
userpwd 13038c34b00c2645f1cf4e5f087c1681 密码 DES_ECB
versionName 0.13.21082101S 安装包的版本号

返回关键信息

表单名称 说明
sid eaps7chp 游戏ID
token 5779c00f1e0a8cd6393b66f6f8930b0c 登录令牌

登录成功后 二次令牌登录游戏

image-20210916133649356.png

提交格式为 JSON 需要的关键数据为 sid 和 token

提交地址已匿。可以通过自行复现找到,接下来可以分析dex了。

0x22  寻找加密过程

将APK丢入 Apktool Box 先查个壳

image-20210916140354054.png

然后丢入 jadx 直接载入apk 这里采用最简单的方式,全局搜索提交地址的部分信息 < mobile!sdkLogin.action > 试着找出关键登录函数

image-20210916140557833.png

继续跟进搜索 xxx_LOGIN 被谁调用了

image-20210916140723592.png
image-20210916140810550.png
image-20210916140854479.png

可以看到有个调用函数  getLoginUrl 提交的时候肯定也有地方引用了这个函数

image-20210916164450849.png

可以看到 他有个 XXXSDKUser 直接在这里面找就大概率能找到登录封装过程了。

image-20210916165805218.png

这里有SDK登录函数,然后我们仔细分析

image-20210919165042366.png

搜索 encryptMsgMd5 找到对应加密函数 可读性还是挺高的

image-20210919163120022.png

搜索 DesUtil.encrypt  

image-20210916171254859.png

public static String encrypt(String str) {
        try {
            return SocketHelper.m5514E(str);
        } catch (String str2) {
            str2.printStackTrace();
            return null;
        }
    }

继续跟进 SocketHelper.m5514E

image-20210916174055211.png

image-20210916174149090.png

发现新版的apk已经将加密函数放到另外加载SocketHelper库文件里 那我们在lib/armeabi-v7a里找到libSocketHelper.so 拖入 IDA里

image-20210916182955570.png

这里说明了 Key 为 leiting 然后跟进去就会发现

image-20210919162941272.png

以上的伪代码 还是比较好分析的,既然知道了加密方法 就可以写程序跑一下了。

0x03 封装程序

使用易语言 简单又方便

image-20210916185046834.png

image-20210916185844312.png

image-20210916191247811.png

0x04 写在最后

本篇文章仅供学习交流,提供一个学习思路。致谢所有为逆向工作做出贡献的所有大佬。

转载请注明来处。

[/md]

免费评分

参与人数 12吾爱币 +14 热心值 +11 收起 理由
yulan233 + 1 + 1 用心讨论,共获提升!
摸扎大师 + 1 + 1 我很赞同!
BeyondZhang + 1 太强了大佬
eoo + 1 + 1 我很赞同!
wakfbycf + 1 + 1 鼓励转贴优秀软件安全工具和文档!
zhaozhao1 + 1 + 1 用心讨论,共获提升!
香芋 + 1 + 1 用心讨论,共获提升!
pglcsu + 1 谢谢@Thanks!
笙若 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Witheredead + 1 + 1 谢谢分析,超级好的文章!!!!谢谢
兜兜风f + 4 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
BananaProject + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

cjjv123 发表于 2021-9-20 22:34
大哥厉害   学到了 我准备 弄这个游戏  谢谢 大哥  祝大哥中秋节快乐
passcard 发表于 2021-9-19 23:30
大佬,我这里有个apk游戏程序包,现在出现了风险提示,一键登录问题,能帮我做个登录器吗,
zhen577 发表于 2021-9-20 10:02
edczsy 发表于 2021-9-20 10:57
感谢大佬分享
1042907384 发表于 2021-9-20 11:10
《摩尔庄园》手游登录协议分析
女王约我来巡山 发表于 2021-9-20 14:37
收藏学习
wangzhen666 发表于 2021-9-20 14:48
跟着学习学习 正好有相同类型的问题
兜兜风f 发表于 2021-9-20 15:33
谢谢分享
MrYu 发表于 2021-9-20 15:59
谢谢分享,,,
我为祖国献红花 发表于 2021-9-20 16:19
最近迷上了这个手游,身边好多人玩呢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 09:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表