在CTF中让read返回0


在CTF pwn中利用pwntools发送EOF标志使得read没有读取任何字符后返回0:

from pwn import *
import tty
file = './test'
sh = process(file, stdin=PTY, raw=False)
ru("input>")
sh.send(chr(tty.CEOF))#发送EOF标志
sh.clean()#清空缓冲区
#此时可以让read得到返回值0
#但是这种方法有一问题,就是虽然之后的read还能正常进行,但是read会被换行符截断,这也导致了2021美团CTF的blind不能被正常解出来;

文章作者: q1ming
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 q1ming !
  目录