可执行文件中和动态链接有关的段section

来源:互联网 发布:淘宝客服差评处理技巧 编辑:程序博客网 时间:2024/05/22 14:29

0x01 .interp

内容是一个字符串,保存了动态链接器的路径,如/lib/ld-linux.so.2
有几种查看方式:
objdump -s a.out
readelf -l a.out | grep interpreter

0x02 .dynamic

保存了动态链接器所需的基本信息,具体可以看elf.h文件或LSB手册:
依赖于哪些共享对象
动态链接符号表.dynsym的位置
动态链接重定位表的位置
共享对象初始化代码的地址

查看方式:
readelf -d Lib.so
ldd Program1

关于linux-gate.so.1,是一个内核虚拟共享对象(Kernel Virtual DSO)

0x03 .dymsym动态符号表

保存了与动态链接相关的符号,而.symtab则保存了所有符号,包括模块内部的符号
.dynstr动态符号表
.hash辅助的符号哈希表,用于加快符号查找速度
查看方式:
readelf -sD Lib.so

0x03 .rel.dyn, .rel.plt动态链接重定位相关

.rel.dyn是对数据引用的修正
.rel.plt是对函数引用的修正
查看方式:
readelf -r Lib.so

0 0
原创粉丝点击