成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Host頭攻擊技術解析及防御

譯文
安全 應用安全 黑客攻防
通過本文的閱讀,你將了解到什么是Host頭攻擊,如何抵御該攻擊,以及此類攻擊所揭示出的何種漏洞。

【51CTO.com快譯】一般而言,幾個網站以共享的方式宿駐在同一臺web服務器之上,或者幾個web應用程序共享同一個IP地址,這都是業界一些非常通用的做法。當然,這也就是host頭(host header或稱主機頭)的存在原因。host頭指定了應該由哪個網站或是web應用程序來處理一個傳入的HTTP請求。web服務器使用該頭部的值來將請求分派到指定的網站或web應用程序之上。宿駐在同一IP地址上的每個web應用程序通常被稱為虛擬主機。那么針對host頭的攻擊是由什么所組成的呢?

[[191219]]

我們來看看如果指定的是一個無效的host頭會發生什么?大多數web服務器被配置為將無法識別的host頭傳送到列表中的第一臺虛擬主機之上。因此,這使得把攜帶有任意host頭的請求發送到第一臺虛擬主機上是完全可能的。

另一種傳送任意host頭的方法是使用X-Forwarded-Host頭。在某些配置中,這個頭會被主機頭的值所重寫。因此很可能會產生如下的請求。

GET / HTTP/1.1 Host: www.example.com X-Forwarded-Host: www.attacker.com

許多web應用程序都依賴于HTTP的host頭來解讀出“他們在何處”。可不幸的是,許多應用程序開發人員沒有意識到HTTP的host頭是由用戶所控制的。正如你可能已經知道的那樣,在應用程序的安全理念中,用戶的輸入應該總是被認為不安全的。因此,在未被正確地得到事先驗證之前,請永遠不要去信任它們。

雖然在PHP web應用程序中,對于host頭的使用是非常普遍的;但是,這實際上并非是PHP web應用程序所獨有問題。下面示例中的PHP腳本是一個典型的、危險的host頭的用例。

攻擊者通過操縱host頭,可以操控上面的代碼來產生下面這種HTML類型的輸出。

  1. <script src="http://attacker.com/script.js"> 

一般有兩種主要的host頭攻擊的方法:包括使網頁緩存“帶毒”,和利用替代渠道來對敏感的操作進行濫用,例如進行密碼重置。

網頁緩存的中毒

網頁緩存的中毒是指攻擊者使用該技術來操控網頁緩存,并向任何請求頁面的人提供帶毒的內容。

對于這種情況的發生,攻擊者需要使一臺緩存代理中毒,而該緩存可以運作在網站本身、或是下游供應商、內容分發網絡(CDNs)、連鎖合作商或是其他客戶機和服務器之間的緩存機制中。該緩存隨后將帶毒的內容提供給任何請求它的人,而受害者面對這些所提供的惡意內容,無論如何都是沒有控制權的。

下面的例子就是攻擊者如何通過網頁緩存中毒的方式,從而進行host頭攻擊的。

  1. $ telnet www.example.com 80 
  2. Trying x.x.x.x... 
  3. Connected to www.example.com. 
  4. Escape character is '^]'. 
  5. GET /index.html HTTP/1.1 
  6. Host: attacker.com 
  7. HTTP/1.1 200 OK 
  8. ... 
  9. <html> 
  10. <head> 
  11. <title>Example</title> 
  12. <script src="http://attacker.com/script.js"> 

密碼重置的中毒

一種普遍的用來實現密碼重置功能的方法是:生成一個密鑰令牌,并且發送一封包含著該令牌的超級鏈接的電子郵件。如果一個攻擊者請求一個帶有attacker-controlled的host頭類型的密碼重置,會發生什么呢?

如果在生成重置鏈接時,該web應用程序使用到這個host頭的值,攻擊者就可以在密碼重置鏈接中“投毒”并發送到受害者那里。而如果受害者點開了郵件中“帶毒”的重置鏈接,那么攻擊者將能獲得密碼重置的令牌,進而可以重置受害者的密碼了。

