什么都只会一点 发表于 2019-3-30 17:59

安卓逆向分析笔记---007

本帖最后由 什么都只会一点 于 2019-7-13 16:50 编辑

自己搜索到了解决AndroidKiller反编译的问题的方法,以后还是用AndroidKiller吧
解决方法如下:https://www.52pojie.cn/thread-658341-1-1.html


【课前需知】
会一点arm汇编语言,熟悉16进制和so


【所需工具】AndroidKiller、IDA(有没有意识到什么~)


【用例下载链接】链接:https://pan.baidu.com/s/1nkU2tjybb0WdELJ1q9RX2g 提取码:z91l


本次笔记要完成的任务,如图(来自跟鬼哥学so修改)

【开始操作】
将APK拖入AndroidKiller,打开AndroidManifest.xml,找到第一启动类,打开第一启动类的smali文件,打开源码查看(具体操作方法详情请看逆向分析笔记一)

可以看到这里有个VipLevel的地方,打开JniGg查看

可以看到JniGg里面什么都没有,值得注意的是这里,调用了lib文件夹里的gg-jni.so的文件,只能so分析了

找到gg-jni.so的位置,右键打开文件路径,将so文件拖入IDA进行分析,直接点OK

在左边框框里点一下,Ctrl+F,下面就会出现搜索框,前面可以看到是 VipLevel方法

双击左边那个方法名打开

我们会看到如下情况,右键选择Text view,默认第一行就是方法开始的第一行,向上翻一下可以看的函数名,如下图

哦对,说漏了,左下角这个表示分析完成了,因为软件本身不大,分析比较快,其他的游戏分析起来可就没这么快了,比较大的能分析一下午
可以看到第一行与最后一行,中间这一段就是VipLevel的汇编指令

可以看到我们要实现的Gold Vip,然后要注意的是前面的三个BXX,这是相关的跳转语句,具体识别方法看左边红框框里的
so文件不能影响到字节的长度,所以不能直接删除


【修改方法一】
将三个Bxx Nop掉

鼠标点击一下要修改的指令,右键在点击上面的Hex view

将这里修改成nop指令,也就是90 90,右键Edit修改,改完之后右键Apply changes保存

返回IDA View看一下

那一行直接没了,同样的方法,修改另外两个判断

改完之后保存退出,重新导入APK签名,运行看看~


修改成功!

-----------------------------------------------------------------------------------------------------------
安卓逆向分析笔记---008:https://www.52pojie.cn/thread-989829-1-1.html

什么都只会一点 发表于 2019-3-31 12:22

莫问刀 发表于 2019-3-31 09:23
大神,【会一点arm汇编语言,熟悉16进制和so】,如果不会arm汇编,对so不熟悉,是不是没法跟着你学下去呢。

看不懂汇编语言没事,知道几个关键词就可以了,至于其他的,不懂的地方可以来问,看到后会回复的

什么都只会一点 发表于 2019-3-30 23:02

堂前燕 发表于 2019-3-30 22:26
java层改参数,传1,应该也可以

如果只针对这个软件,当然可以,但是现在更多的软件并没有传参数进so,而是直接在so里面执行完所有操作,smali里面可能只是单纯的调用,所以要学会方法

best天空 发表于 2019-3-30 20:44

感谢分享,学习了

lghao 发表于 2019-3-30 21:03

感谢分享啊.已经收藏了

耳食之辈 发表于 2019-3-30 21:26

评分用完,回复表示支持

堂前燕 发表于 2019-3-30 22:26

java层改参数,传1,应该也可以

shangziq 发表于 2019-3-31 08:26

谢谢楼主,学习了

debug_cat 发表于 2019-3-31 09:23

大神,【会一点arm汇编语言,熟悉16进制和so】,如果不会arm汇编,对so不熟悉,是不是没法跟着你学下去呢。

多幸运遇见baby 发表于 2019-3-31 09:45

谢谢@Thanks!
页: [1] 2 3
查看完整版本: 安卓逆向分析笔记---007