mach-o文件格式
Mach-O (Mach object) file format
这种格式的中文资料很少,最详细的还是苹果的官方文档,本文不重复解释mach-o文件格式的内容,只叙述在用ida逆向ios应用程序时的经验。
mach-o详细文档参考:https://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/MachORuntime/index.html
1,mach-o格式可以包含多个目标平台的可执行代码,比如同时包含arm64与arm7的可执行代码。
当用多目标平台生成一个ios应用程序后,将其拖入到ida中,如下图所示:
ida识别到两种架构的代码。
先让ida加载arm7平台的代码
将鼠标放在红圈的位置。在右面的十六进制窗口可以看到mach-o文件的魔数。在左下角的位置显示魔数在文件偏移4000的位置
然后打开段窗口查看文件映射到内存的布局
从ida段窗口可以清楚的看到各个可执行文件各个节的加载情况。可执行文件从文件偏移4000映射到内存(从0开始)。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。