网站Logo 网友马大帅的博客

调试工具Radare2使用介绍

ughostx
21
2025-12-22

简介

Radare2(通常简写为 r2)是一个开源的、跨平台的逆向工程框架,主要用于分析、反汇编、调试和修改二进制文件。它被誉为“命令行界的瑞士军刀”,是逆向工程师、安全研究员和CTF选手的必备工具之一。

核心特点

  1. 完全免费且开源:基于LGPLv3许可证,你可以自由使用、修改和分发。

  2. 跨平台支持:完美运行于 Linux、Windows、macOS、Android 等多种操作系统。

  3. 命令行驱动:所有操作都通过命令行完成,这使得它非常高效,易于脚本化和自动化,尤其适合远程操作和无图形界面的环境。

  4. 功能极其全面

    • 反汇编:支持海量处理器架构(x86, ARM, MIPS, PowerPC等)。

    • 调试:可本地/远程调试应用程序(支持GDB、WinDbg等协议)。

    • 二进制修补:直接修改二进制文件。

    • 数据可视化:生成控制流图、函数调用图等。

    • 脚本支持:内置多种脚本语言(r2lang, Python, JavaScript等),可编写插件扩展功能

官方地址

下面是r2的官方地址:https://github.com/radareorg/radare2

中文手册:https://heersin.gitbook.io/radare2

安装

可以直接通过git下载下来安装使用

git clone https://github.com/radareorg/radare2.git
./sys/install.sh

常用命令

加载符号表

r2 file  ##加载符号表
r2 -B [pie addr] file ## 加载pie格式镜像,并指定加载地址
r2 -B 0xffed1000 -e bin.relocs.apply=true u-boot  ## 加载pie格式镜像,并指定加载地址和reloc地址

调试命令

aaa      ##自动分析所有符号
afl | grep func ##查询函数
sf func_name    ##跳转到特定函数
pd 20           ##反汇编此函数后面的20句代码
pdf 打印此函数的解析结果

eg:

图形界面

目前没有一直维护的图形界面,之前有Cutter项目,界面如下:

最新地址如下:https://github.com/rizinorg/cutter

Screenshot

动物装饰