echo1是一个64位的elf可执行文件,用checksec检查发现基本没有进行保护措施
Arch: amd64-64-little
RELRO: Partial RELRO
Stack: No canary found
NX: NX disabled
PIE: No PIE (0x400000)
RWX: Has RWX segments
用IDA查看伪代码
_QWORD v7[4]; // [sp+10h] [bp-20h]@1
setvbuf(stdout, 0LL, 2, 0L

本文探讨了如何在64位ELF文件echo1中利用不存在的溢出漏洞,通过寻找其他输入点,发现echo1函数中存在120个字符的输入限制,可以覆盖返回地址。由于地址不同导致直接使用shellcode地址失败,采用通用跳板方法,覆盖返回地址为jmp esp,接着插入shellcode。最终,通过发送特定payload,实现了从jmp rsp到全局变量id的跳转,成功执行shellcode。
最低0.47元/天 解锁文章
2299

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



