Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )相关的知识,希望对你有一定的参考价值。





一、ELF 文件类型 ( 动态库文件 )



ELF 文件头 第 16 ~ 17 字节 : ELF 文件类型 , 动态库文件 / 可执行文件 / 静态库文件 / 链接文件 ; 03 00 表示该 ELF 文件是动态库文件 ;

03 00 小端格式 , 低位在低地址 , 值为 3 ;





二、ELF 文件对应 CPU 架构



ELF 文件头 第 18 ~ 19 字节 : ELF 文件对应的 CPU 架构体系 , x86 / arm / mips ; 03 00 表示该 ELF 文件对应的 CPU 架构师 x86 架构 ;

03 00 小端格式 , 低位在低地址 , 值为 3 ;





三、ELF 目标文件版本



ELF 文件头 第 20 ~ 23 字节 : 目标文件版本 ; 默认值 1 ;

01 00 00 00 小端格式 , 低位在低地址 , 值为 1 ;





四、可执行程序起始地址



ELF 文件头 第 24 ~ 27 字节 : 如果 ELF 是可执行文件 , 应该从哪个地址开始执行代码 ; 该值在可执行 ELF 文件中才有意义 , 动态库文件没有意义 ;

00 00 00 00 小端格式 , 低位在低地址 , 值为 0 ;

当前解析的 ELF 文件是动态库文件 , 该值没有实际意义 , 设置 0 默认值 ;

动态库并不能独立执行 , 需要由外部加载执行 ;

以上是关于Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向ELF 文件格式 ( ELF 文件简介 | ELF 文件结构 )

Android 逆向ELF 文件格式 ( ELF 文件简介 | ELF 文件结构 )

Android 逆向ELF 文件格式总结 ★★★

Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

Android 逆向ELF 文件格式 ( ELF 文件类型 | ELF 文件对应 CPU 架构 | ELF 目标文件版本 | 可执行程序起始地址 )

Android 逆向ELF 文件格式 ( 程序头数据 | 节区头数据 | 动态符号表 )