Bugku:flag在index裡
阿新 • • 發佈:2018-12-16
http://123.206.87.240:8005/post/index.php?file=show.php
題目提示我們flag在index中,通過url分析,這裡傳送了file為key,show.php為value的GET請求,應該是ctf常見套路–php檔案包含漏洞,大致套路是這樣滴:
<?php
$file = $_GET["file"];
... ...
include($file);
?>
例如:test.php大致內容如上,通過訪問http://xxx/xxx/test.php?file=xxx.php,則$file=xxx.php,也就是說:include(xxx.php),而對於php的include()函式,會獲取指定檔案的內容,在執行前將程式碼插入到test.php檔案中。而如果被包含的檔案中無有效的php程式碼,則會直接輸出無效的檔案內容。 通過以上分析,我們應該是需要獲取index.php檔案的內容進行下一步分析,嘗試訪問:
目的是為了構造:
include(../index.php)
引入當前目錄下的index.php檔案,從結果看來,應當是被捕捉到關鍵字串"…/",這種方法無效。嘗試使用php偽協議php://filter,以base64編碼格式讀取檔案,構造:
php://filter/read=convert.base64-encode/resource=[檔案路徑]
再進行base64解碼得到flag