Xposed框架Hook初学者学习实例

                                           START
Step1(分析App):
——————————
Name:秀壁纸1.5.7
Package:com.baoruan.picturestore
加固:未
混淆:有
Target:去除软件的升级提示(Dialog)
HookedMethod:com.baoruan.store.a.g.run()
HookMode:replace
Tools:APK查壳工具  AIDE  MT管理器  Jadx AndroidKiller
——————————

Step2(寻找Hook点):
(鄙人的Ben方法请仅作参考)
  1.首先在手机端用APK查壳工具查看秀壁纸1.5.7是否加固,这里我的结果是未加固,目的是确定是否需要脱壳。
  2.接着使用MT管理器查看秀壁纸1.5.7的Dex文件和Arsc文件,分析它的代码和字符串是否被混淆(就是知道被混淆鄙人也没法😂),目的是了解它的内部情况,做好心理准备而已。
  3.然后在AIDE中写好XposedModule的基本框架,目的是为等下进行Hook作准备,方便调试代码,当然也可以彻底分析完且找到了Hook点,并做了记录,那还是可以最后再来写Module的。
  4.通过上面用MT管理器对它进行分析后,我found它还好只是代码混淆了,而字符串内容并没有混淆(这就好办了😏),然后我使用AndroidKiller对把它Decompile,在AK里面通过字符串("升级提示")进行全局搜索确定该字符串的变量名(update_Prompt),再通过该名字进行全局搜索我found一个layout(update_layout),然后打开Jadx工具通过该layout名字进行搜索,我found一个method:run()它就是Hook点,他所在的class:com.baoruan.store.a.g,我将它们记录下来,准备写Hook逻辑。
  5.继续在AIDE中编写Module,我采用的HookMode:replace,也就是将原method代替掉,实现我们自己的method。(具体的代码在Demo中)

Step3(运行Module):
  1.检查代码的编写是否正确(眼镜跟着代码过一遍,想象实现的效果)
  2.检查Module是否在Xposed中已经勾选好了
  3.重启手机查看效果

(注意:本文章为鄙人的处女座,肯定有不严谨的地方,主要用来总结学习经历,当然也不建议大家参考分享,请谅解!)
                                           END

DemoDownload:
百度云盘(https://pan.baidu.com/s/1TwRIxwY-0ZgNRv-9UBNouA 密码:9999)
ToolsDownload:
百度云盘(https://pan.baidu.com/s/1f5TwhEFBumEuSFiOi4v81A 密码:9999)

评论

热度(1)