热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

文章目录一、Android虚拟机涉及的libdvm.so动态库和libart.so动态库二、Android运行时相关libandroid_runtime.so动态库三、Androi


文章目录

  • 一、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 分析该动态库 ;

在这里插入图片描述










二、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 分析该动态库 ;

在这里插入图片描述










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





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

执行

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

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

在这里插入图片描述

在这里插入图片描述


推荐阅读
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 方舟等级生成工具_关于方舟编译器的几个小疑问
    之前了解了一下方舟编译器,但是很粗,今天在知乎上看了各种大神关于方舟编译器的说法,其实一直以来就有几个问题,我看了知乎上的说 ... [详细]
  • Android JNI学习之Concepts
    2019独角兽企业重金招聘Python工程师标准ConceptsBeforeBeginningThisguideassumesthatyouare:Alreadyfamili ... [详细]
  • 安全加密C语言库OpenSSL,在Android中服务器和客户端之间的签名验证和数据加密通信等。OpenSSL系列文章:一、AndroidCMake轻松 ... [详细]
  • 我们都曾不堪一击,我们终将刀枪不入。2016,我明白了姜还是老的辣。曾经一位同学和我闲聊时说,她遇到一个人,一起吃饭聊天的时 ... [详细]
  • packagetest;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOE ... [详细]
  • jdk安装与环境变量配置,看这一篇就够了
    文章目录场景jdk下载安装如何环境变量的配置总结场景在做java开发或者android开发,经常会碰到jdk安装与环境变量的配置,每次配置的时候,经常需要去查看一下,而且偶尔还会出 ... [详细]
  • 一、在androidStudio中实现tabs比较简单,新建项目就可以选择tabs模板进行创建,默认实现tabs功能:直接运行项目就可以看到效果:可以说非常简单,但是我们在实际开发 ... [详细]
  • 使用Java调用exe可执行文件
    一、出发点平日里,我们看到了很多已经成型的可执行文件,而且经过了一定的封装。因为开源的关系,大多时候可以自己使用eclipse进行编译&# ... [详细]
  • Maven 无法打包jar到 Tomcat
    今天新来的同事,让他调试短信验证的接口。跟我说添加的aliyun的短信验证服务无法在tomcat上运行。然后给我看了报错信息:java.lang.NoClassDefFoundEr ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • 本文介绍了如何清除Eclipse中SVN用户的设置。首先需要查看使用的SVN接口,然后根据接口类型找到相应的目录并删除相关文件。最后使用SVN更新或提交来应用更改。 ... [详细]
author-avatar
顾久君_152_599
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有