在 CentOS 上反汇编二进制文件,常用的方法有几种,取决于你想要的“反汇编级别”和工具链。下面按常用程度给你说明。
objdump 属于 binutils,CentOS 默认通常已安装。
sudo yum install -y binutils
objdump -d ./a.out
.text)objdump -d -j .text ./a.out
-g 编译)objdump -S ./a.out
objdump -M intel -d ./a.out
sudo yum install -y gdb
gdb ./a.out
disassemble main
set disassembly-flavor intel
disassemble main
x/10i $pc
如果二进制有符号:
objdump -d -l ./a.out
如果是 stripped:
file ./a.out
# 会显示 stripped
sudo yum install -y radare2
r2 ./a.out
[0x000000]> aaa
[0x000000]> pdf @ main
gcc -g -o test test.c
objdump -M intel -d test | grep -A 30 "<main>:"
如果你愿意,可以告诉我:
我可以直接给你最合适的命令。