步驟
打開所給的實驗環(huán)境,發(fā)現(xiàn)給出代碼,分析代碼可知是文件包含漏洞:
其中含有兩個參數(shù):
- hello參數(shù)中的內(nèi)容會被輸出到頁面
-
page參數(shù)中的內(nèi)容則會被進行文件包含,但是會對
php://
進行過濾
兩個函數(shù):
strstr(string,search[,before_search]):strstr() 函數(shù)搜索字符串(search)在另一字符串(string)中是否存在,如果是,返回該字符串及剩余部分,否則返回 FALSE。區(qū)分大小寫,stristr()函數(shù)不區(qū)分大小寫。
string
:必需。規(guī)定被搜索的字符串。
search
:必需。規(guī)定要搜索的字符串。如果該參數(shù)是數(shù)字,則搜索匹配該數(shù)字對應的 ASCII 值的字符。
before_search
:可選。一個默認值為 “false” 的布爾值。如果設置為 “true”,它將返回 search 參數(shù)第一次出現(xiàn)之前的字符串部分。
str_replace(find,replace,string,count):這個函數(shù)是用來替換字符串的
find
:要查的字符串。
string
:原始字符串
繞過方式:
- 使用大小寫繞過的方式:PhP://
這里我們使用偽協(xié)議phP://input
- php://input是個可以訪問請求的原始數(shù)據(jù)的只讀流。可以讀取post提交的數(shù)據(jù)
我們在post提交的內(nèi)容中寫入命令執(zhí)行(反引號)的php代碼:
得到三個文件,發(fā)現(xiàn)通過瀏覽器打不開:
使用cat命令來查看:
查看第一個文件發(fā)現(xiàn)flag!
知識點
本題考查了php文件包含漏洞以及OS 命令注入
以上就是web php include攻防世界解決示例的詳細內(nèi)容,更多關于web php include攻防世界的資料請關注服務器之家其它相關文章!
原文鏈接:https://blog.csdn.net/weixin_45677145/article/details/112906141