殭屍復活:「重新導向到SMB」漏洞

一個已經有18年的「重新導向到SMB( Redirect to SMB )」漏洞透過新攻擊手法而復活。此漏洞可以被用來將受害者重新導到一個惡意伺服器訊息塊(Server Message Block – SMB) 伺服器,除了存取網站外,無需使用者進行任何動作。

如果SMB安全策略不夠安全,SMB客戶端會嘗試發送身份驗證請求給惡意伺服器,並透過網路發送認證憑據。即使SMB認證憑據有經過加密保護,今天的暴力破解法已經可以在許多情況下破解認證憑據。

這種舊漏洞的新攻擊方式現在使用位置標頭為「location: File://192.168.0.1/share/doc.」。file://協定標頭可以在HTTP內透過標籤使用,像是<img><iframe>

重要的是要考慮到此漏洞是新手法用上已經存在很久的舊漏洞。根據我們的研究,這個漏洞會影響Internet Explorer;而使用Windows API函數(透過URLMON.DLL)的應用程式也有此漏洞。

這種攻擊現在可以無需任何使用者互動就進行。關於此漏洞重要的是要了解什麼是「HTTP重新導向」。

 

HTTP重新導向

重新導向是一種確保使用者始終得到他們所需要網頁的方法。它指的是設定網頁伺服器發出重新導向訊息給客戶端(如HTTP 302 Found回應),指示客戶端重新提交請求給新位置的過程。使用者可以被重新導向到另一個檔案、目錄或網站。

重新導向在下列情況會有所幫助:

  • 網站位置已經改變,使用者應該重新導向到新網站。
  • 網站正在建設中,部分網頁仍然無法使用。
  • 內容不在網頁伺服器上。
  • 虛擬目錄名稱已經改變,但使用者仍然可以透過舊網址存取檔案。

重新導向在HTTP協定中透過Location標頭來實作。這通常會結合一些HTTP錯誤訊息使用,像是301、302和307,但也有可能透過其他方式。

可能的攻擊情境:

如果攻擊者可以誘使使用者點入連結進入攻擊者控制下的惡意網站,就可以利用此漏洞攻擊。一種可能方式是使用HTTP回應內的Location標頭來進行HTTP重新導向。另一種可能方式 – 已經出現有一段時日了 – 誘騙使用者點入攻擊者網站內的連結。

執行攻擊手法

重新導向到SMB攻擊是由Aaron Spangler所發現的一種很古老的攻擊方式,他發現使用者透過file://handler被重新導向。這可以被用在圖片、iframe或攻擊者所控制的任何其他網路資源。

HTTP Location標頭可以用來將使用者重新導向。這種攻擊可以如下面截圖般進行:

 

 

圖1、攻擊者重新導向​​受害者到惡意檔案

 

受害者在Windows上的瀏覽器在接收帶有Location標頭指到以file://開頭網址的HTTP重新導向回應時,會自動發出SMB請求給指定伺服器。根據推測,這應該是攻擊者控制下的SMB伺服器。沒有SMB安全策略的客戶端都會受到此種SMB重新導向攻擊手法的影響。

 

這種攻擊也可以和其他SMB漏洞一起使用,去侵入受害者電腦以進入內部網路。

 

 

圖2、攻擊者重新導向​​受害者到惡意檔案

 

在上圖中我們可以看到SMB重新導向發生在HTTP 307回應後。

 

結論

 

這是一個很舊的漏洞,但是帶有新的攻擊手法。跟舊的(已知)手法相比,新手法很容易進行,因為它不需要使用者互動。中間人攻擊也可以輕易地攻擊這個漏洞。微軟尚未發布此漏洞的修補程式,雖然他們在2009年指出適當的解決辦法是封鎖對外的139和445端口流量,這將防止建立任何對外的SMB連線。

 

趨勢科技的Deep Security可以透過以下規則保護使用者免於此類攻擊:

 

  • 1006631 – Identified File Protocol Handler In HTTP Location Header

 

@原文出處:Resurrection of the Living Dead: The “Redirect to SMB” Vulnerability

 

《提醒》在粉絲頁橫幅,讚的右邊三角形選擇接收通知新增到興趣主題清單,重要通知與好康不漏接