asp.net-mvc-2 - 如何防止在 asp.net mvc 应用程序中从浏览器访问脚本、内容、aspnet_client 等隐藏目录?

标签 asp.net-mvc-2

我想阻止用户在 asp.net mvc 2 应用程序中直接从浏览器访问隐藏目录,如脚本、内容、aspnet_client。目前,每当我尝试访问上述隐藏目录时,它都会返回以下错误消息:

403 - 禁止访问:访问被拒绝。 您无权使用您提供的凭据查看此目录或页面。

每当有人试图访问上述隐藏目录时,我想显示“404 Not Found”错误页面。

谁能帮我解决这个问题?

最佳答案

当攻击者尝试访问具有一些随机名称的文件时,如果给定的文件名不存在,则会给出类似“404 文件不存在”的错误。如果文件名存在但无权访问文件,则它将返回类似“403 Forbidden”错误的错误。所以攻击者知道文件和文件目录。

所以应用程序应该能够处理这个问题

解决方法是将返回响应以不同的方式显示,建议显示为404错误。

要在 IIS 中执行此操作,我们可以在 web.config 文件中添加 customerError 配置。

有关问题和解决方案的详细信息,请查看以下文章。

https://www.c-sharpcorner.com/UploadFile/092589/custom-error-page-in-Asp-Net/

关于asp.net-mvc-2 - 如何防止在 asp.net mvc 应用程序中从浏览器访问脚本、内容、aspnet_client 等隐藏目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25895078/

相关文章:

c# - 如何在 ASP.NET MVC 和 C# 中从数据库中选择下拉列表的值?

asp.net-mvc - MVC 3 ViewModel 模式问题(使用 RAZOR)

ASP.Net MVC 检查 asp net 成员资格中用户的角色

c# - 模拟 MVC 应用程序的 HttpRequest 和 HttpResponse

c# - 带有 PartialView 的 ASP.NET MVC 2 View - PartialView 打开新页面

c# - 使用 HTML 帮助程序启动表单的首选方法是什么?

c# - 基于其他领域的验证?

wcf - MVC2 路由与 WCF ServiceRoute : Html. ActionLink 呈现不正确的链接!

asp.net - 如果操作不存在,则 ASP MVC 中的后备路由

jquery - 在 jsTree 中选择项目时访问 ASP.NET MVC 服务器端数据