【问题标题】:A potentially dangerous Request.Path value.... contains only alphanumerics and an underscore?有潜在危险的 Request.Path 值.... 只包含字母数字和下划线?
【发布时间】:2011-10-13 20:37:02
【问题描述】:

我知道这个问题的正常原因,但是这个 URL 有什么问题?

http://res02.img.mem.com/individual/assets/2/2/7/1/2291722/20081027_112706_07.jpg?width=100

大多数情况下,请求似乎正确执行,但每隔几个小时,服务器就会记录少量 (1-3) 个此类错误,并开始在每个请求中返回 503 错误。

我不介意这些警告,但它在时间上与服务器崩溃相吻合。该应用程序非常简单,只需从 SAN 返回图像并调整其大小。具有相同软件的另一台服务器正常工作。 (并且说软件为数千个其他网站提供动力,其中许多网站在服务器场上运行)。

不同之处在于该服务器具有 FNCMode=2 以防止 ASP.NET 通过网络生成数百万个 FileSystemWatcher 来监视应用程序(和图像)所在的 SAN。 (避免 BIOS 命令限制达到错误)。

我什至用 WinDbg 和 SOS 分析了故障转储,但无济于事。

想法?我知道我在这里可能会提出两个不同的问题,但它们是按时间顺序排列的。

A potentially dangerous Request.Path value was detected from the client (?).
   at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)

Request information: 
    Request URL: http://res02.img.mem.com/individual/assets/2/2/7/1/2291722/20081027_112706_07.jpg?width=100 
    Request Path: /individual/assets/2/2/7/1/2291722/20081027_112706_07.jpg?width=100
    User host address: 174.37.137.143 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: IIS APPPOOL\ASP.NET v4.0 

Thread information: 
    Thread ID: 32 
    Thread account name: IIS APPPOOL\ASP.NET v4.0 
    Is impersonating: False 
    Stack trace:    at System.Web.HttpRequest.ValidateInputIfRequiredByConfig()
   at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)

【问题讨论】:

    标签: asp.net iis


    【解决方案1】:

    事实证明这些问题是无关的。少数请求 URL 对问号进行了 URL 编码,导致它被解析为路径的一部分,而不是查询字符串。 URL 解码后,请求被请求验证捕获。

    崩溃问题似乎是由于 IIS 线程错误,但我们仍在使用 MS 进行调试。

    【讨论】:

      猜你喜欢
      • 2011-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-30
      • 2020-02-23
      • 2016-01-18
      • 1970-01-01
      相关资源
      最近更新 更多