【安卓逆向】Hook赛车向前冲

通过编写xposed模块破解内购,原包内的代码没有做任何修改,声明!!!!不要纠结为什么不直接修改smali,本教程只是作为一个案例。

有需要学习安卓逆向的朋友可以加群:692903341

这次我们来学习一波新的hook大法

首先我们知道,所有的类都是通过ClassLoader的loadClass方法加载的。我们只需要Hook loadClass方法,就能得到所有的类(除非该方法被重写),记住这点很重要,为什么要这样做呢,对于某些应用,要hook的类明明存在,但是会出现出现异常

ClassNotFoundError,是因为应用在加载dex是还没有加载我们的目标类,所以就会出现这个错误,这次的案例就是这样的。我们先hook loadClass方法,然后通过判断继续hook我们的目标函数,这个就是我们这次的主要思路,好,开始分析。

1.先安装我们的游戏,购买看看效果
点击购买,发现这里直接显示,支付失败
在这里插入图片描述
在这里插入图片描述

2.好了,把apk丢进AndroidKiller,这个游戏很容易破解,不多说,这次主要讲解怎么写这个模块。我们很容易找到,关键点
在这里插入图片描述

3.在这个类下有一个onResult方法,这个就是关键函数了,查看Java伪代码(jadx-gui反编译)
在这里插入图片描述
4.这里可以看到它是内部类,所以我们hook的时候是用的smali所对应的类,也即.class Lcn/egame/terminal/paysdk/EgamePayJD$2$1$1;

当resultCode的值等于1的时候,就会执行成功的逻辑,我们hook onResult函数,拦截让它始终为1

Hook方法如下:

在这里插入图片描述

最后如下图所示,就成功了
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值