在 CentOS 系统下进行“反汇编”(disassembly)操作,常用的工具非常多,取决于你是想分析 二进制文件、可执行程序、内核模块还是 Shellcode。下面按类别给你整理一份实用清单:
objdump(GNU Binutils)✅ CentOS 自带,最基础
objdump -d ./a.out
常用选项:
-d:反汇编代码段-D:反汇编所有段-M intel:使用 Intel 语法-S:源码+汇编混合安装:
yum install binutils
gdb(GNU Debugger)✅ 调试 + 反汇编一体
gdb ./a.out
(gdb) disassemble main
高级用法:
(gdb) set disassembly-flavor intel
(gdb) disassemble /m main
安装:
yum install gdb
radare2(r2)✅ 轻量、强大、命令行逆向神器
r2 ./a.out
[0x000000]> aaa
[0x000000]> pdf
安装:
yum install radare2
# 或编译安装最新版
Ghidra(NSA 开源)✅ 图形化 + 反编译 + 反汇编
使用方式:
./ghidraRun
⚠️ CentOS 需安装:
yum install java-11-openjdk
IDA Pro(商业)✅ 行业标杆(有免费版 IDA Free)
crash(内核调试)✅ 分析内核、内核模块
crash /usr/lib/debug/lib/modules/$(uname -r)/vmlinux /var/crash/xxx
crash> dis schedule
安装:
yum install crash
perf(性能 + 反汇编)✅ 内核 / 用户态都支持
perf record ./a.out
perf annotate
安装:
yum install perf
ndisasm(NASM 工具)✅ 反汇编裸机器码
echo -n "\x90\x90\xc3" | ndisasm -b 64 -
安装:
yum install nasm
| 工具 | 用途 |
|---|---|
strace |
系统调用级分析 |
ltrace |
库函数调用 |
readelf |
ELF 结构分析 |
capstone |
Python/C 反汇编库 |
unicorn |
CPU 模拟 + 反汇编 |
objdump + gdbradare2 / Ghidracrash + perfndisasm如果你能说明:
我可以给你 更精确的工具和命令示例。