html 响应asp.net,(C#)IIS响应头敏感信息(Server/X-AspNet-Version等)过滤

如下图所示,如果不经过处理,相应头会出现如下敏感信息,影响服务安全。

那么如何将这些信息隐藏呢?

第一种方案:

添加以下代码到文件global.asax.cs

protected void Application_PreSendRequestHeaders()

{

Response.Headers.Remove("Server");

Response.Headers.Remove("X-AspNet-Version");

Response.Headers.Remove("X-AspNetMvc-Version");

}

第二种方案:可以通过过滤器进行拦截处理。方式与第一种方案基本无一。第三种方案:

1.借助UrlScan 移除Header中的Server,附带urlscan文件

安装工具UrlScan,默认一直点就可以了

修改URLCan.ini(位置:%WINDIR%\System32\Inetsrv\URLscan)中的配置"RemoveServerHeader=1",看字面意思就知道是一出Server头信息咯。

重启iis服务。

2.移除 X-AspNet-Version

在web.config中的中添加enableVersionHeader="false"

3.移除X-AspNetMvc-Version,

global.asax.cs中的方法 Application_Start()添加如下代码:

protected void Application_Start()

{

MvcHandler.DisableMvcResponseHeader = true;

}

4.移除X-Powered-By

这个在IIS服务器上配置即可:

如下图所示:

点击删除即可,简单吧。

最后,还是建议使用第一种或第二种方案。毕竟UrlScan除了移除Server以外,还会拦截一些有注入风险的请求,要是你的项目中有些请求不是很安全,有可能会被拦截处理哦。

当然,站点的安全性,还得通过请求加密,加签以及添加SSL证书等进行保障。

posted on 2022-07-15 14:15  心所欲  阅读(256)  评论(0编辑  收藏  举报

导航