Web應用安全之Response Header里的敏感信息


Web應用安全之Response Header

/玄魂

                             目錄

Web應用安全之Response Header. 1

前言... 1

1.1  那些敏感的header. 2

1.2 刪除敏感的header. 2

1.2.1 刪除server字段... 2

1.2.2 刪除X-Powered-By字段... 3

1.2.3 刪除 X-AspNet-Version字段... 4

1.2.4 刪除X-AspNetMvc-Version. 5

 

 

前言

Kali Linuxhttp://www.xuanhun521.com/Blog/Tag/kali%20linux)系列文章中,我提到過對目標站點的信息搜集技巧中最基本的就是Banner抓取。

通過對Web服務器的Banner抓取(分析response header),我們能得到關於Web服務器、應用框架、編程語言等信息。

下圖是某網站的http 響應頭。

 

1.1  那些敏感的header

在上圖中圈出的部分,我們關注以下幾個字段(針對asp.net應用常見的,並非全部):

Serverweb服務器的版本。通常我們會看到 “Microsoft-IIS/7.5”, “nginx/1.0.11” “Apache”這樣的字段。

X-Powered-Byweb應用框架信息。常見例子,“ASP.NET”, “PHP/5.2.17” “UrlRewriter.NET 2.0.0”

X-AspNet-Version: asp.net版本,只有asp.net站點有這樣的header

X-AspNetMvc-Version:asp.net mvc 版本使用asp.net mvc框架會有此字段。

通常情況下這些信息並不會直接帶來危險,但是如果某一天IIS的某個版本爆了一個0day漏洞,那么攻擊者會根據響應頭在很短的時間內找到大批的IIS站點進行攻擊。另外攻擊者會根據搜集到的信息結合已有漏洞進行推論和嘗試,正確的信息會加快攻擊者找到漏洞的步伐。

1.2 刪除敏感的header

接下來以我本地的asp.net mvcz站點為例,講解如何刪除響應頭中的敏感字段。

1.2.1 刪除server字段

這里需要用到IIS擴展工具Url Scan,關於Url Scan的安裝和配置項說明見之前的博文《URL Scan簡介》。

打開URL Scan的配置文件( C:\Windows\System32\inetsrv\urlscan\UrlScan.ini),找到“RemoveServerHeader”,將值設置為1。配置之前:

配置之后:

1.2.2 刪除X-Powered-By字段

打開IIS管理器,切換到站點視圖,打開“HTTP響應標頭”。

在這里刪除X-Powered-By字段。

1.2.3 刪除 X-AspNet-Version字段

打開站點下的web.config,做如下配置:

<system.web>

  <httpRuntime enableVersionHeader="false" />

</system.web>

1.2.4 刪除X-AspNetMvc-Version

打開Global.asax文件,在Application_Start函數中添加如下代碼:

MvcHandler.DisableMvcResponseHeader = true;

最后的結果:

歡迎訪問玄魂的博客

ps:對此文章或者安全、安全編程感興趣的讀者,可以加qq群:Hacking:303242737;Hacking-2群:147098303Hacking-3群:31371755hacking-4:201891680;Hacking-5群:316885176


免責聲明!

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



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