资讯专栏INFORMATION COLUMN

关于如何使用xposed来hook某支付软件

Amos / 2327人阅读

摘要:由于近期有业务上的需要,所以特地花时间去研究了一下如何使用技术。但是当我把环境和程序编写完成时,突然发现手机上的某个支付软件无法使用了。通过替换程序控制进程,使得在启动过程中会加载这个包,从而完成对进程及其创建的虚拟机的劫持。

  由于近期有业务上的需要,所以特地花时间去研究了一下如何使用hook技术。但是当我把xposed环境和程序编写完成时,突然发现手机上的某个支付软件无法使用了。这个时候我意识到,应该是该软件的安全机制在起作用。所以特地上网看了一些资料,发现有很多的朋友和我一样有这个问题,当然,也有大神给出了解决方案,我在这里给出这个解决方案的部分程序,给大家参考,仅供学习之用

 1 final Class classPop = XposedHelpers.findClass("com.alipay.mobile.base.security.CI", clazzLoader);
 2 if(classPop != null)
 3  {
 4      XposedHelpers.findAndHookMethod(classPop, "a", classPop, Activity.class,new XC_MethodReplacement() {
 5          @Override
 6          protected Object replaceHookedMethod(MethodHookParam param) throws Throwable
 7          {
 8              return null;
 9          }
10      });
11  }

  

  其实使用hook技术,最大的门槛,是对程序思维的理解,包括对xposed机制的理解以及对要hook程序的理解,在hook的过程中,基本90%的时间是在分析对方软件程序。比如某信和某支付软件的程序,在软件安全上就做了很多措施,包括账号登录、二维码生成、账单数据等都做了非常多的安全处理及代码混淆,当然,安全对我们用户来说是最重要的,所以希望他们越做越好。结尾,也希望hook技术被用到真正需要他的地方,让他发挥更大作用。有什么关于hook上不明白的地方,也可以给我发消息,讨论交流进步。

  • Xposed

通过替换 /system/bin/app_process 程序控制 Zygote 进程,使得 app_process 在启动过程中会加载 XposedBridge.jar 这个 Jar 包,从而完成对 Zygote 进程及其创建的 Dalvik 虚拟机的劫持。
Xposed 在开机的时候完成对所有的 Hook Function 的劫持,在原 Function 执行的前后加上自定义代码。

 

 

需要详细代码请留言

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/2588.html

相关文章

  • 关于如何使用xposedhook微信软件

       安卓端  难点有两个  收款码的生成和到帐监听   需要源码加 2442982910

    yuanxin 评论0 收藏0
  • 个人支付接口现状分析——总有一款适合你

    摘要:支付宝支持网站支付,支付,支付和当面付,但是要想接入网站,需要网站备案,并且还要有营业执照。可是,这个途径后来经过证实,支付宝已经停用。缺点也是相当的明显只有支付宝可以用这种方式,因为微信是在内部有一个公众号形式的提示。 0.背景 前段时间准备把自己的博客做成付费阅读或者订阅的形式,虽然没想着要赢利多少钱,但是起码养的起自己站点域名服务器费用即可。但是大家都懂,草根站长,又没公司,想...

    jollywing 评论0 收藏0
  • 个人支付接口现状分析——总有一款适合你

    摘要:支付宝支持网站支付,支付,支付和当面付,但是要想接入网站,需要网站备案,并且还要有营业执照。可是,这个途径后来经过证实,支付宝已经停用。缺点也是相当的明显只有支付宝可以用这种方式,因为微信是在内部有一个公众号形式的提示。 0.背景 前段时间准备把自己的博客做成付费阅读或者订阅的形式,虽然没想着要赢利多少钱,但是起码养的起自己站点域名服务器费用即可。但是大家都懂,草根站长,又没公司,想...

    tylin 评论0 收藏0
  • 安卓动态调试七种武器之离别钩 – Hooking(下)

    摘要:是否修改成功可以通过查看随后我们需要确定目标函数的地址,这个有两种方法。如果目标程序本身没有被的话,那些都是存在的,因此可以使用和等方法来获取目标函数地址。 0x00 序 随着移动安全越来越火,各种调试工具也都层出不穷,但因为环境和需求的不同,并没有工具是万能的。另外工具是死的,人是活的,如果能搞懂工具的原理再结合上自身的经验,你也可以创造出属于自己的调试武器。因此,笔者将会在这一系列...

    laznrbfe 评论0 收藏0
  • 安卓动态调试七种武器之离别钩 – Hooking(下)

    摘要:是否修改成功可以通过查看随后我们需要确定目标函数的地址,这个有两种方法。如果目标程序本身没有被的话,那些都是存在的,因此可以使用和等方法来获取目标函数地址。 0x00 序 随着移动安全越来越火,各种调试工具也都层出不穷,但因为环境和需求的不同,并没有工具是万能的。另外工具是死的,人是活的,如果能搞懂工具的原理再结合上自身的经验,你也可以创造出属于自己的调试武器。因此,笔者将会在这一系列...

    Kerr1Gan 评论0 收藏0

发表评论

0条评论

阅读需要支付1元查看
<