【Android 逆向】Android 中常用的 so 动态库 ( libdvm.so | libart.so | libandroid_runtime.so | libandroidfw.so )

简介: 【Android 逆向】Android 中常用的 so 动态库 ( libdvm.so | libart.so | libandroid_runtime.so | libandroidfw.so )

文章目录

一、Android 虚拟机涉及的 libdvm.so 动态库 和 libart.so 动态库

二、Android 运行时相关 libandroid_runtime.so 动态库

三、Android Framework 层 Native 实现相关 libandroidfw.so 动态库





一、Android 虚拟机涉及的 libdvm.so 动态库 和 libart.so 动态库


libdvm.so 动态库是 Android 的 Dalvik 虚拟机使用的动态库 ; Android 5.0 及以下系统使用 Dalvik 虚拟机 ;


libart.so 动态库是 Android 的 Art 虚拟机使用的动态库 ; Android 5.1 及以上系统使用 Art 虚拟机 ;


目前所有的模拟器 , 真机获取的虚拟机动态库都是 libart.so 动态库 ; 5.0 以下的 Android 设备 , 现在很少了 ;


执行


cp /system/lib/libart.so /sdcard/Pictures


命令 , 将 libart.so 动态库拷贝到 /sdcard/Pictures 目录 , 之后可以将其拷贝到文件系统 , 使用 64 位 IDA 分析该动态库 ;



image.png





二、Android 运行时相关 libandroid_runtime.so 动态库


libandroid_runtime.so 是 Android 运行时相关的函数库 ; 如 : Java 层与 Native 层交互的 JNI 机制 , 系统控制机制 , 获取硬件设备 ( GPS , 陀螺仪 ) 数据 等 ;


执行


cp /system/lib/libandroid_runtime.so /sdcard/Pictures

命令 , 将 libandroid_runtime.so 动态库拷贝到 /sdcard/Pictures 目录 , 之后可以将其拷贝到文件系统 , 使用 64 位 IDA 分析该动态库 ;


image.png






三、Android Framework 层 Native 实现相关 libandroidfw.so 动态库


libandroidfw.so 是 Android 的 Framework 层的 Native 实现部分的动态库 ,


执行


cp /system/lib/libandroidfw.so /sdcard/Pictures


命令 , 将 libandroidfw.so 动态库拷贝到 /sdcard/Pictures 目录 , 之后可以将其拷贝到文件系统 , 使用 64 位 IDA 分析该动态库 ;

image.png


image.png


目录
相关文章
|
存储 Java API
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
2032 0
|
安全 Android开发 C++
在 Android 中使用 Kotlin 调用动态库
在 Android 中使用 Kotlin 调用动态库
738 0
|
编译器 Android开发
深度解读Android崩溃日志案例分析1:so崩溃
深度解读Android崩溃日志案例分析1:so崩溃
670 1
|
Java Android开发 C++
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
[笔记]Visual Studio 2015 开发安卓so库JNI层——回调调用
207 0
|
移动开发 Java 开发工具
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld
[笔记]Visual Studio 2015 开发安卓so库JNI层——HelloWorld
322 0
|
Java Android开发 C++
安卓SO层开发 -- 第一个NDK项目
安卓SO层开发 -- 第一个NDK项目
204 0
安卓SO层开发 -- 第一个NDK项目
|
Ubuntu Android开发
Android Studio 打包调试APK缺少.so库
Android Studio 打包调试APK缺少.so库
602 0
Android Studio 打包调试APK缺少.so库
|
Android开发 C++
Android 6.0以上手机报 so: has text relocations 问题的终极解决方案
Android 6.0以上手机报 so: has text relocations 问题的终极解决方案
|
缓存 物联网 定位技术
Android引入.so文件的正确姿势以及加载指定CPU架构的so库(android is 32-bit instead of 64-bit)
Android引入.so文件的正确姿势以及加载指定CPU架构的so库(android is 32-bit instead of 64-bit)
|
存储 Unix Linux
[✔️] android so库的相关命令
[✔️] android so库的相关命令
519 0

热门文章

最新文章