温馨提示×

如何用radare2反汇编CentOS

小樊
34
2026-08-30 10:41:07
栏目: 智能运维

radare2CentOS 上反汇编一个程序,流程和其他 Linux 发行版基本一致。下面给你一个从安装到反汇编的完整示例


一、在 CentOS 上安装 radare2

方式 1:从源码安装(推荐,版本最新)

sudo yum install -y git make gcc
git clone https://github.com/radareorg/radare2.git
cd radare2
./sys/install.sh

安装完成后检查:

r2 -v

方式 2:通过包管理器(版本可能较旧)

CentOS 默认仓库通常没有 radare2,但第三方仓库可能有:

sudo yum install epel-release
sudo yum search radare2

如果没有,推荐用源码安装。


二、准备一个待反汇编的程序

示例:用 C 写一个简单程序

// test.c
#include <stdio.h>

int main() {
    printf("Hello CentOS\n");
    return 0;
}

编译:

gcc -m64 -O0 -o test test.c

三、使用 radare2 反汇编

1️⃣ 打开程序

r2 test

常用选项:

r2 -d test      # 调试模式
r2 -A test      # 自动分析

2️⃣ 自动分析

如果没用 -A 启动,手动分析:

aaa

说明:

  • aaa:深度分析函数、符号、引用
  • aaaa:更激进(慢)

3️⃣ 查看函数列表

afl

示例输出:

0x00401000    main
0x00401020    printf

4️⃣ 反汇编 main 函数

s main
pdf

说明:

  • s main:跳转到 main
  • pdf:打印反汇编(disassemble function)

5️⃣ 查看汇编入口点(可选)

ie

或:

i

四、常用 radare2 反汇编命令速查

命令 作用
aaa 自动分析
afl 列出函数
s <addr> 跳转到地址
pdf 反汇编当前函数
pd <n> 反汇编 n 条指令
px 十六进制 dump
i 文件信息
iz 字符串
pdf @ main 直接反汇编 main
q 退出

五、可选:配合 r2pipe / r2gui

  • r2pipe:用 Python 脚本调用 radare2
  • iaito:radare2 的图形界面(可单独安装)

六、常见问题

❓ CentOS 上 radare2 报错

  • 确认 gcc、make、git 已安装
  • 确认安装后执行 r2 -v
  • 若报 32/64 位问题,编译时指定 -m64-m32

如果你愿意,我也可以:

  • ✅ 帮你 反汇编某个具体二进制
  • ✅ 对比 radare2 vs objdump / gdb
  • ✅ 用 radare2 分析 ELF / 漏洞 / CrackMe

只要把你的使用场景告诉我即可。

0