在 Linux 下进行反汇编(disassembly)时,常用的工具和指令主要集中在 binutils、GDB、objdump、readelf、以及像 radare2 / ghidra / objdump 这类工具上。下面按“去哪里查”给你一个清晰路径。
man objdump
或在线: https://man7.org/linux/man-pages/man1/objdump.1.html
objdump -d ./a.out # 反汇编可执行文件
objdump -d -M intel ./a.out # Intel 语法
objdump -S ./a.out # 源码+汇编对照
objdump -D ./a.out # 反汇编所有段
man gdb
或: https://sourceware.org/gdb/current/onlinedocs/gdb/
disassemble # 反汇编当前函数
disassemble main
disassemble /m main # 混合源码
disassemble 0x400500,0x400600
set disassembly-flavor intel
man readelf
https://man7.org/linux/man-pages/man1/readelf.1.html
readelf -h ./a.out # ELF 头
readelf -S ./a.out # 段表
readelf -s ./a.out # 符号表
man r2
官网 & 文档: https://book.rada.re/
常用:
r2 ./a.out
aa
pdf
https://ghidra-sre.org/
ndisasm -b 64 file.bin
反汇编看不懂时,要查:
man objdumpobjdump -d -M intelgdb + disassembleintel 语法readelf 理解 ELF如果你愿意,可以告诉我:
我可以直接给你“最该记住的那几条反汇编命令”。