例外:'无效的网络资源请求'

时间:2018-05-15 13:09:59

标签: c# asp.net webforms

我们的ASP .NET Webforms应用程序有一个奇怪的例外 同样的例外是有时抛出一个不同的.aspx页面:

  

错误:这是无效的网络资源请求。       网址:https://example.com/WebResource.axd?d=pPvrniqvKCVu4785dN_ahQGLCPzNyr7f4i8DaZgJq2QNfEAadKjdL1N4XhlkzuMFZMX2X0-RCOI_z1vzc5RFMGIe7CAXw7lJqHZw5nlyodAkssADb-0obxsyzubFHcCM-5Kt0Zfm8W7ao0HE6xyQsaV264sX_gMQYPnzPGzAMMk1&t=636618914162471727

     

来源是System.Web

     

这是一个无效的网络资源请求。          在System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)          在System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()          在System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep步骤)          在System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)

我们已将服务器从 Windows Server 2012 R2 升级到 Windows Server 2016

我试过了:

  1. 将.Net Framework升级到最新的 4.7.2
  2. 按照规定here
  3. 应用安全补丁
  4. 确保它不是here所述的爬行机器人(例外情况是 有时甚至在通过我们的IP浏览页面时被抛出)
  5. This回答,#1完成,#2无关紧要,因为它也来自我们的IP,#3我们没有经营任何农场。
  6. 问题是我们在localhost上看不到这些例外,并且不知道如何在服务器上调试它的原因。 任何想法都会非常感激。

1 个答案:

答案 0 :(得分:0)

这是评论而不是答案。但我刚刚注册并且没有足够的声誉来发表评论。道歉。

发生对WebResource.axd的这些无效请求是因为URL中的所有加密垃圾都没有解密到服务器上有意义的任何内容。这可能有几个原因:

  1. 客户端/浏览器在最近的服务器修补程序更改加密/解密在服务器端的工作方式之前缓存了旧链接 - 例如您的某个链接引用的MS10-070修补程序。我不希望这些无效请求在您的日志中非常丰富,它们最终会消失。我不知道最近有什么影响ASP.Net的补丁,所以这可能不是你的问题。
  2. 恶意代理正在扫描您的网站是否容易受到攻击。同样,MS10-070修补的漏洞也是我想到的例子。如果是这种情况,您可能会看到多次尝试访问具有稍微不同的查询字符串的WebResource.axd,同时探测所需的信息。仅仅因为您修补了服务器,这并不一定意味着您不会看到恶意代理检查您的网站。
  3. 这可能是您客户的错误。 IE8有一个错误,几年前就破坏了这些WebResource字符串的加密部分。您的服务器日志是否跟踪客户端的用户代理字符串?这些错误的请求来自同一个客户端吗?浏览器的同一系列/版本?
  4. 此查询字符串可能有多种方式可以进行gunked,其中大部分都发生在它在有效响应中离开服务器并在后续请求中返回之间。以下是我要回答的一些问题,以帮助缩小问题范围。导致错误的网址实际上是无效的吗?或者这个完全相同的网址是否会在大部分时间内取得成功?您知道提供的页面包含指向此特定WebResource.axd的链接吗?如果您手动请求它,预期的查询字符串是什么样的?与糟糕的字符串有多相似?