在 Linux 下进行反汇编/逆向分析,常见工具分为命令行轻量型和交互式分析型。选择取决于你要做什么(快速看一眼、逆向分析、漏洞研究、内核/驱动分析等)。
系统自带,最基础、最通用。
objdump -d ./a.out
常用选项:
objdump -d -M intel ./a.out # Intel 语法(推荐)
objdump -s -j .text ./a.out # 显示段内容
objdump -x ./a.out # 查看所有信息
适合:
有程序运行上下文时最强。
gdb ./a.out
(gdb) disassemble main
(gdb) disassemble /r main # 显示机器码
(gdb) layout asm # TUI 模式
配合:
set disassembly-flavor intel
适合:
NSA 开源,功能极强。
优点:
ghidra
适合:
功能最强,但贵。
适合:
命令行 + GUI 前端。
r2 ./a.out
> aaa
> pdf
GUI:
cutter
特点:
来自 NASM。
ndisasm -b 64 ./a.out
适合:
脚本化反汇编。
rasm2 -d `xxd -p ./a.out`
适合:
| 场景 | 推荐工具 |
|---|---|
| 快速看汇编 | objdump |
| 调试程序 | GDB |
| 深度逆向 | Ghidra / IDA |
| 黑客/自动化 | Radare2 |
| Shellcode | ndisasm |
| 内核/驱动 | objdump + GDB |
入门/日常:objdump + GDB
专业逆向:Ghidra(免费)或 IDA(付费)
如果你愿意,可以告诉我:
我可以直接给你最合适的一套工具链和命令。