温馨提示×

如何快速反汇编

小樊
37
2026-07-09 19:17:47
栏目: 编程语言

“快速反汇编”取决于你的目标平台、文件格式、使用场景(分析/调试/逆向)。下面按最常用 → 进阶给你一套速查方案,基本 1 分钟内就能上手。


一、最常见:用 objdump(Linux / macOS / WSL)

适合:ELF / 可执行文件 / .o 文件

objdump -d a.out

常用组合(强烈推荐):

objdump -M intel -d a.out
  • -M intel:Intel 语法(比 AT&T 好读)
  • -d:反汇编可执行段

只看 main:

objdump -M intel -d a.out | grep -A 30 "<main>:"

二、最快:用 gdb(边调试边看汇编)

适合:动态分析、看运行时指令

gdb ./a.out
(gdb) disassemble main

Intel 语法:

(gdb) set disassembly-flavor intel
(gdb) disassemble main

当前函数:

(gdb) disas

三、Windows 下最快:x64dbg / IDA Free

✅ x64dbg(推荐,免费)

  • 拖入 exe → 自动反汇编
  • 快捷键:
    • Ctrl + G:跳转到地址
    • F2:下断点
    • F7/F8:单步

✅ IDA Free

  • 打开 exe → 自动分析
  • 函数窗口直接点函数名
  • 适合静态分析

四、单条指令反汇编:ndisasm(超快)

适合:裸二进制 / shellcode

ndisasm -b 32 file.bin
ndisasm -b 64 file.bin

五、脚本化 / 自动化:Python + Capstone

适合:批量、自动化分析

from capstone import *

md = Cs(CS_ARCH_X86, CS_MODE_64)
with open("a.out", "rb") as f:
    code = f.read()

for i in md.disasm(code, 0x1000):
    print(f"{i.address:#x}:\t{i.mnemonic}\t{i.op_str}")

六、不同场景推荐速查表

场景 推荐工具
快速看 ELF objdump -d
调试时看汇编 gdb disas
Windows 程序 x64dbg
静态分析 IDA Free
shellcode ndisasm
自动化 Capstone
只想看一条指令 objdump -b binary -d

七、常见坑提醒

  • 32 位 / 64 位要对应
  • 不要把 数据当指令反汇编
  • 有混淆 / 加壳 → 先脱壳再反汇编

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

  • ✅ 系统(Windows / Linux / macOS)
  • ✅ 文件类型(exe / elf / bin / shellcode)
  • ✅ 目的(学习 / 漏洞分析 / 破解 / CTF)

我可以给你一条最精准的命令一步步操作截图级教程

0