有很多关于这一主题的问题,但我没有找到一个对我们的特殊情况下,潜在的危险人物......的请求参数(不Request的!)
我们有一个高效运行的网站一次在一段时间内 - 每天大约5到10次 - 我们收到关于潜在危险的Request.Path值的错误通知。这里奇怪的是,实际的“危险”字符不在请求路径中,而是在参数中。
当寻找到请求对象,我们得到的值这样的:
HttpContext.Current.Request.Url.AbsolutePath --> /relative/path/to/page
HttpContext.Current.Request.Url.Query --> ?param1=value¶m2=value
ASP.NET抱怨在PARAMS的?
:
Message: A potentially dangerous Request.Path value was detected from the client (?). (System.Web.HttpException)
Stacktrace:
at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)
但是从我的观点的一切似乎点没问题(这些确实是有效的URL,如果我在浏览器中键入它们,它们的工作)。
我们还在跟踪客户端IP和客户端用户代理,它们大多与一些抓取工具相关。是否有可能,他们正在构建触发这些错误的错误请求?
你怎么知道这个错误发生了?谁引起了错误,该网站是否可公开访问?什么确切的请求提出这个信息? – CodeCaster
我们在Global.asax中添加了错误处理程序,并接收有关错误的电子邮件通知。是的,该网站是公开访问的。请求正如问题所述 - 还有什么可以帮助的? – jor