web php include攻防世界php安全示例詳解
步驟
打開(kāi)所給的實(shí)驗(yàn)環(huán)境,發(fā)現(xiàn)給出代碼,分析代碼可知是文件包含漏洞:
其中含有兩個(gè)參數(shù):
- hello參數(shù)中的內(nèi)容會(huì)被輸出到頁(yè)面
- page參數(shù)中的內(nèi)容則會(huì)被進(jìn)行文件包含,但是會(huì)對(duì)
php://
進(jìn)行過(guò)濾
兩個(gè)函數(shù):
strstr(string,search[,before_search]):strstr() 函數(shù)搜索字符串(search)在另一字符串(string)中是否存在,如果是,返回該字符串及剩余部分,否則返回 FALSE。區(qū)分大小寫,stristr()函數(shù)不區(qū)分大小寫。
string
:必需。規(guī)定被搜索的字符串。
search
:必需。規(guī)定要搜索的字符串。如果該參數(shù)是數(shù)字,則搜索匹配該數(shù)字對(duì)應(yīng)的 ASCII 值的字符。
before_search
:可選。一個(gè)默認(rèn)值為 “false” 的布爾值。如果設(shè)置為 “true”,它將返回 search 參數(shù)第一次出現(xiàn)之前的字符串部分。
str_replace(find,replace,string,count):這個(gè)函數(shù)是用來(lái)替換字符串的
find
:要查的字符串。
string
:原始字符串
繞過(guò)方式:
- 使用大小寫繞過(guò)的方式:PhP://
這里我們使用偽協(xié)議phP://input
- php://input是個(gè)可以訪問(wèn)請(qǐng)求的原始數(shù)據(jù)的只讀流??梢宰x取post提交的數(shù)據(jù)
我們?cè)趐ost提交的內(nèi)容中寫入命令執(zhí)行(反引號(hào))的php代碼:
得到三個(gè)文件,發(fā)現(xiàn)通過(guò)瀏覽器打不開(kāi):
使用cat命令來(lái)查看:
查看第一個(gè)文件發(fā)現(xiàn)flag!
知識(shí)點(diǎn)
本題考查了php文件包含漏洞以及OS 命令注入
以上就是web php include攻防世界解決示例的詳細(xì)內(nèi)容,更多關(guān)于web php include攻防世界的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
版權(quán)聲明:
本站所有文章和圖片均來(lái)自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請(qǐng)勿用于商業(yè)用途,如果損害了您的權(quán)利,請(qǐng)聯(lián)系網(wǎng)站客服處理。