温馨提示×

反汇编Linux用什么好

小樊
34
2026-08-05 06:20:48
栏目: 智能运维

在 Linux 下进行反汇编/逆向分析,常见工具分为命令行轻量型交互式分析型。选择取决于你要做什么(快速看一眼、逆向分析、漏洞研究、内核/驱动分析等)。


一、最常用、通用推荐

objdump(首选入门)

系统自带,最基础、最通用。

objdump -d ./a.out

常用选项:

objdump -d -M intel ./a.out   # Intel 语法(推荐)
objdump -s -j .text ./a.out   # 显示段内容
objdump -x ./a.out            # 查看所有信息

适合:

  • 快速反汇编
  • 查看 ELF 结构
  • 内核/驱动分析
  • 不需要交互

GDB + 反汇编(调试必备)

有程序运行上下文时最强。

gdb ./a.out
(gdb) disassemble main
(gdb) disassemble /r main     # 显示机器码
(gdb) layout asm              # TUI 模式

配合:

set disassembly-flavor intel

适合:

  • 动态调试
  • 漏洞分析
  • 观察运行态反汇编

二、专业逆向分析(主流)

Ghidra(强烈推荐)

NSA 开源,功能极强。

优点:

  • ✅ 免费
  • ✅ 支持多种架构(x86/x64/ARM/MIPS)
  • ✅ 反编译为 C
  • ✅ 跨平台
ghidra

适合:

  • 逆向工程
  • 恶意软件分析
  • 大型程序

IDA Pro(行业标杆)

功能最强,但贵。

  • Free版(IDA Free)
  • 支持 x86/x64
  • 反编译能力极强

适合:

  • 商业逆向
  • 安全研究
  • 长期项目

Radare2 + Cutter(黑客最爱)

命令行 + GUI 前端。

r2 ./a.out
> aaa
> pdf

GUI:

cutter

特点:

  • 极度灵活
  • 学习曲线陡
  • 自动化友好

三、轻量 & 快速工具

ndisasm(简单直接)

来自 NASM。

ndisasm -b 64 ./a.out

适合:

  • 裸二进制
  • Shellcode 分析

capstone + rasm2

脚本化反汇编。

rasm2 -d `xxd -p ./a.out`

适合:

  • 自己写工具
  • 自动化分析

四、按使用场景推荐表

场景 推荐工具
快速看汇编 objdump
调试程序 GDB
深度逆向 Ghidra / IDA
黑客/自动化 Radare2
Shellcode ndisasm
内核/驱动 objdump + GDB

五、我的建议(一句话)

入门/日常:objdump + GDB
专业逆向:Ghidra(免费)或 IDA(付费)

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

  • 分析 ELF / 二进制 / 固件 / 驱动
  • x86 / ARM / MIPS
  • 静态分析 还是 动态调试

我可以直接给你最合适的一套工具链和命令。

0