用途:面向命令行与脚本化的二进制逆向分析,适合内存小于 4GB 或远程环境、无 GUI 的 SSH/CI 场景、快速反汇编与交叉引用、固件与批量样本分析。不适合需要成熟 GUI 反编译与类型传播(改用 Ghidra)、仅需初勘结论、以 Windows 用户态调试为主的场景。
安装:macOS 用 brew install rizin;Arch 用 pacman -S rizin;Fedora/RHEL 用 dnf install rizin;Kali 用 apt install rizin;Debian/Ubuntu 仓库无包,apt install rizin 会失败,需用官方 release 或 rz-pm;Windows 解压官方 release zip。兼容层 radare2 可用 apt/dnf/pacman/brew/choco install radare2。验证:rizin -v、rz-bin -V、r2 -v。反编译插件:rz-pm -ci rz-ghidra,并在 rizin 内用 pdg @ main 验证。
主要用法:rizin -A sample 全自动分析,或交互内执行 aaa(轻量用 aa);afl 列函数,afi @ main 查函数信息,af @ 0x401000 手工定义函数;pdf @ sym.main 反汇编函数,pd 20 打印指令,pdr 带引用;axt @ 0x403000 查引用,axf @ sym.main 查被引用;izz 列字符串并结合 axt @ str.xxx 定位引用链。V 进入可视化,p 切换视图,s 跳转,图形视图梳理控制流,q 退出。
脚本与反编译:rizin -q -c 'aaa; pdf @ sym.main; axt @ 0x403000; quit' sample 一行批处理;rizin -c 'aaa; pdg @ sym.check' sample 输出伪 C;rizin -i script.r2 sample 执行脚本。调试:rizin -d ./sample 或 rizin -d -p 1234 attach;db 设断点、dc 继续、ds/dso 单步/步过、dr eax=0 改寄存器、px @ rsp 看栈、drr 看寄存器。搜索:/x、/v、/w、/r,写字节 wx 9090 @ 0x401000,读 px 32 @ 0x401000。文件信息用 rz-bin -I/-z/-i。项目用 Ps 保存、Po 打开、Pj > out.json 导出。
限制与注意:未做分析前无函数边界与交叉引用;大文件全量 aaa 极慢,宜用 aa 或手工 af;rz 与 r2 大体兼容但插件安装与个别命令不同,执行前用 rz? 查帮助;pdf 依赖函数边界,无符号时先 af;批处理脚本需 e scr.color=0 去色避免分页与颜色污染;Windows 上 rz 调试器能力有限。发行版包状态随时间变化,安装前先查目标发行版仓库,以 rizin -v 为准。