Radare2 Tips
R2 Cheatsheet
Skills
radius2 skills & mcp : https://github.com/radareorg/radare2-skills
1. Recon 相關
開啟程式:
r2 ./your_program看到意義不明指標,用 V 進入 hex view:
[0x00000fd0]> V
p 切換到 disassemble:

2. 分析相關
shift + : 輸入 aaa 解析後,用 afi 看 function:

s main 找 main(或用 s sym.main):

從外部抽資訊(不用進 r2)
rabin2 -z <binary> # 抽 stringsr2 -qc izq <binary> # quiet mode 列所有 stringsString xref
aae # emulation 分析,補出 string 的 cross-referenceaxt <addr> # 找誰 reference 到此處axf <addr> # 此處 reference 到哪3. 常用指令
| 指令 | 說明 |
|---|---|
aaa | 自動分析、自動命名函數 |
afl | 列出 functions |
afi | 顯示 function 資訊 |
pdf | print disassembly |
VV | graph view(需先 aaa) |
s <function/addr> | seek and goto |
p | 切換 view(hex / 機械碼 / ..) |
V | 進入 visual mode |
4. Debugger
r2 -d <file> 用 debugger 開啟:
| 指令 | 說明 |
|---|---|
db <addr> | break point |
dc | start with dbg |
shift | step |
GUI 版 R2 - Cutter
https://github.com/rizinorg/cutter Cutter是基於Rizin的GUI版本,Rizin本身是R2的fork (split off 2020) 指令差不多但是底層API寫法不太一樣,下面是一些常用指令:
iI # 查看 Image infoiS # 列出 sectionis # 列出 symbolsiz # stringsaa # 自動分析afl # 函數列表pdf @main # 反組譯 main