在 Linux 下进行反汇编,常用命令和工具取决于你面对的是 可执行文件、目标文件、还是进程/内存。下面按使用频率给你梳理:
objdump -d 文件名
反汇编代码段(最常用)
objdump -d -M intel 文件名
使用 Intel 语法(默认是 AT&T)
objdump -D 文件名
反汇编所有段(包括数据段)
objdump -S 文件名
源码 + 汇编对照(需编译时带 -g)
gdb 文件名
进入后:
disassemble
反汇编当前函数
disassemble 函数名
disassemble 0x400000,0x400100
set disassembly-flavor intel
切换为 Intel 语法
ndisasm -b 32 文件
ndisasm -b 64 文件
适合 Boot、Shellcode 等无格式二进制
gdb + pwndbg / peda(CTF 常用)radare2(r2)r2 -d 文件名
pdf @ main
objdump + readelf 配合分析IDA(图形化,Linux 有版本)Ghidra(NSA 开源)readelf -h 文件名
readelf -S 文件名
nm 文件名
文件反汇编 → objdump -d
调试反汇编 → gdb disassemble
裸二进制 → ndisasm
如果你能说下具体场景(ELF?内核?Shellcode?CTF?),我可以给你更精确的命令。