CTF系列 攻防世界 nizhuansiwei

2021-10-20 19:14:23 字數 2156 閱讀 8157

相關資訊:

hint:無

進入**後,便能顯示原始碼,是一道**審計題目。

<?php 

$text

=$_get

["text"];

$file

=$_get

["file"];

$password

=$_get

["password"];

// text 需要等於 welcomeif(

isset

($text)&&

(file_get_contents

($text

,'r'

)===

"welcome to the zjctf"))

else

}else

?>

我在原始碼中寫了一些關鍵資訊。

我還收集了一些其他資訊

第一步,我們需要將變數 text 賦值為welcome to the zjctf,我們需要使用到 file_get_content 讀取網頁的功能

首先嘗試 data 協議,如果 data 協議可以實現,那麼 php://input 也應該可以實現。

構造後的 url:

再嘗試使用 php://input 實現

ps: hackbar 傳送 post 必須要含等號,否則無資料。(滿滿都是心酸淚

通過第一步的測試,我們可以正常一些配置資訊如下:

allow_url_include:on

allow_url_fopen:on

第二步就是利用 include 嘗試讀取原始碼注釋的檔名(useless.php)。

所以這裡我們採用 php://filter 偽協議來讀取。

使用 base64 指令碼解碼:

<?php 

//讀取檔案流

$filedata

=file_get_contents

("1.txt");

//將檔案寫入本地

file_put_contents

("useless.php"

,base64_decode

($filedata))

;

解碼後的原始碼為:

<?php 

class

flag

}}

在 useless.php 中的注釋,是在暗示 flag 位於 flag.php 檔案中,我們將 file 改為 flag.php 即可。

<?php 

class

flag

$obj

=new

flag()

;echo

urlencode

(serialize

($obj))

;

將 file 改為 php,讓 include 執行 useless.php,從而引入 flag 類,最後訪問即可得到 flag(**在原始碼中)

CTF後門入侵系統 攻防世界

php filter是php中特有協議流,中間流 來處理其他流,就比如可以用 post請求通過base64將php原始碼編譯並輸出 localhost 80 index.php?php filter write convert.base64 decode resource index.php 輸出的...

CTF 攻防世界練習題 二)

webshell就是以asp php jsp或者cgi等網頁檔案形式存在的一種命令執行環境,也可以將其稱做為一種網頁後門。黑客在入侵了乙個 後,通常會將asp或php後門檔案與 伺服器web目錄下正常的網頁檔案混在一起,然後就可以使用瀏覽器來訪問asp或者php後門,得到乙個命令執行環境,以達到控制...

攻防世界mfw 攻防世界 Web mfw

題目資訊 image.png 工具 githack,dirsearch 知識點 git漏洞 審計 開啟題目場景,檢查 發現這樣乙個頁面 image.png 訪問.git目錄,疑似存在git原始碼洩露 image.png 再用dirsearch掃瞄,發現git原始碼洩露 使用 githack獲取原始碼...