吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 3617|回复: 87

[原创逆向图文] 《从零开始学Android逆向(07)-什么是dalvik虚拟机》

  [复制链接]
174888 发表于 2020-2-21 15:27 | 显示全部楼层 |阅读模式

本帖最后由 174888 于 2020-2-21 15:30 编辑

本帖最后由 174888 于 2020-2-21 15:23 编辑


前言    写这从零开始学破解的教程是因为有很多人想学习Android逆向但是不知道怎么去学习,网上教程是找到一大堆,但是大多讲的都杂乱无章,看了都看不懂的感觉,也有不少刚接触Android逆向或者说也学习了一段时间的逆向了.但是还是不知道自己学的啥,感到很迷茫.
    从今天开始我会通过写图文的教程方式手把手的教大家如何学习逆向.由于Android系统在电脑运行的特殊性,那么我们需要提前准备好可以调试运行安卓的环境以及各项工具的使用通用性,下面我会逐步讲解每一个详细的步骤.


    如果有不明白的小伙伴,可以私信给我,告诉我哪里没有看懂,我会在教程中再作补充.

    本教程还有后续内容,更新时间不固定,但会持续更新,目前我总结出来的差不多应该有200个帖子左右的内容,由浅及深,但由于我本人水平有限,关于更难的部分,我会在更靠后的章节部分来讲解,由于是免费分享给大家.所以本教程仅以图文方式展现,并无视频.

那么下面开始今天的课程吧:

->跨平台,不需要硬件支持,自己实现了和硬件交互的系统

->基于栈架构

->安卓5.0以下

->dalvik字节码

->3.art虚拟机(aot机制)——5.0是个翻天覆地的变化

->.dex=>dex2oat=>.oat 基于art虚拟机

<span]

1

1

2

2

java虚拟机  
通过软件来模拟出来的具有完整的硬件系统功能、运行在完全隔离的环境中的完整的计算机系统
基于java字节码
跨平台虚拟机
基于栈结构

Dalvik虚拟机
Dalvik虚拟机( Dalvik Virtual Machine ),是由Dan Bornstein编写的,DVMGoogle专门为Android平台开发的虚拟机,它运行在Android运行时库中。需要注意的是DVM并不是一个Java虚拟机(以下简称JVM

Dalvik虚拟机采用的是JITJust-In-Time)编译模式,意思为即时编译,我们知道apk被安装到手机中时,对应目录会有dexodexapk文件,apk文件存储的是资源文件,而dexodex(经过优化后的dex文件内部存储class文件)内部存储class文件,每次运行app时虚拟机会将dex文件解释翻译成机器码,这样才算是本地可执行代码,之后被系统运行。

Dalvik虚拟机负责解释dex文件为机器码,如果我们不做处理的话,每次执行代码,都需要Dalvikdex代码翻译为微处理器指令,然后交给系统处理,这样效率不高。为了解决这个问题,Google2.2版本添加了JIT编译器,当App运行时,每当遇到一个新类,JIT编译器就会对这个类进行编译,经过编译后的代码,会被优化成相当精简的原生型指令码(即native code),这样在下次执行到相同逻辑的时候,速度就会更快。安卓虚拟机ART
Android4.4版本以前是Dalvik虚拟机,4.4版本开始引入ART虚拟机(Android Runtime)。在4.4版本上,两种运行时环境共存,可以相互切换,但是在5.0版本以后,Dalvik虚拟机(简称DVM)则被彻底的丢弃,全部采用ART

ARTAndroid Runtime 是一种执行效率更高且更省电的运行机制,执行的是本地机器码,这些本地机器码是从dex字节码转换而来。ART采用的是AOTAhead-Of-Time)编译,应用在第一次安装的时候,字节码就会预先编译成机器码存储在本地。在App运行时,ART模式就较Dalvik模式少了解释字节码的过程,所以App的运行效率会有所提高,占用内存也会相应减少。谷哥在5.0以后的Android版本中默认了ART模式启动,就是希望Android能摆脱卡顿这个毛病。

ARTDalvik的区别
Dalvik就好像拖拉机打火,而ART则只需要一拧就可以了。
*
Dalvik每次都要编译再运行,ART只会安装时启动编译
*
ART占用空间比Dalvik大(原生代码占用的存储空间更大),就是用空间换时间
*
ART减少编译,减少了CPU使用频率,使用明显改善电池续航
*
ART应用启动更快、运行更快、体验更流畅、触感反馈更及时

===============================


《从零开始学Android逆向(01)-逆向环境搭建-JDK的安装与配置》
https://www.52hb.com/thread-45952-1-1.html
(出处: 吾爱汇编论坛)

《从零开始学Android逆向(02)-逆向环境搭建-SDK与NDK的安装与配置》
https://www.52hb.com/thread-45953-1-1.html
(出处: 吾爱汇编论坛)

《从零开始学Android逆向(03)-APK的文件结构》
https://www.52hb.com/thread-45955-1-1.html
(出处: 吾爱汇编论坛)

《从零开始学Android逆向(04)-APK的打包流程》
https://www.52hb.com/thread-45957-1-1.html
(出处: 吾爱汇编论坛)

《从零开始学Android逆向(05)-APK的安装流程》
https://www.52hb.com/thread-46022-1-1.html
(出处: 吾爱汇编论坛)

《从零开始学Android逆向(06)-ADB常用命令指令集》
https://www.52hb.com/thread-46023-1-1.html
(出处: 吾爱汇编论坛)

下次更新->什么是dalvik字节码!


依次帖子更新内容如下:
什么是dalvik字节码
如何配置Androidkiller与使用
如何篡改APK的名称与图标.
怎样修改包名和实现应用的分身
如何通过修改AndroidManifest.xml去除单机游戏的广告
更多精彩内容,容我慢慢更新,本次帖子仅更新在吾爱汇编论坛.非允许,请勿转载~

评分

参与人数 21HB +18 THX +7 收起 理由
虚心学习 + 1
459121520 + 1
sjtkxy + 1 + 1
行行行行行行 + 1
消逝的过去 + 1
冷亦飞 + 1
小菜虫 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
kway + 1
zxjzzh + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
我是好人 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
temp + 1
ldljlzw + 1
阿谦 + 1
上帝的恩赐 + 2 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
成丰羽 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
XiaoWeiSec + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
ghostxu + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
playboy + 2
liugu0hai + 1 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
mengzhisuoliu + 1
mengzhisuoliu1 + 1

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
拿着雪糕 发表于 2022-2-3 10:27 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
CkipEgYnbL 发表于 2022-2-22 22:04 | 显示全部楼层

刚好需要 谢谢大佬
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
zwVqG0972 发表于 2022-2-23 08:57 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
aVksWF94 发表于 2022-3-2 20:14 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
mfleB 发表于 2022-3-2 20:51 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
CRQTnMsFS 发表于 2022-3-2 22:08 | 显示全部楼层

感谢楼主
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
yDIld285 发表于 2022-3-4 02:00 | 显示全部楼层

楼主的帖子不错,多发点~
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
ghostxu 发表于 2022-3-4 02:00 | 显示全部楼层

此处应该有鼓励~
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
tzxM48 发表于 2022-3-4 02:00 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表