
android
flyeagle317
这个作者很懒,什么都没留下…
展开
-
一个soot带来的java.lang.IncompatibleClassChangeError
最近基于soot在做一些中间变换,在处理一个APK后报了一个IncompatibleClassChangeError,这种错误通常是编译时类路径与运行时类路径不同导致,但是我原始的APK可以正常运行,但是经过soot处理后的APK不能正常运行,因此怀疑是某些类被改变了。下面是该APK的源码(修改自Android cts部分源码):public class MethodTest {...原创 2020-01-02 18:37:58 · 338 阅读 · 0 评论 -
Android Linker学习笔记
0x00 知识预备Linker是Android系统动态库so的加载器/链接器,要想轻松地理解Android linker的运行机制,我们需要先熟悉ELF的文件结构,再了解ELF文件的装入/启动,最后学习Linker的加载和启动原理。鉴于ELF文件结构网上有很多资料,这里就不做累述了。0x01 so的加载和启动我们知道如果一个APP需要使用某一共享库so的话,它会在J转载 2017-03-11 21:59:11 · 882 阅读 · 0 评论 -
Android Linker 与 SO 加壳技术
1. 前言Android 系统安全愈发重要,像传统pc安全的可执行文件加固一样,应用加固是Android系统安全中非常重要的一环。目前Android 应用加固可以分为dex加固和Native加固,Native 加固的保护对象为 Native 层的 SO 文件,使用加壳、反调试、混淆、VM 等手段增加SO文件的反编译难度。目前最主流的 SO 文件保护方案还是加壳技术, 在SO文件加壳转载 2017-03-11 22:31:00 · 315 阅读 · 0 评论 -
Dalvik虚拟机学习2——类加载器的创建
1,DexClassLoader和PathClassLoader在android中,类文件的加载主要是通过这两个类加载器来实现的。其构造函数分别如下所示public DexClassLoader(String dexPath, String optimizedDirectory, String libraryPath, ClassLoader parent) {原创 2017-06-14 16:27:29 · 316 阅读 · 0 评论