BUUCTF [ACTF2020 新生賽]Include

是阿星呀發表於2020-10-28

文章目錄

題解

主要考查了利用php://filter偽協議進行檔案包含
進入題目根據Tip進入正題,可以看到URL中存在檔案包含(題目名也很直接)
在這裡插入圖片描述
首先考慮 "php://input"偽協議
在這裡插入圖片描述
發現題目過濾了php://input 偽協議

重新考慮之後使用 “php://filter"偽協議” 來進行包含。當它與包含函式結合時,php://filter流會被當作php檔案執行。所以我們一般對其進行編碼,阻止其不執行。從而導致任意檔案讀取。

構造Payload: ?file=php://filter/read=convert.base64-encode/resource=flag.php
這裡需要注意的是使用php://filter偽協議進行檔案包含時,需要加上read=convert.base64-encode來對檔案內容進行編碼
傳送請求得到base64編碼後的flag.php檔案原始碼:
在這裡插入圖片描述
解碼之,得到Flag

<?php
echo "Can you find out the flag?";
//flag{2517de34-c8be-4227-a6f0-7664b27484d3}

參考文章:
https://www.cnblogs.com/yesec/p/12379909.html

課外擴充

檔案包含-偽協議
CTF中偽協議總結

相關文章