tlc123 发表于 2022-11-20 08:39

某诗词类APP会员破解教程

本帖最后由 tlc123 于 2022-11-20 17:26 编辑

https://www.52pojie.cn/thread-1707463-1-1.html
最近再论坛看到了这篇帖子,没想到,我自己经常用的这个APP竟然没有加壳,也可以破解,所以就自己研究了一下,步骤跟帖子不太一样,不过也是有所参考,感谢~

1、所需工具

[*]jadx-gui
[*]雷电模拟器
[*]小黄鸟
[*]MT管理器
[*]主角:xi窗烛

2、分析


2.1、app信息


2.2、看一下需要会员的地方





这些地方都与会员有关系

2.3、关键字"未开通"

咱们从这个未开通开始破解工作


jadx打开apk,所有”未开通“


很明显,这个文本肯定是在代码里面赋值的,点击第二条搜索结果进去


看,我们发现了什么,终身会员、会员、高级会员{:1_899:}{:1_899:}{:1_899:}

我们来看截图的第2行和第9行,有两个关键的判断,点进去看看




看得出来c方法里面又调用了b方法,并且是 || 或的关系,所以我们指关注b方法即可,至此,我们可以得出一些分析结果:

premiumMembership:高级会员
lifetimeMembership:终身会员

那么这个时候,就回想了,我们有没有可能通过URL代{过}{滤}理来直接修改自己账户的会员级别呢,不多说,上小黄鸟


2.4、小黄鸟
不多说怎么使用,咱们直接开始抓包吧


紧接着启动APP


请求很多,咱们直接搜索上一步怎们找到了关键字premiumMembership和lifetimeMembership



感觉与User相关,主要是截图里面的url,我们点进去看看相应是什么
{
    "premiumMembership":false,
    "bindHuawei":false,
    "chatEnabled":true,
    "followersCount":1,
    "usernameOrDescSpam":false,
    "likedAuthorsCount":0,
    "listsPrivacy":0,
    "autoCopyToChild":false,
    "ipAddressForShow":null,
    "isAdmin":false,
    "male":true,
    "studyPlansPrivacy":0,
    "ban":false,
    "lifetimeMembership":false,
    "autoHide":false,
    "receivedLikesCount":0,
    "didFixLikedWorksCountIfNeeded3":true,
    "likedWorksCount":5,
    "publicListsCount":0,
    "xczNumberId":122017478,
    "username":"xxx",
    "bindWechat":true,
    "studyDays":0,
    "xczId":"111",
    "postsPrivacy":0,
    "membership":false,
    "attributesForAdmin":{

    },
}


我们很明显的发现:
"premiumMembership":false,
"lifetimeMembership":false,

这个。。。是不是太容易了些呢{:1_918:}{:1_918:}{:1_918:}

那就简单了,我们把这些值都改成true,不就行了嘛,哈哈哈,so easy啊



不多说,直接重写,然后重启APP



呵呵呵,惊不惊喜,意不意外,还是没有变成会员
(本人纯小白,最后也没明白是什么原因,有大佬知道,可以指教一下~)


2.5、MT管理器


既然如此,咱们还是回到代码分析上来:
咱们可以把方法b直接返回true是不是就可以了呢,说做就做
不多说,直接用MT管理器的Dex编辑器++打开所有的dex文件


然后直接搜索,咱们之前定位的关键字premiumMembership
只有一条结果,我们直接定位到了b方法

2264行,返回了p0,我们知道肯定是false,所以我们需要修改为true


在2263行,直接给p0赋值为true

然后咱们保存、重新打包,卸载之前的app,然后安装我们修改后的apk,启动app看看

可以看到已经增加了vip的标识,我们再来看搜索是否还会有成为会员字段

也没有了,完美啊~~~~

我们看看是不是可以添加书了

虽然显示已经是高级会员,但是点击的时候,还是会报错,所以。。。:rggrg:rggrg:rggrg

2.6、关键字"点击领取"

看这一张图,我们以这些字作为切入点,搜索看看

是Android里面的布局文件activity_book_info.xml,点进去看看

然后我们看下activity_book_info.xml这个文件谁使用了

使用的类叫做BookIntroActivity,然后在这个类里面搜一下xml里面的id


赋值给了w,因为是个按钮,肯定是有点击事件的,我们找下


找到了,是e,继续跟

又调用了y,继续


又。。。又。。。调用了h,{:1_925:}{:1_925:}{:1_925:}


领取成功!!!!!感觉终于要成功了啊{:1_927:}{:1_927:}{:1_927:}
我们可以看到领取成功之后,主要是执行了x方法,所以我们是不是可以把那个if判断给去掉呢。

来继续上MT


直接把57行去掉,然后编译


3、结果
成为了高级会员,并且可以领取书籍了
4、扩展
MT管理器,帮我们进行了编译、打包和签名,如果不依赖MT管理器,是否也可以呢,后续研究一下。



正己 发表于 2022-11-20 11:52

本帖最后由 正己 于 2022-11-20 11:57 编辑

小伙子,封包暴露手机号了,我给你编辑掉了{:301_998:}
封包里还有一个membership,试试有没有效果
NP管理器也可以进行编译、打包和签名
手机端修改基本上就这两个管理器方便,电脑上静态分析的工具倒是蛮多的,不过如果说要直接修改smali还是没有那两个管理器好用

tlc123 发表于 2022-11-21 15:51

Mailz 发表于 2022-11-21 14:13
这个领取,真能领取到手吗?

目前看,是可以

dong19872008 发表于 2022-11-20 15:11

用黄鸟抓包也是可以的,当你把Membership的值改成true之后只是会显示会员,但App还会验证会员结果,所以领取不了。解决办法是,继续抓包,你会看到一个关键字:result,把它的值false改成true就可以通过验证了!iOS版的同理!!

dofu05jj7uu 发表于 2022-11-20 12:24

大佬腻害,学习了!

a2604273891 发表于 2022-11-20 12:24

这个不错,值得学习一下

Marcel007 发表于 2022-11-20 12:40

这个可以试一下,经常用的

vans4u1 发表于 2022-11-20 12:48

详细,值得学习。。收藏了。

lqp0083 发表于 2022-11-20 12:52

感谢分享

victorli 发表于 2022-11-20 13:25

厉害思路不错,学习一下

makmak79 发表于 2022-11-20 13:35

不错不错,学习啦!

AZC1992 发表于 2022-11-20 13:36

很详细,我试一下。
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 某诗词类APP会员破解教程