木馬原理:入侵者使用諸如ASP圖片木馬產生器之類的工具將一張正常的圖片與一個ASP木馬檔案合并成一個圖片檔案(即將對網站有害的
ASP代碼插在圖片編碼之後,雖然圖片仍然可以正常顯示,但是檔案內容和尺寸已被改變),然後通過網站提供的檔案上傳功能上傳這一張“合
'法的”圖片,進而實現了上傳ASP木馬的目的。
' 防範方法:因為這種木馬是圖片與木馬的變形平板,所以需要在上傳圖片前檢查檔案內容,若檔案內容不合法(即包含有惡意代碼在裡面),
'則禁止上傳,從而堵住了木馬攻擊的源頭,這是木馬攻擊的第一關,至關重要,必須堵住。
'***************************************************************************
複製代碼 代碼如下:'Begin--------------------------------------------------------------------------------------------------------------------------
function CheckFileContent(FileName)
dim ClientFile,ClientText,ClientContent,DangerString,DSArray,AttackFlag,k
set ClientFile=Server.CreateObject("Scripting.FileSystemObject")
set ClientText=ClientFile.OpenTextFile(Server.MapPath(FileName),1)
ClientContent=LCase(ClientText.ReadAll)
set ClientText=nothing
set ClientFile=nothing
AttackFlag=false
DangerString=".getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language=|include|filesystemobject|shell.application"
DSArray=split(DangerString,"|")
for k=0 to UBound(DSArray)
if InStr(ClientContent,DSArray(k))>0 then '判斷檔案內容中是否包含有危險的操作字元,如有,則必須刪除該檔案。
AttackFlag=true
exit for
end if
next
CheckFileContent=AttackFlag
end function
'End----------------------------------------------------------------------------------------------------------------------------