gpt4 book ai didi

asp.net - RequestFiltering 不适用于 MS-DOS 设备名称路径

转载 作者:行者123 更新时间:2023-12-01 11:29:00 25 4
gpt4 key购买 nike

我试图安抚我们最近发生的 PCI 扫描失败,其中指出:

Microsoft ASP.NET MS-DOS Device Name DoS

Synopsis :A framework used by the remote web server has a denial of service vulnerability.Impact:The web server running on the remote host appears to be using MicrosoftASP.NET, and may be affected by a denial of service vulnerability. Requesting a URLcontaining an MS-DOS device name can cause the web server to becometemporarily unresponsive.

简而言之,我们在我们的应用程序上访问一个 URL,例如 /AUX/.aspx,我们收到 500 错误。

我正在使用 RequestFiltering 过滤掉这些请求,并返回 404,而不是服务器尝试处理请求。

我的 web.config 的摘录如下:

<system.webServer>
<security>
<requestFiltering>
<denyUrlSequences>
<add sequence="/AUX/.aspx" />
</denyUrlSequences>
</requestFiltering>
</security>
</system.webServer>

但是,这不起作用,它仍然返回 500。

我希望它返回 404。

如果我将以下包罗万象的 url 添加到 denyUrlSequences,那么整个网站都会产生预期的 404。

<add sequence="/" />

值得一提的是,该应用程序是在 IIS 7.5 (Windows 2008 R2) 上运行的 MVC 应用程序

最佳答案

只好解决这个问题。

我的解决方案是禁用 .Net 错误页面并启用 IIS 错误页面。

当您将自定义错误处理从较高的 .Net 级别移动到较低的 IIS 级别时,HTTP 响应代码从 500 更改为 404。

PCI 测试通过:-)

关于asp.net - RequestFiltering 不适用于 MS-DOS 设备名称路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34809485/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com