asp.net Web フォーム アプリケーションでは、「潜在的に危険な Request.RawUrl」というエラー メッセージが表示されることがありますが、そのソースが見つかりません。
この例外の考えられる理由は何ですか?
私たちのケースからのいくつかの詳細:
イベント メッセージ: 検証エラーが発生しました 例外の種類: System.Web.HttpRequestValidationException 例外メッセージ: 潜在的に危険な Request.RawUrl 値が クライアントから検出されました (="..._Combin%20%20%20%20%20%2...")。 リクエスト URL: https://somesite/somepage.aspx ?_TSM_HiddenField_=ctl00_sm1_HiddenField &_TSM_Combin%20</div>%20%20%20%20%20%20%20%20<div%20id= スタック トレース: System.Web.HttpRequest.ValidateString(String s, String valueName, String collectionName) で System.Web.HttpRequest.get_RawUrl() で System.Web.UI.Page.ProcessRequestMain で (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint) System.Web.UI.Page.ProcessRequest (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint) で System.Web.UI.Page.ProcessRequest() で System.Web.UI.Page.ProcessRequestWithNoAssert (HttpContext コンテキスト) で System.Web.UI.Page.ProcessRequest (HttpContext コンテキスト) で ASP.somepage_aspx.ProcessRequest (HttpContext コンテキスト) で System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() で System.Web.HttpApplication.ExecuteStep (IExecutionStep ステップ、ブール値 & completedSynchronously) で
生成されたページの html で TSM_HiddenField の部分を認識します。
<script src="/somepage.aspx?_TSM_HiddenField_=ctl00_sm1_HiddenField&_TSM_CombinedScripts_= %3b%3bAjaxControlToolkit%2c+Version%3d3.5.11119.20050%2c+Culture%3dneutral%2c +PublicKeyToken%3d28f01b0e84b6d53e%3ada-DK%3a8e147239-dd05-47b0-8fb3-f743a139f982 %3ae2e86ef9%3a1df13a87%3a8ccd9c1b%3ac4c00916%3a9ea3f0e2%3a9e8e87e9 %3a4c9865be%3aba594826%3ac76f1358" type="text/javascript"></script>
…ということで、今回の場合はAjaxControlToolkitが関係しているようですが、どうしてこの例外が発生するのでしょうか。
(ユーザーがログインしているときに発生するため、クローラーまたはハッキングの試みが関与しているとは思えません...)