天天看點

檔案上傳漏洞詳解

檔案上傳漏洞分類:

1)伺服器配置不當(IIS6.0 put直接寫檔案)

iss伺服器 webDAV擴充開啟,網站目錄開啟可寫、可通路。隻要知道ip就可以寫檔案
           

2)本地檔案上傳限制被繞過 (javascript驗證被繞過)前端驗證

3)伺服器端過濾不嚴被繞過

(1)php jsp  asp  aspx  asa php3  cer  cdx  .py
		(2)多檔案上傳有時隻對第一個檔案進行嚴格檢驗
           

4)檔案路徑截斷

\0:php是基于C語言編譯的,C語言的字元串結尾以/0結束
		?:在URL中 用來辨別檔案名和參數值, .php?id=
		%00:ur編碼,php5.22版本漏洞
           

5)檔案解析漏洞導緻檔案被執行

iis:
			a.在6.0版本中當檔案被命名為 a.asp;jpg 會被解析為腳本檔案
			b.IIS 6.0 /xx.asp/xx.jpg "xx.asp"是檔案夾名
			c.IIS 7.0/7.5預設Fast-CGI開啟,直接在url中圖檔位址後面輸入/1.php,會把正常圖檔當成php解析
		apach:
			早期版本上傳 1.php.xxx會被解析為腳本.Apache是從右往左判斷字尾
		nginx:
			a. 版本小于等于0.8.37,利用方法和IIS 7.0/7.5一樣,Fast-CGI關閉情況下也可利用。空位元組代碼 xxx.jpg.php
			b. 早期版本 1.jpg/x.php會被當成腳本執行
			c. 對低版本的在任意檔案名後面添加%00.php進行解析攻擊 
			d. 在 nginx 0.5.* 0.6.* 0.7 <= 0.7.65 0.8 <=0.8.37 以上版本中上傳一個在waf白名單之内擴充名的檔案1.jpg 然後以q.jpg%00.php進行請求
			e。在 10.8.41~1.4.3  1.5<=1.5.7 的linux系統裡上傳一個在waf白名單之内擴充名的檔案1.jpg  然後以1.jpg%20%00.php進行請求
           

6)開源編輯器漏洞

(fckeditor,自定義檔案夾,檔案夾結合iis6.0解析漏洞)
		ewebeditor:可以登入背景,配置允許上傳的檔案類型.asp
           

7)檔案上傳漏洞防禦:

a. 上傳檔案存儲目錄不給執行權限
	b. 檔案字尾白名單,注意00截斷攻擊(php 5.2x 更新更新到最新版本)
	c. 不能有本地檔案包含漏洞 (include dama.jpg)
	d. 及時更新web應用軟體。避免解析漏洞攻擊
           

檔案上傳繞過:

1)字尾名大小寫繞過
2)黑名單繞過
3)特殊檔案名繞過
4)00截斷繞過
5).htacess檔案攻擊
6)解析繞過
           

WAF繞過:有些主機WAF軟體為了不影響web伺服器的性能,會對校驗的使用者資料設定大小上限,比如1M。此種情況可以構造一個大檔案,前面1M的内容為垃圾内容,後面才是真正的木馬内容,便可以繞過WAF對檔案内容的校驗;

繼續閱讀