14

WebアプリケーションでASP.NETのログイン制御を使用しています。この例外System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client が発生したときに、ユーザーがログインコントロールの[ユーザー名]テキストフィールドにSQLインジェクション攻撃またはHTMLまたはSCRIPT操作を実行しようとしたときに発生する、面白いタイプのエラーをラベルに表示したいと思います。認証ログインをtrycatchブロックで囲み、例外をキャッチするなど、多くのことを試し System.Web.HttpRequestValidationExceptionました。これは、ユーザー名TextBoxのonTextChangeと同じように、自分で作成したイベントに対しても同じことを行います。しかし、これらの試みはすべて失敗しました。この例外をチェックして、攻撃者に面白いメッセージを表示する方法を教えてください。

4

1 に答える 1

15

わかりやすいエラー メッセージを表示する方法の例をいくつか示します。

http://romsteady.blogspot.com/2007/06/how-to-catch-httprequestvalidationexcep.html

本番環境で HttpRequestValidationException をキャッチする方法

この例外は、ページ コードが発生する前にスローされることに注意してください。したがって、通常、ページ コードでエラーをキャッチすることはできませんが、Application_Error でのみキャッチできます。

私はこれを自分で試したことはありませんが、このサイトでは、ページ コードの実行を許可する代わりの方法を提供していますが、組み込みロジックを使用して悪意のある入力から保護し、独自のコード内で例外をキャッチします。

于 2012-05-31T16:56:14.967 に答える