檢測密碼重置中毒的漏洞

我們將使用一個舊版本的Piwik(一個開源的web分析平臺)作為此類漏洞的實例,因為它比較容易受到“帶毒”的host頭攻擊類型的密碼重置。

為了檢測到密碼重置的自動中毒,我們需要依靠一個中介服務,因為對于“帶毒”的host頭攻擊類型的密碼重置的檢測,需要一個帶外的且延時的向量。為了實現此目的,Acunetix(網絡漏洞掃描軟件)在自動掃描過程中會使用AcuMonitor作為其中介服務。

而在掃描過程中,Acunetix將查找密碼重置頁面并注入一個自定義的host頭,用以指向一個AcuMonitor的域。如果漏洞存在的話,那么有問題的應用程序(如本例中舊版本的Piwik)將使用該值來生成密碼重置的鏈接,并以電子郵件的形式發送給相關的用戶。如下所示:

在上面的圖片中,請認真查看其重置鏈接的位置,它指向的是AcuMonitor的域,而不是web應用程序的域。

如果“受害者”(在這個例子中,因為它采取的是自動掃描,受害者很可能是安全團隊中的一員,他接收電子郵件后開始進行掃描),點擊該鏈接,AcuMonitor將捕獲該請求,并會發回一個通知給Acunetix,指示它應該生成一個“帶毒”的host頭攻擊類型的密碼重置的警報。

減緩

減緩和應對host頭的攻擊,其實非常簡單——就是不要信任host頭。然而在某些情況下,卻是說起來容易做起來難(特別是涉及到遺留下來的舊代碼的時候)。如果你必須使用host頭作為一種識別web服務器位置的機制的話,我強烈建議你使用包含有各個被允許的主機名的白名單來進行應對。

原文標題:What Is a Host Header Attack?,作者: Ian Muscat 

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

責任編輯:藍雨淚 來源: 51CTO.com
相關推薦

2010-09-30 15:20:01

2015-11-09 15:58:03

2023-03-06 08:00:00

2016-09-30 15:59:41

2017-06-08 19:19:10

2015-05-13 10:36:43

2024-06-28 08:00:00

端口掃描安全

2013-11-04 09:15:58

2013-05-22 18:06:41

2011-04-06 13:02:31

2009-01-16 10:40:50

2012-11-30 14:54:48

2014-05-29 09:34:25

2009-07-12 16:50:08

2013-12-11 09:51:33

2010-09-10 10:57:33

2014-09-18 09:42:15

2016-01-28 14:21:16

2013-03-14 21:13:20

2018-12-14 14:59:54

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲成人精品一区 | www.久| 91精品国产综合久久久密闭 | 天天操夜夜艹 | 欧美激情在线播放 | 91久久精品日日躁夜夜躁欧美 | 色欧美片视频在线观看 | 日韩欧美亚洲 | 91精品国产自产在线老师啪 | 免费看黄色视屏 | 欧产日产国产精品视频 | 欧美专区在线 | 日韩中文字幕一区 | 一区二区三区欧美 | 久久精品久久久久久 | 一区二区三区欧美大片 | 日韩伦理一区二区 | 91国在线观看 | 91毛片在线观看 | 成人小视频在线观看 | 欧洲av在线 | 欧美色综合一区二区三区 | 一级看片免费视频囗交动图 | 精品乱码久久久久 | 国产在线观看一区二区 | 国产视频一区二区 | 99久久精品国产麻豆演员表 | 美女网站视频免费黄 | 91免费入口 | 成人高清在线视频 | 精品视频一区二区 | 美女福利网站 | 午夜精品一区二区三区在线视 | 中文欧美日韩 | 午夜影院| 爱爱视频在线观看 | 亚洲视频三区 | 欧美做暖暖视频 | 国产精品成人一区二区三区 | 免费黄色片在线观看 | 天天在线操|