温馨提示×

centos反汇编指令如何保存

小樊
45
2026-10-06 03:10:27
栏目: 智能运维

在 CentOS(或其他 Linux 发行版)上,“反汇编指令如何保存”通常指把反汇编结果保存到文件,常见做法如下。


一、使用 objdump 反汇编并保存

objdump 是最常用的反汇编工具。

1. 反汇编整个可执行文件

objdump -d ./test > test.asm
  • -d:反汇编可执行段
  • > test.asm:重定向保存为文件

2. 反汇编指定段

objdump -d -j .text ./test > text.asm

3. 显示源码+汇编(需带调试信息)

objdump -S ./test > test_with_src.asm

4. Intel 语法(更直观)

objdump -d -M intel ./test > test_intel.asm

二、使用 gdb 反汇编并保存

1. 在 gdb 中反汇编

gdb ./test
(gdb) disassemble main

2. 把 gdb 输出保存到文件

(gdb) set logging on
(gdb) set logging file asm.txt
(gdb) disassemble main
(gdb) set logging off

或者一次性:

gdb -batch -ex "disassemble main" ./test > main.asm

三、使用 nm / readelf 辅助保存符号信息

nm ./test > symbols.txt
readelf -S ./test > sections.txt

四、使用 radare2(进阶)

r2 -c "pdf @ main" ./test > main.asm

五、常见注意事项

  1. 需安装工具
    yum install binutils gdb
    
  2. 若程序被 strip,反汇编仍可,但函数名会丢失
  3. 建议保存时注明:
    • 使用的工具
    • 语法(AT&T / Intel)
    • 是否带调试信息

如果你指的是**“反汇编指令本身(汇编代码)如何保存成可重汇编文件”**,可以告诉我具体场景(比如想改完再汇编回去),我可以给你更针对性的方案。

0 踩