首页
社区
课程
招聘
[原创]Android oat文件格式分析笔记
发表于: 2015-12-2 18:07 16624

[原创]Android oat文件格式分析笔记

2015-12-2 18:07
16624

最近分析了Android中的oat文件格式,基于android5.1.1、32位,附件中的笔记有分析的详细过程。由于水平有限,难免有不足之处,还望各位大大指点一二。

为了加深理解,还写了个从oat文件中提取dex的小程序,首先解析了elf外壳,然后解析oatdata段,从中提取dex,支持oat文件中包含多个dex的情况。源码链接:fedK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6y4j5h3&6&6c8X3q4U0k6g2)9J5c8V1g2^5N6s2u0S2j5%4c8p5k6i4S2r3M7X3!0E0e0$3q4@1i4@1g2r3i4@1u0o6i4K6S2o6i4@1f1@1i4@1u0n7i4@1p5K6i4@1f1%4i4@1p5H3i4K6R3I4i4@1f1$3i4K6W2o6i4K6R3&6i4@1f1%4i4K6R3J5i4@1t1&6i4@1f1$3i4K6R3^5i4@1t1K6

把dex提取后,和相应apk中的dex对比,发现有2个字不一样。。。难道oat中的dex不是原始的dex?还希望大神解答啊!


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 8
支持
分享
最新回复 (13)
雪    币: 6
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谢谢楼主分享技术贴。
2015-12-2 19:57
0
雪    币: 1385
活跃值: (1636)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
高深莫测的上乘功夫,学学去
2015-12-3 09:53
0
雪    币: 693
活跃值: (108)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
可能是因为oat中的某些指令变化了,参见193K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6S2L8X3g2K6N6r3W2K6j5W2)9J5c8X3!0S2N6r3c8#2L8i4m8Q4y4h3k6H3L8s2g2K6
2015-12-3 10:57
0
雪    币: 1356
活跃值: (446)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
5
原来如此!
2015-12-3 11:26
0
雪    币: 1356
活跃值: (446)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
6
24aK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6y4j5h3&6&6c8X3q4U0k6g2)9J5c8V1g2^5N6s2u0S2j5%4c8p5k6i4S2r3M7X3!0E0e0$3q4@1 增加了修复输出dex校验和的功能
2015-12-19 21:37
0
雪    币: 459
活跃值: (2009)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
感谢分享 图解很详细 顺便问一下那个文件结构图是用什么工具画的
2015-12-25 15:34
0
雪    币: 1356
活跃值: (446)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
8
Visio画的,但是感觉Visio还是不够好用啊
2015-12-25 19:04
0
雪    币: 191
活跃值: (195)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
9
哈哈不错不错,太给力的文章啦,学习oat格式的好资料多谢分享,
2016-5-28 08:52
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
感谢楼主分享,嘿嘿
2016-11-16 00:44
0
雪    币: 161
活跃值: (797)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
文章给出了native code的起始地址,结束地址在哪?
2021-7-2 22:23
0
雪    币: 1356
活跃值: (446)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
12
好久没看了。貌似如果是QuickCode,size 就存在code前面,调用OatMethod::GetQuickCodeSize()就行,相关代码:
f5fK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3q4F1k6s2u0G2K9h3c8^5M7X3g2X3i4K6u0W2j5$3!0E0i4K6u0r3y4g2)9J5k6e0q4Q4x3X3f1I4i4K6g2X3M7U0k6Q4x3V1k6^5M7X3g2X3i4K6u0r3j5i4u0@1i4K6u0r3M7Y4g2F1N6r3W2E0k6g2)9J5c8X3!0S2N6q4)9#2k6X3k6A6L8r3g2Q4x3X3g2Z5
22dK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3q4F1k6s2u0G2K9h3c8^5M7X3g2X3i4K6u0W2j5$3!0E0i4K6u0r3y4g2)9J5k6e0q4Q4x3X3f1I4i4K6g2X3M7U0k6Q4x3V1k6^5M7X3g2X3i4K6u0r3j5i4u0@1i4K6u0r3M7Y4g2F1N6r3W2E0k6g2)9J5c8X3!0S2N6q4)9#2k6X3k6A6L8r3g2Q4x3X3c8A6L8X3I4Q4x3X3g2Z5
2021-7-12 19:41
0
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
好图
2024-1-17 22:41
0
雪    币: 5659
活跃值: (31911)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
感谢分享
2024-1-18 10:13
1
游客
登录 | 注册 方可回帖
返回