【Android逆向】小白也能学会的一个小时破解某猫社区VIP会员

我们这里的破解方式,会直接输出一个破解版Apk,使用者不需要进行任何多余的操作,安装即可使用。

第一步:将原应用 apk 后缀改成 zip,解压出 classes.dex 文件

其实这一步是最难的,逆向最难的在于脱壳,脱壳分两种,手动脱壳(手脱)和机器脱壳(机脱)。什么是脱壳呢?就是很多App在发布到应用市场之前,会进行加固,即加壳,它会把真正的dex文件给"藏"起来,我们就需要通过脱壳的方式去找到应用里真正的dex,才能拿到里面的源码。只有拿到源码并读懂源码(混淆后连蒙带猜),才能找到爆破点,才能修改代码重新编译。

我们这里破解的某猫App,因为它的特殊性质,它上不了市场,也没有加固,最可气的是,它居然不混淆,这让我们破解的难度直线下降。

第二步:使用 dex2jar 将 classes.dex 转成 jar 文件

cmd到dex2jar文件夹目录,执行

d2j-dex2jar D://xxx/xxx/classes.dex

得到 jar 文件

静态分析


拿到源码后,首先我们需要找到应用的限制点,绕过App里面的判断。

然后分析源码,该从哪里开始入手呢?

我们都知道,一个完整Android应用,可能会存在各种第三方,各种依赖库,这些依赖都会被编译到dex里面,所以这个Jar包里面会存在很多不同包名的类文件,为了方便找到破解应用的包名,我们可以借助adb打印栈顶activity的类全路径:

adb shell dumpsys activity | findstr “mFocusedActivity”

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值