最常用的php://filter函匕,用于讀取文件/源碼:http://127.0.0.1/xxx.php?file=php://filter/read=convert.base64-encode/resource=index.php(使用的過濾器是convert.base64-encode。它的作用就是讀取index.php的內(nèi)容進(jìn)行base64編碼后輸出)蚪黑,然后base64解碼得到源代碼盅惜。
貼一個大佬講的php://filter妙用。
https://www.leavesongs.com/PENETRATION/php-filter-magic.html
php://input忌穿,需要開啟allow_url_include抒寂。將post請求的數(shù)據(jù)當(dāng)作php代碼執(zhí)行。當(dāng)傳入的參數(shù)作為文件名打開時掠剑,可以將參數(shù)設(shè)為php://input,同時post想設(shè)置的文件內(nèi)容屈芜,php執(zhí)行時會將post內(nèi)容當(dāng)作文件內(nèi)容。
利用zip或phar偽協(xié)議可以讀取壓縮包中的文件,解壓的壓縮包與后綴無關(guān)井佑。
如將file.txt壓縮成zip属铁,改后綴為jpg繞過上傳限制然后利用如下讀取文件
/about.php?file=phar://./images/file.jpg/1.php
/about.php?file=zip://./images/file.jpg%231.php
PHP偽協(xié)議.png