type
status
date
slug
summary
tags
category
icon
password
如有侵犯到开发者的权益请联系我
脱壳
首先MT管理器提取安装包
发现有加固利用在线网站进行脱壳
进行脱壳之后把压缩包利用adb push到我们的/data/local/tmp文件夹
由于脱壳之后会保留我们之前的dex文件,因此只保留以下三个文件就行.
先进行DEX修复
这样配置即可
然后把这三个文件移动到原安装包的位置,移动之前要把原来的dex文件删掉,并且把classes4改为classes,接着我们进入AndroidManifest.xml中修改一下app的入口点,把这个替换为网站给的那个txt里面的
之后再用MT签名一下就可以正常安装了,安装完成打开之后发现没有闪退说明脱壳成功
会员分析
利用jadx通过关键字快速定位到代码
例如:isVIP
根据类名不难得到这个是用户信息类,可以根据这个函数判断是否为VIP
我们利用frida去hook这个函数看看程序的返回情况
但是这个时间有一些不对,我们在jadx里面查找哪里调用了isVip
说明
getVipEndTime
是判断到期时间的直接返回long类型的vipEndTime,我们只需改返回值就行
可以正常用App的vip功能了
用户名称自定义
在用户user类中可以发现一个函数,这个函数好像是用来获取我们的用户名的
我们可以hook一下它,然后观察app是否有变化
返回值都已经是我们设置的值了,为啥app上没有显示,这里有个思路是我们可以搜索这个点击登录,应该是有一个判断函数判断点击登录后,输入的用户名是否为空,如果为空就不显示,否则就显示
由于中文字符在jadx中是Unicode进行存储的,我们需要搜索\u70b9\u51fb\u767b\u5f55
很明显是B这个函数,跟我们的思路是一样的有个判断为空的函数
我们只需hook这个函数,让返回的string类型的值为我们设置的值就可以在上面显示了
有关学习或者复现上的问题,欢迎您在底部评论区留言,一起交流~
- Author:5m10v3
- URL:https://5m10v3.top/article/129533f9-4e40-807c-b679-ef83df9ea1c6
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!