ASPイメージ型トロイの木馬を検出する機能。 FSO はクライアント ファイルのコンテンツを読み取ることができないため、ファイルがサーバーにアップロードされた後にのみ、ファイルを開いてコンテンツ検査を行うことができます。トロイの木馬の原理: 侵入者は、ASP 画像トロイの木馬ジェネレーターなどのツールを使用して、通常の画像と ASP トロイの木馬ファイルを 1 つの画像ファイル (つまり、Web サイトに有害なファイル) に結合します。
画像をエンコードした後に ASP コードが挿入されますが、画像は通常どおり表示されますが、ファイルの内容とサイズは変更されています)を使用して、Web サイトが提供するファイル アップロード機能を使用してこの画像をアップロードします。
' メソッド画像を使用することで、ASP トロイの木馬をアップロードする目的が達成されます。
' 防止方法: このトロイの木馬は画像とトロイの木馬を組み合わせたものであるため、ファイルの内容が違法である (つまり、悪意のあるコードが含まれている) 場合は、画像をアップロードする前にファイルの内容を確認する必要があります。
' のアップロードが禁止されているため、トロイの木馬攻撃の発信元がブロックされます。これは非常に重要であり、ブロックする必要があります。
'************************************************ * **************************
次のようにコードをコピーします。
'始める - - - - - - - - - - - - - - - - - - - - - - - - -------------------------------------------------- ------------------------
関数 CheckFileContent(ファイル名)
dim クライアントファイル、クライアントテキスト、クライアントコンテンツ、DangerString、DSArray、攻撃フラグ、k
set ClientFile=Server.CreateObject(Scripting.FileSystemObject)
set ClientText=ClientFile.OpenTextFile(Server.MapPath(ファイル名),1)
ClientContent=LCase(ClientText.ReadAll)
ClientText=何も設定しない
ClientFile=何も設定しない
攻撃フラグ=false
DangerString=.getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject| language=|include|filesystemobject|shell.application
DSArray=split(DangerString,|)
k=0 から UBound(DSArray) の場合
if InStr(ClientContent,DSArray(k))>0 then 'ファイルの内容に危険な操作文字が含まれているかどうかを判断します。含まれている場合は、ファイルを削除する必要があります。
攻撃フラグ=true
のために出る
終了する場合
次
CheckFileContent=攻撃フラグ
終了関数
'終わり - - - - - - - - - - - - - - - - - - - - - - - - -------------------------------------------------- ------------------------