木馬原理:入侵者使用諸如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----------------------------------------------------------------------------------------------------------------------------