在 CentOS 上做反汇编,常用工具是 objdump、gdb、ndisasm 等,选什么“指令”主要取决于你在分析什么文件(ELF?shellcode?内核?)。下面按场景给你总结:
适合 ELF 可执行文件 / .o 文件
objdump -d ./a.out
objdump -d -j .text ./a.out
objdump -S ./a.out
objdump -d -M intel ./a.out
适合 运行时反汇编
gdb ./a.out
进入后:
disassemble main
或 Intel 语法:
set disassembly-flavor intel
disassemble main
单步汇编:
stepi
适合 无格式二进制
安装:
yum install nasm
使用:
ndisasm -b 32 shellcode.bin
或 64 位:
ndisasm -b 64 shellcode.bin
objdump -d vmlinux
或
crash
(CentOS 自带调试内核工具)
objdump -d -M intelgdb + disassemblendisasm如果你能告诉我:
我可以给你更精确的命令示例。