【问题标题】:Finding 404 errors logged in database: '../:/0'查找数据库中记录的 404 错误:'../:/0'
【发布时间】:2013-05-26 13:37:08
【问题描述】:

我们的 Web 应用程序中发生的所有错误都记录到数据库中,我发现上个月发生了数百次 404 错误。用户试图访问的页面是“https://companysite.com/applicationsite/:/0

该应用程序是一个经典的 ASP 站点,其中包含一些通过 i-frames 包含的 ASP.NET MVC 3,尽管从 URL 判断这​​个错误似乎发生在经典的 ASP 端。

我已经在整个代码(经典和 .NET)中搜索了字符串“:/0”,但我什么也没看到。我不知道这个错误是如何发生的。它发生得太频繁了,太多的用户是故意的。

有谁知道为什么用户会收到这个错误?不幸的是,我只有数据库日志,所以我不是真正的用户如何重现此错误,也不知道用户是如何遇到它的。

【问题讨论】:

  • 没有任何代码很难说。在所有现代浏览器的开发者工具中使用像 Fiddler 这样的工具或网络嗅探器。浏览您的站点并分析您看到 404 的页面。另一种方法是在您的服务器上捕获该请求的请求标头。此请求的 UserAgent 和 Referrer 是什么?
  • 您是否尝试过打开 IIS 登录并进行跟踪?

标签: asp.net-mvc asp-classic http-status-code-404


【解决方案1】:

我怀疑有人(在您的网站之外)访问了该网址,但该网址并不存在。

可能只是蜘蛛已将该 URL 编入索引并试图抓取它。或者,这可能是某个存在漏洞的应用程序的路径,并且有人正在测试您是否正在运行该应用程序。

尝试记录请求来自的 IP 地址以及用户代理。如果是网络爬虫,应该可以在User-Agent中看到。

您也可以阻止该 IP 地址访问您的网站。

【讨论】:

  • 问题是,根据错误日志,这些人在收到错误时已经成功登录并进行了身份验证。
  • 是的,这很可能是黑客攻击试图查看页面上的源代码。请参阅here,它的解释很好。 (值得添加到您的答案中)@user1287523 仅供参考。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-29
  • 1970-01-01
  • 2021-04-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-19
  • 1970-01-01
相关资源
最近更新 更多