温馨提示×

linux反汇编用什么指令好

小樊
54
2026-10-18 03:32:47
栏目: 智能运维

在 Linux 下进行反汇编,常用工具和指令取决于你的需求(比如分析 ELF 文件、内核、shellcode、二进制漏洞等)。下面按场景 + 指令给你一个实用清单。


一、最常用:objdump(系统自带)

适合:ELF 文件、可执行程序、库文件

objdump -d ./a.out          # 反汇编所有可执行段
objdump -d -M intel ./a.out # Intel 语法(推荐)
objdump -S ./a.out          # 源码+汇编(需带 -g 编译)
objdump -s -j .text ./a.out # 显示某段原始数据

✅ 优点:简单稳定
❌ 缺点:交互差,不适合动态分析


二、交互式反汇编:gdb + 插件(强烈推荐)

适合:调试 + 反汇编 + 动态分析

gdb ./a.out
(gdb) disassemble main
(gdb) disassemble /m main   # 混合源码
(gdb) layout asm            # TUI 汇编视图

配合插件更舒服:

  • pwndbg
  • gef
  • peda
pip install pwndbg

三、专业逆向:radare2 / rizin(黑客最爱)

适合:逆向工程、CTF、二进制分析

r2 ./a.out
[0x000000]> aaa        # 自动分析
[0x000000]> pdf        # 反汇编当前函数
[0x000000]> s main
[0x000000]> pdf @ main

或新版:

rizin ./a.out

✅ 功能极强
❌ 学习曲线陡


四、IDA Free / Ghidra(图形化)

适合:看流程、函数调用、伪代码

  • IDA Free(Linux 有版本)
  • Ghidra(NSA 开源,Java)
./ghidraRun

五、快速看一下:ndisasm(裸二进制)

适合:shellcode、boot、raw bin

ndisasm -b 32 shellcode.bin
ndisasm -b 64 shellcode.bin

六、内核 / 系统级

objdump -d vmlinux
crash
gdb vmlinux /proc/kcore

推荐组合(实战)

  • 日常调试:gdb + pwndbg
  • CTF / 逆向:rizin
  • 快速看:objdump -d -M intel

如果你愿意,可以告诉我:

  • 是 用户态程序 / 内核 / shellcode
  • 是 学习 / 漏洞 / CTF / 逆向

我可以直接给你一套最合适的工作流。

0 踩