[Xposed框架]Android Hook 菜鸟入门教程三
传送门:Android Hook 菜鸟入门教程二上次论坛有人说整个流程 这次选取一个帖子来达到相同的效果,这次用的例子是这个
http://www.52pojie.cn/thread-524341-1-1.html
用Android Hook来实现
用到的工具
破解工具:Androidkiller_v1.3.1 爱盘下载: http://down.52pojie.cn/Tools/And ... idKiller_v1.3.1.zip
夜神模拟器,Xposed框架
直接窃取@leftshine 的成果 勿怪
基本上一些步骤重复 我就盗图 打开软件
http://attach.52pojie.cn/forum/201608/03/173341xl2wwjv4fv3lowg3.jpg
这个弹出提示就是关键。
将APK拖进AndroidKiller,反编译完成后搜索“金币不足”,如图:
http://attach.52pojie.cn/forum/201608/03/173341qpy2gt6cqnv5ve2y.jpg
双击搜索结果跳到代码位置,发现其对应string name为:sos_board_error_msg,
继续搜索“sos_board_error_msg”,如下图:
http://attach.52pojie.cn/forum/201608/03/173342ykk6egvr7zv50eu9.jpg
双击搜索结果跳到代码位置,发现其对应标识为:0x7f0b0078,
继续搜索“0x7f0b0078”,如下图:
http://attach.52pojie.cn/forum/201608/03/173342rjdyghz66gyj57yc.jpg
双击搜索结果跳到代码位置,终于找到关键代码位置!
查看一下java源码 如下
可以看到这里有个Util.getMoney()函数加之前面扣除10金币的 我们可以想到这大概就是读取金币数的
点进去看看
看到返回的是一个整形的数据 是不是金币的数目? 再来看看getSharedPreferencesInt这个函数
private static int getSharedPreferencesInt(Context paramContext, String paramString, int paramInt)
{
return paramContext.getSharedPreferences("BEAUTY_PICK", 0).getInt(paramString, paramInt);
}
这样就知道了 这是用
Context.getSharedPreferences方法获取SharedPreferences对象,参数分别为存储的文件名和存储模式。
我们用root权限进文件管理器看看
就是这样
可以看到我hook为100然后我使用了一次为90我们修改这里也行 直接修改为这个数值也能达到效果
不过还是再用hook展示一下
这样回到刚才 我们直接hookcom.jimmy.beauty.pick.Util 的的getMoney方法参数如下:
XC_MethodHook.Unhook andHookMethod = findAndHookMethod("com.jimmy.beauty.pick.Util", lpparam.classLoader, "getMoney" ,Context.class
, new XC_MethodHook() {
}
然后再beforeHookedMethod()里修改
@Override
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
param.setResult(100);
}
这样每次读取的时候我们都勾住然后设置金币的值为100
效果如下
这是对Dalvik Hook的简单应用
文件打包
https://yunpan.cn/ckjGyf6GhVRkm (提取码:946d)
基础性的帖子,讲的比较好,不过既然是菜鸟入门,在讲解的时候可以顺带讲下SharedPreferences方法在android中的作用,这样更加有利于新手积累破解的经验 这里不顶,更待何时 牛!厉害! 不错,学习一下 XP HOOK你那里用了? 我似乎学会了些东西。顶一个 也准备学学android逆向…… 学习,谢谢 学习一下hook
页:
[1]
2