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


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

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

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]

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


 

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

 

解決方法:

新建一個類庫項目 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(比如虛擬主機),也不需要修改和編譯網站代碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM