2
  1. 我希望能够隐藏我的 DotNet 2.0 网站中存在的文件夹,该网站通过 IIS 7.5 托管,其中包含必须继续可访问的文件。例如,我希望一个人的网络浏览器能够检索文件 domain.com/css/style.css (这是呈现页面所必需的),但如果该人试图访问 URL domain.com/css/ 或domain.com/css 我希望他们收到 404 错误。(不是 403 错误)

  2. 默认情况下,IIS 7.5 会给出一个 403 错误,这仍然会让攻击者知道该文件夹的存在。我意识到攻击者可以通过在浏览器中访问该站点并看到文件从“css”文件夹中提取出来,从而轻松发现“css”文件夹的存在。也就是说,这是我必须遵守的项目要求。

  3. 在 IIS6 中,我曾经能够为文件夹设置隐藏属性,这会给我想要的 404 行为,但在 IIS7.5 中不再是这种情况。(如果我尝试这样做,IIS 7.5 会给出 500 错误)IIS 7.5 是该项目的另一个要求。此外,在 IIS6 中,我希望能够创建一个通配符映射,该映射将导致所有请求通过 DotNet 路由,然后允许我创建一个 404,但同样,这似乎不适用于 IIS7.5。

  4. 我已经尝试在 web.config (节点)中创建处理程序,该处理程序适用于我的登台系统,但不适用于我的生产系统。此外,这种方法似乎有点矫枉过正,因为我必须创建 ac# 处理程序并在 web.config 中为我要隐藏的每个文件夹都有一个处理程序条目。我想要一个更简单的解决方案,但该解决方案似乎不适用于我的生产系统。

  5. 理想情况下,对不包含尾部正斜杠的文件夹的请求不应导致 301 重定向,但也应导致 404。

4

1 回答 1

0

您始终可以将处理程序/ASPX 页面作为目录的默认页面,并让该处理程序返回 404 错误代码。

于 2012-10-17T22:48:21.587 回答