objdump 二進制文件分析

objdump工具用來顯示二進制文件的信息,就是以一種可閱讀的格式讓你更多地瞭解二進制文件可能帶有的附加信息。

14.1. 常用參數說明

  • -f 顯示文件頭信息
  • -D 反彙編所有section (-d反彙編特定section)
  • -h 顯示目標文件各個section的頭部摘要信息
  • -x 顯示所有可用的頭信息,包括符號表、重定位入口。-x 等價於 -a -f -h -r -t 同時指定。
  • -i 顯示對於 -b 或者 -m 選項可用的架構和目標格式列表。
  • -r 顯示文件的重定位入口。如果和-d或者-D一起使用,重定位部分以反彙編後的格式顯示出來。
  • -R 顯示文件的動態重定位入口,僅僅對於動態目標文件有意義,比如某些共享庫。
  • -S 儘可能反匯編出源代碼,尤其當編譯的時候指定了-g這種調試參數時,效果比較明顯。隱含了-d參數。
  • -t 顯示文件的符號表入口。類似於nm -s提供的信息

14.2. 示例

查看本機目標結構(使用大端還是小端存儲):

$objdump -i

反彙編程序:

$objdump -d main.o

顯示符號表入口:

$objdump  -t main.o

希望顯示可用的簡潔幫助信息,直接輸入objdump即可;(objdump -H)


书籍推荐