FCKEditor最新上傳漏洞(ASP),允許上傳“.asp;jpg”類型文件解決方案
廣告:
近期公司大量網(wǎng)站受到攻擊,造成很的損失。經(jīng)過反復(fù)分析,發(fā)現(xiàn)原來是FCKEditor存在上傳漏洞。這里,我針對(duì)此上傳漏洞進(jìn)行了修正,具體情況請(qǐng)見以下分析:
攻擊表現(xiàn):
接收上傳的目錄,發(fā)現(xiàn)有以“.asp;jpg”為擴(kuò)展名的攻擊文件。
攻擊分析:
執(zhí)行上傳目錄的“.asp;jpg”文件,發(fā)現(xiàn)它被當(dāng)做一個(gè)正常的ASP文件執(zhí)行,這應(yīng)該是IIS本身的漏洞,虛機(jī)用戶根本就沒辦法處理。那么,我們只能從文件創(chuàng)建的角度處理了。于是我就開始分析FCKEditor的上傳功能。FCKEditor上傳檢測(cè),是通過黑色單/白名單的方式檢測(cè)允許和不允許上傳的文件類型。
上傳支持文件:class_upload.asp
Private Function IsAllowed(sExt)
Dim oRE
Set oRE = New RegExp
oRE.IgnoreCase = True
oRE.Global = True
If sDenied = "" Then
oRE.Pattern = sAllowed
IsAllowed = (sAllowed = "") Or oRE.Test(sExt)
Else
oRE.Pattern = sDenied
IsAllowed = Not oRE.Test(sExt)
End If
Set oRE = Nothing
End Function
通過上面的代碼,我們明顯可以看出,F(xiàn)CKEditor白名單檢測(cè)不夠嚴(yán)謹(jǐn),所有文件擴(kuò)展名里包含白名色單列表值的,都可以通過此驗(yàn)證,這就造成了類似“.asp;jpg、.asp;gif”等文件可以通過FCKEditor的圖片上傳功能傳至網(wǎng)站,而IIS本身又有無法正常識(shí)別“.asp;jpg”的漏洞。結(jié)果自然也就不需要我說了。
解決辦法:
本文以ASP版為例,上傳支持文件地址:
fckeditor\editor\filemanager\connectors\asp\class_upload.asp
知道了漏洞,那么我們處理起來,也就相對(duì)簡單起來。只要完善FCKEditor的上傳檢測(cè)即可。
上傳支持文件:class_upload.asp Private Function IsAllowed(sExt) Dim oRE Set oRE= New RegExp oRE.IgnoreCase= True oRE.Global= True If sDenied = "" Then Set oRE= Nothing |
廣告: