-
-
[求助]请求安卓so的逆向分析思路
-
发表于:
2020-4-12 03:01
2437
-
最近在分析一款app,新数字壳,动态调试发现,app所有重要的操作被放在了native层。
求助大神思路,现在没有办法hook到native层的函数,原因是我不理解so是如何被加载进来的,我不明白为什么在/proc/id/maps下看到明明被调用的so,但是在使用frida框架hook的时候却hook不到,然后我又分析了一下这个libjiagu.so发现其中有两个函数是带有class或者classloader参数的,我怀疑是用这两个函数动态加载的so,但是没办法在app开始时hook,因为有反调试。然后经过一番折腾,我发现,这个app很奇怪,跟我理解的动态加载so的概念有点不太一样(我以为,so这个文件首先可以动态加载进来,其次我认为它还是一堆函数的封装形式,在java层用的时候再去调用某一个so),我看到的在内存中的形式是以elf开头的文件,而这些在app_process中的so,基本上都是data形式(只读),甚至没有汇编可以看到。我想知道这是为什么,希望有理解问题的大神可以分析一下我的问题到底出在哪里,或者是我哪些概念理解有误。最好能够提供一下思路,让我能够hook这个native层的函数,我非常想看下它的协议和算法中间变量是如何变化的。不胜感激!
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!