突然且无法生成的'潜在危险的Request.Path值'

时间:2012-01-31 15:30:14

标签: asp.net

昨天大约2分钟,我网站的错误日志出现此错误消息:

A potentially dangerous Request.Path value was detected from the client (?).

与这两个查询相关的7个不同错误:

/flash/userImage.ashx?id=53210cd9-2e34-4b27-9315-28c3525cb15c&type=micrositePhoto&width=750
/flash/userImage.ashx?id=53210cd9-2e34-4b27-9315-28c3525cb15c

我无法通过在网站上输入网址来产生此错误。

这是堆栈跟踪:

at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
at System.Web.HttpApplication.ValidateRequestExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

这似乎是asp.net/IIS内部的东西。

可能导致此错误的原因是什么?是一些黑客攻击吗?当后续查询没问题时,我不明白为什么它抱怨路径。在我的错误日志功能中,我得到的pageURL如下:

pageURL = HttpContext.Current.Request.Url.ToString();

我记录有关错误的以下信息:pageUrl,错误消息,堆栈跟踪,错误日期和登录用户(如果有)。还有什么我应该记录以帮助我调试这个吗?我什么都想不到。

2 个答案:

答案 0 :(得分:1)

我猜错误是由与此类似的请求引起的:

/flash/userImage.ashx/userImage.ashx%3Fid=53210cd9-2e34-4b27-9315-28c3525cb15c
------------------------------------^^^

请注意%3F(网址转义的问号标记)。

答案 1 :(得分:1)

可能有所帮助的一些事情:

  1. 除了您自己的错误日志之外,请尝试检查IIS服务器日志文件
  2. 尝试使用elmah记录错误和异常(也可以是installed via NuGet),它会记录每个异常的所有请求参数和服务器变量。