1.提示顯示所以關閉js
上傳<?php phpinfo(); ?>的png形式
抓包,將png改為php
然后放包上傳成功
2.提示說檢查數據類型
抓包
將數據類型改成
image/jpeg
上傳成功
3.提示
可以用phtml,php5,php3
4.先上傳.htaccess文件(在php的nts版本下面無法解析為php文件,.php5.6以下不帶nts的版本)
.htaccess參數常見配法有以下幾種:
??? AddHandler php5-script .jpg
??? AddType application/x-httpd-php .jpg
??? SetHandler application/x-httpd-php
Sethandler 將該目錄及子目錄的所有文件均映射為php文件類型。
Addhandler 使用 php5-script 處理器來解析所匹配到的文件。
AddType 將特定擴展名文件映射為php文件類型。
查看源代碼,這些文件都不允許上傳,修改配置文件.htaccess,
上傳后上傳的指定文件可以當作php文件來解析
成功上傳
5.大小寫過濾,上傳4.phP
6.查看源代碼,沒有繞過首尾去空,所以用空格繞過
按理說沒問題但是顯示就不知道了
7.沒有刪除末尾的點,點繞過4.php. .
8.查看源代碼,沒有::$DATA繞過
按理說應該可以,但不知道為什莫沒有解析
9.試了好幾個繞過都不行,用.php.jpg成功繞過
10.沒思路,查看提示
str_ireplace($deny_ext,"", $file_name);(函數將匹配到的字符替換為空),用雙寫繞過.pphphp
成功
補充知識點:str_ireplace函數
語法:str_ireplace(find,replace,string,count)
11.
%00戒斷,修改畫圈兩處然后發送repeater-send
12.道理差不多,這是post罷了
修改如上兩處(4.php后面有空格)
在Hex里修改20為00
13. 用4.php和4.png上傳均失敗,點擊頁面的文件上傳漏洞 ????????
自己制作圖片馬,在010末尾加上你要插入php代碼 上傳即可,
我也不清楚get傳參后為什莫會顯示如此
14.同理延用上一題的圖片🐎
15.同理
16.查看源碼涉及到圖片渲染?先上傳一張正常的png另存地址到文件夾,在該另存圖片末尾通過010添加相關php語句再次上傳,構造geet傳參訪問
?17.按理說這道題是先上傳末尾有php代碼的文件,保存上傳圖片,用010打開另存圖片和原圖片發現另存圖片被渲染末尾的代碼沒了,那么通過比對,找到不被渲染的地方插入php代碼上傳成功即可,我不小的為什莫我上傳的圖片沒有被渲染,這個牛逼
upload-labs之pass 16詳細分析
作者:Yang
https://xz.aliyun.com/news/2337?time__1311=eqfxyQG%3Deqlx0nKKD%3DNDtGCUIC8lmYoD&u_atoken=64625a57ec456c8a30b41bf9f74011b0&u_asig=1a0c380917408987961751628e00fa#toc-13
文章轉載自 先知社區
18. ????????????????????????????????????????