使用objdump命令查看elf文件
objdump -x 查看elf文件所有头部的信息
所有的elf文件。 程序头部(Program Header)中,都以 PT_PHDR和PT_INTERP先开始。这两个段必须在所有可加载段项目的前面。
从上图中的INTERP段中,可以看到改段从 0x318位置处开始加载,长度为0x1C。
我们使用 hexdump 命令查看elf文件的二进制内容。
找到0x318位置
6c2f 6269 3436 6c2f 2d64 696c 756e 2d78 3878 2d36 3436 732e 2e6f 0032
|/ bi 46 |/ - d i | un -x 8 x -6 4 6 s . . o 2
通过比对ascii码,可以知道从0x318开始的28个二进制表示的
字符串是: /lib64/ld-linux-x86-64.so.2
/usr/lib/x86_64-linux-gnu/libc-2.31.so 应该是/usr/lib/x86_64-linux-gnu/ld-2.31.so加载的。