DVWA-文件上傳學習筆記php
1、文件上傳漏洞web
文件上傳漏洞,一般是因爲對上傳文件的類型、內容沒有進行嚴格的過濾、檢查,致使攻擊者惡意上傳木馬以便得到服務器的webshell權限。shell
2、DVWA學習服務器
將DVWA的級別設置爲low學習
1.分析源碼,把網站根目錄和上傳的到的目錄以及文件名進行拼接,而後判斷文件是否上傳到新的位置,能夠看出沒有對文件上傳作任何過濾網站
2.編寫php一句話木馬,而後上傳,下圖說明上傳成功spa
3.用中國菜刀鏈接上傳的webshell中間件
將DVWA的級別設置爲Mediumblog
1.分析源碼,能夠看到對上傳的文件類型和大小作了限制, 採用白名單過濾只容許上傳文件的MIME類型爲image/jpeg或者image/png,以及文件大小小於100000字節圖片
2.抓包修改文件的MIME類型,繞過MIME類型的限制
3.使用菜刀鏈接
將DVWA的級別設置爲High
1.分析源碼,能夠看到對上傳文件的後綴進行了嚴格的限制,只容許後綴爲jpg、jpeg、png而且大小小於100000字節的文件。 此時只能上傳文件後綴爲jpg、jpeg、png的文件
2.經過構造一句話圖片木馬,而後上傳來繞過防護,而後結合php文件解析漏洞或者web中間件解析漏洞或者文件包含漏洞來達到解析含有php代碼的png文件
2.1構造圖片馬 #本實驗因爲DVWA版本自身緣由,沒法利用文件包含結合文件上傳
方法一:找個圖片,用記事本打開,添加一句話
方法二:copy 1.jpg/b+a.php/a 2.jpg
將DVWA的級別設置爲Impossible
1.分析源碼,能夠看出對上傳文件的後綴,上傳文件的類型,上傳文件的大小作了嚴格的限制,並對上傳的文件進行重命名,完全杜絕文件上傳漏洞
Impossible級別的代碼對上傳文件進行了重命名