pwn題中 setbuf的用處

在我們遇到的每一個需要輸入輸出的pwn題中一般都會有下面這幾條語句

  setvbuf(stdin, 0LL, 2, 0LL);
  setvbuf(stdout, 0LL, 2, 0LL);
  setvbuf(stderr, 0LL, 2, 0LL);

直到今天才徹底搞明白這三句話的作用。
因爲我們搭建pwn題一般都是用socat進行端口轉發,pwn題搭建詳情
但是socat不是一次寫一行而是一次寫一個緩衝區
所以我們可以通輸入參數type=2(行緩衝)的setvbuf來使得每次從流中讀入一行數據或向流中寫入一行數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章