【问题标题】:Redirect 403 forbidden error message to 404 in IIS将 403 禁止错误消息重定向到 IIS 中的 404
【发布时间】:2020-05-30 03:16:12
【问题描述】:

如果我们通过在末尾附加文本“/../../../../”来发布 URL。 IIS 在响应标头中返回“403 - Forbidden”错误。

有什么方法可以将 IIS 配置为返回“404 - Not Found”错误而不是“403”?

这是一个 asp.net 网络应用程序。

对我们网站的安全扫描发现返回“403”可能有助于恶意人员映射我们的网站;以前没想到,但我不得不承认这是有道理的。

【问题讨论】:

  • 这个问题很模糊,你能解释一下你想要达到的目标吗?您在 IIS 上运行什么,您尝试过什么,您希望看到什么?提供更多信息将帮助其他人解决您的问题。

标签: asp.net iis web-config


【解决方案1】:

由于安全扫描,我也不得不做同样的事情。 这是我的解决方案,在您的 web.config 文件上执行此操作。就我而言,我有错误代码的自定义 html 页面,我认为这是一个好习惯。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <directoryBrowse enabled="false" />
        <httpErrors errorMode="Custom">
            <remove statusCode="404" />
            <error statusCode="404" path="/physical_path_to_your_custom_404_page_relative_to_the_web.config_file/404.html" responseMode="Redirect" />
            <error statusCode="403" subStatusCode="14" path="/physical_path_to_your_custom_404_page_relative_to_the_web.config_file/404.html" responseMode="Redirect" />
        </httpErrors>
    </system.webServer>
</configuration>

这样,真正的 404 错误和 403.14(.14 是到达真实路径但浏览被拒绝的特定代码)错误都将重定向到 404 错误页面。将不会看到 403,因此对于最终用户来说,两者都是 404 错误。

编辑:您可能需要安装“http 错误”功能才能使其正常工作。

【讨论】:

    【解决方案2】:

    您是否发布了类似“http://mydomain/../../../../”的请求并收到 403 错误?

    如果是这样,您可能会注意到它的响应服务器是服务器:Microsoft-HTTPAPI/2.0,而不是服务器:Microsoft-IIS/7.5。这意味着请求在 http.sys 级别被阻止。所以恐怕我们不能在 IIS 中做任何事情。

    只有在 IIS 模块返回 403 错误后执行 URL 重写时,我们才能用 URL 重写将 403 重写为 404。

    编辑:

    这条规则对我来说很好。

    【讨论】:

    • 是的,我也面临同样的问题。我尝试过使用 URL 重写但不工作。您能否提供任何解决方案或是否有任何选项可以隐藏服务器:Microsoft-HTTPAPI/2.0 信息。
    • @VijayKumar 很抱歉无法在 HTTP.sys 级别重写响应状态。如果要删除它,请添加一个 DWORD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\DisableServerHeader=2。对于 IIS,您可以尝试 URL 重写 stackoverflow.com/questions/1178831/…
    • 我试过下面的重写规则仍然不起作用。 code
    • code
    • @VijayKumar 您是否尝试了带有 403 错误的出站规则?如果是这样,URL 重写将不起作用。您需要在可以到达 IIS 管道的请求上进行尝试。失败的请求跟踪可以帮助您缩小重写规则不起作用的原因。docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多