現在、従来の ASP アプリケーションを XSS から保護しようとしています。ネットで Microsoft の AntiXSS を見つけましたが、これは従来のアプリケーションで動作するのでしょうか?
そうでない場合、弦を消毒する方法を教えてください。
現在、従来の ASP アプリケーションを XSS から保護しようとしています。ネットで Microsoft の AntiXSS を見つけましたが、これは従来のアプリケーションで動作するのでしょうか?
そうでない場合、弦を消毒する方法を教えてください。
文字列をサニタイズするには、すべての出力を HTML エンコードします。そうすれば、特殊文字や巨大な正規表現をいじる必要がなくなります。
Server.HTMLEncode(string)
クロスサイト スクリプティング攻撃を防ぐための最も重要な 2 つの対策は次のとおりです。
方法: ASP.NET でのクロスサイト スクリプティングの防止(私は古典的な ASP ではないことを知っていますが、同様の原則があります)
従来の ASP に関数が存在しない場合は、関数を記述します。
(現在のプロジェクトで行っているように)特定のHTMLタグを許可する必要がある場合は、正規表現を使用してそれらのタグのみを許可し、他のタグは許可しないようにすることができます。
set objRegExp = new RegExp
with objRegExp
.Pattern = "<^((b)|(i)|(em)|(strong)|(br))>.*</.*>"
.IgnoreCase = varIgnoreCase
.Global = True
end with
cleanString = objRegExp.replace(originalString, "")
簡単ではありません-COM呼び出し可能なラッパーを作成し、サーバーにインストールする必要があります.「クラシック」ASPには適していないと思います.
<%
Response.AddHeader "X-XSS-Protection", "1"
%>