二进制分析

readelf

elf全称为executable and linking format。

查看so信息:readelf -d liboma.so

objdump

ldd

查看可执行文件/动态库的依赖:ldd xx.so

nm

选项

  • -n 按照地址/符号值来排序;
  • -u 打印出那些未定义的符号;
  • -l 使用对象文件中的调试信息打印出所在源文件及行号;
  • -A 在每个符号信息的前面打印所在对象文件名称;

符号类型

  • A 该符号的值在今后的链接中将不再改变;
  • B 该符号放在BSS段中,通常是那些未初始化的全局变量;
  • D 该符号放在普通的数据段中,通常是那些已经初始化的全局变量;
  • T 该符号放在代码段中,通常是那些全局非静态函数;
  • U 该符号未定义过,需要自其他对象文件中链接进来;
  • W 未明确指定的弱链接符号;同链接的其他对象文件中有它的定义就用上,否则就用一个系统特别指定的默认值。

results matching ""

    No results matching ""