Urls/lpt1和/ com1导致IIS呈现自己的死亡屏幕

isN*_*247 2 iis iis-7.5

当运行最近的SkipFish扫描时 - 我们发现如果您调用/lptX/comX(其中X是数字1-9),IIS(7.5)将返回以下内容.

Server Error in '/' Application.

The resource cannot be found.

Description: HTTP 404. The resource you ...[and so on]...
Run Code Online (Sandbox Code Playgroud)

这是事实,我们在站点级别和Web服务器配置级别上有自定义[漂亮]错误.

如果你有一个,请立即在你的IIS机器上试一下 - http:// localhost/lpt1应该这样做.

我猜这是LPT打印机和通过COM端口连接的鼠标的"好日子"的遗留物.但是看到我无法配置的IIS区域有点令人不安.

是否可以强制IIS为这些"特殊"URL提供自定义404页面?

Kev*_*Kev 6

直到ASP.NET 4.0,不可能使用某些保留的文件名,例如con,lpt,aux等在您的网址:

僵尸操作系统和ASP.NET MVC

这是ASP.NET的限制,而不是MVC.

然而,好消息是它现在可能:

将Con(COM1,LPT1,NUL等)放回您的URL

如果您不使用ASP.NET 4.0,您应该能够使用IIS7自己的<httpErrors>配置设置捕获这些404 .