改變您的HTTP服務器的缺省banner

引自:https://www.cnblogs.com/felixnet/p/6344613.html測試能夠用,但僅僅是修改的應用程序,http://localhost不起做用html

https://www.cnblogs.com/kowloon/p/9071872.htmlweb

https://www.cnblogs.com/crazyair/p/4323173.html  測試能夠用,可是對應用程序形成了影響,須要修改配置文件安全

https://blog.csdn.net/qq_25600055/article/details/78188169服務器

(如下方法僅針對 IIS Asp.net)測試

 

服務器掃描發現漏洞,其中一個是:網站


 

可經過HTTP獲取遠端WWW服務信息 [Microsoft-IIS/8.5]spa

漏洞描述 本插件檢測遠端HTTP Server信息。這可能使得攻擊者瞭解遠程系統類型以便進行下一步的攻擊。
解決方案 NSFOCUS建議您採起如下措施以下降威脅.net


 

打開網頁,審查代碼,咱們發現這幾個標頭明顯標明咱們的服務器和平臺信息,存在安全風險,必需要隱藏插件

 

解決方法:code

新建一個類庫項目 CustomHttpModules,添加一個自定義 HttpModule

複製代碼
namespace CustomHttpModules
{
    public class HeaderFilterHttpModule : IHttpModule
    {
        public void Init(HttpApplication context)
        {
            context.PreSendRequestHeaders += OnPreSendRequestHeaders;
        }

        public void Dispose()
        { }

        void OnPreSendRequestHeaders(object sender, System.EventArgs e)
        {
            HttpContext.Current.Response.Headers.Remove("Server");
            HttpContext.Current.Response.Headers.Remove("X-AspNet-Version");
            HttpContext.Current.Response.Headers.Remove("X-AspNetMvc-Version");
            HttpContext.Current.Response.Headers.Remove("X-Frame-Options");
        } 
    }
}
複製代碼

編譯後,拷貝DLL到網站BIN目錄,修改網站的 Web.config

複製代碼
<system.webServer>
    <modules>
      <add name="HeaderFilterModule" type="CustomHttpModules.HeaderFilterHttpModule,CustomHttpModules"/>
    </modules>
    <httpProtocol>
      <customHeaders>
        <remove name="X-Powered-By"/>
      </customHeaders>
    </httpProtocol>
  </system.webServer>
複製代碼

再次運行網站,審查代碼,幾個標頭全沒了,搞定!

 

這種方法是最安全方便的,只要拷貝一個DLL和修改一處配置,不須要設置IIS(好比虛擬主機),也不須要修改和編譯網站代碼。

相關文章
相關標籤/搜索