安全機構Cylance的下屬小組SPEAR發現了一種基于18年前的SMB(Windows Server Message Block, SMB)漏洞上的新攻擊向量。它被稱作SMB重定向,主要影響微軟、蘋果、Adobe、賽門鐵克、Box、甲骨文公司的產品。
在1997年,研究者發現了IE瀏覽器的一個bug,該漏洞允許攻擊者利用SMB協議中的特性盜取Windows憑據。SMB是Windows的網絡核心組件,在所有版本的Windows系統上都是默認開啟的。
微軟在漏洞被公布后提供了新的工作組和難以實現的組策略(GPO),但從未從根本上解決該問題。現在的情況是,除非改變Windows的默認設置,否則系統仍然容易受到該類型的攻擊。
SMB攻擊的基本模式如下:誘騙受害者點擊鏈接,并使瀏覽器驗證遠程SMB服務器,例如file://x.x.x.x or \x.x.x.x,攻擊者得以從中獲得用戶的當前登錄憑據。盡管信息是Hash過的,但如果有足夠的時間,則可以恢復。基于GPU的破解過程通常只需要幾個小時。
SPEAR小組發現的新型SMB攻擊從原始概念上和老版本相同,但新型攻擊可以利用所有有漏洞的HTTP/HTTPS請求,不管這些網絡資源訪問請求是來自瀏覽器還是應用程序。
通過這種新型攻擊,攻擊者利用一臺Web服務器或其它中間人方式就可以迫使用戶在運行SMB的流氓服務器上驗證身份。舉例而言,在網絡上,攻擊者可以利用301或302狀態代碼,將瀏覽器重定向到頭地址為file://的資源上。
Rapid7公司的研究主管在評論加鹽Hash時表示,濫用網絡共享路徑(UNC)攔截和中繼Windows憑據信息這種攻擊方式已經眾所周知大概20年了。
他表示,這類技術通常由專業黑客(不管是官方還是罪犯)使用,以獲得登錄的初始權限,并在登錄后立即提權。微軟發布的一些修復措施讓這類攻擊稍微不那么容易實施了,但整體上來看,SMB漏洞是個整體問題,可能并不容易在短期內依靠小修小補解決。
漏洞在哪?
IE瀏覽器在將近20年的時間里不斷出現各種直接攻擊方面的漏洞,但也存在SMB重定向攻擊漏洞。.NET里的WebBrowser對象也存在該漏洞。
如果受害者沒有使用IE瀏覽器,進行攻擊可能會有些麻煩。攻擊者可以通過一些措施繞過該問題:從目標公司的網站上下載一份文件,保存為HTML,在里面加上重定向到SMB服務器的一行鏈接,將文件后綴從.HTML改成.DOC,然后用“文檔勘誤”或者“銷售調查”這類郵件名發送給公司員工。當用戶打開.DOC文件時,Word會識別出它的HTML屬性,并用IE來渲染它,這會觸發指向SMB服務器的對外連接。如果公司允許VPN接入,被竊取的登錄憑據可以用來直接訪問公司網絡。
URLMon.dll被微軟官方和開發者用于進行不同關于URL的操作,比如下載文件。它有四個函數可能會被用于1997年開始存在的直接攻擊以及最新型的SMB攻擊。另外還有一個函數會受到直接攻擊,但在通常情況下不會受SMB重定向攻擊影響。
如果應用程序通過這些URLMon的API進行請求,設備會自動發出對外SMB連接。這顯著增加了中間人攻擊的有效性,甚至是在用戶并沒有對設備進行主動操作的情況下。
研究人員通過在筆記本電腦上開啟HTTP追蹤進行了快速測試、重啟、登錄。在測試過程中進行了超過100次不同的HTTP請求,其中超過半數并未受到SSL保護,可以被進行中間人攻擊的黑客用于強制建立SMB連接。用戶只是在星巴克解鎖筆記本電腦就足夠觸發這種攻擊了,相對來說這比等待用戶使用IE瀏覽器或發出SMB對外連接要有效很多。
SPEAR小組同時發現,很多XML解析器都提供的XXE(XML External Entities)特性可被用于訪問遠程資源,這有可能會被SMB重定向攻擊所利用。
小組提供的報告也列舉了一系列可能被用于SMB重定向提權的攻擊向量,包括中間人攻擊、ARP緩存毒化、瀏覽器注入、聊天軟件提供的圖片預覽功能、惡意文檔、DNS緩存投毒。
研究人員建議,安全人員無法控制用戶的具體行為,比如打開鏈接或郵件,因此有必要控制網絡實體。
該攻擊方式的缺陷在于,依賴用戶的設備依次做出某些操作觸發SMB驗證,比如訪問共享文件、打印機,或者其它能夠觸發SMB連接的自動化行為。這對攻擊者而言很耗時間,因為通過中間人角色進行攻擊需要等待用戶恰好進行特定的分享連接操作,還需要一定的運氣。除非用戶打開IE瀏覽器或者直接建立SMB連接,這種類型的攻擊可能不會有什么收獲。
哪些應用軟件受到影響?
常用軟件:
Adobe Reader
Apple QuickTime
Apple Software Update (iTunes)
微軟官方應用:
mobile survival
Internet Explorer
Windows Media Player
Excel 2010
Microsoft Baseline Security Analyzer
殺毒軟件:
Symantec’s Norton Security Scan
AVG Free
BitDefender Free
Comodo Antivirus
安全軟件:
.NET Reflector
Maltego CE
團隊工具:
Box Sync
TeamViewer
開發者軟件:
Github for Windows
PyCharm
IntelliJ IDEA
PHP Storm
JDK 8u31’s installer
解決方法
SPEAR小組在描述該漏洞的一篇論文中提到,軟件調用的任何有風險函數都需要被替換成不支持跨協議重定向服務的函數,對SMB的訪問應當是直接的,程序本身需要對這類連接進行過濾。還應該阻止來自本地子網之外的所有SMB請求,這可以降低遠程入侵的威脅。
在對外防火墻中應該屏蔽TCP的139~445端口。如果用戶確實需要訪問外部SMB服務器,連接過程應該受到盡可能的監控。
該論文同樣建議使用強密碼,這可以阻礙破解過程。不過,使用基于GPU的密碼破解還是會明顯降低破解NTLMv2類型的Hash所用的時間。因此,論文中也建議管理員定期升級密碼策略,以對應提升破解密碼的硬件成本。
oclHashcat網站列出了破解NetNTLMv2的基準方案:使用8個并列AMD R9 290X GPU,每個GPU的成本大約是300美元到799美元,也就是總價格3000美元。裝備這套設備,攻擊者每秒可以進行65億次猜測。
這意味著對于簡單形式的暴力破解而言,攻擊者只需要9.5個小時就可以遍歷8位密碼的全部可能性,包括大小寫字母和數字。考慮到密碼策略通常每季度更新一次,攻擊者將有大量的時間來使用破解得到的密碼。
SMB重定向攻擊并不是一個驚天動地的漏洞,但它確實展示了一種通過中間人對被動客戶端發起攻擊的方式。從表面上看,這種攻擊并不是什么全新的東西,但Windows筆記本和平板電腦的大規模普及增大了用戶連接到開放式WiFi網絡的可能性,加大了這種攻擊的威脅。為了應對該漏洞,研究人員建議阻止所有通常設備發起外部SMB認證。
去年,Rapid7、Palo Alto和微軟聯合發布了保護服務賬戶的指導措施,Rapid7公司的負責人表示,這份指導文件中的很多內容也可以用于應對該漏洞。
原文地址:http://www.aqniu.com/threat-alert/7320.html