新型TLS攻擊可對安全站點發起跨站指令碼攻擊,至少影響140萬臺web伺服器

zktq2021發表於2021-06-18

網路安全研究人員披露一種新型網路攻擊,這種攻擊利用傳輸層安全(TLS)伺服器中的錯誤配置將HTTPS流量從受害者的Web瀏覽器重定向到位於另一個IP地址的不同TLS服務端點,從而竊取敏感資訊,而靜態程式碼檢測有助防範新型TLS 攻擊。

研究人員將這種攻擊成為“ALPACA”(Analyzing and mitigating Cracks in tls Authentication)即“應用層協議混淆-分析和減輕tls身份驗證中的裂縫”的縮寫。

攻擊者可以將流量從要給子域重定向到另一個子域,從而產生有效的TLS會話,這打破了TLS的身份驗證,可能會出現跨站指令碼攻擊,其中一個協議服務的行為可能會在應用層危及另一個協議。

TLS作用

TLS是一種加密協議,用於在兩個通訊應用程式之間提供保密性和資料完整性。支援多種應用層協議,如HTTPS、SMTP、IMAP、POP3 和 FTP以保護網路通訊安全,該協議由兩層組成: TLS 記錄協議(TLS Record)和 TLS 握手協議(TLS Handshake)。

TLS記錄協議提供的連線安全性有2個基本特性:

1、私有,對稱加密用以資料加密(DES等)。對稱加密所產生的金鑰對每個連線都是唯一的,且此金鑰基於另一個協議(如握手協議)協商。

2、可靠,資訊傳輸包括使用金鑰的MAC進行資訊完整性檢查。安全雜湊功能(SHA、MD5 等)用於MAC計算。記錄協議在沒有MAC的情況下也能操作,但一般只能用於這種模式,即有另一個協議正在使用記錄協議傳輸協商安全引數。

ALPACA攻擊如何實現?

網路安全研究人員稱,ALPACA攻擊之所以可以實現,因為TLS沒有將TCP連線繫結到預期的應用層協議上。因此,TLS未能保護TCP連線的完整性,可能被濫用為將預期的TLS服務端點和協議的TLS通訊重定向到另一個替代的TLS服務端點和協議。

由於客戶端使用特定協議開啟與目標伺服器(如HTTPS)的安全通道,而替代伺服器使用不同的應用層協議(FTP)並在單獨的TCP端點上執行,因此發生混淆從而導致所謂的跨站指令碼攻擊。

目前,發現至少3中假設的跨站指令碼攻擊場景,攻擊者可以利用這些場景來繞過TLS保護,並攻擊FTP和電子郵件伺服器,但攻擊的前提是攻擊者能夠在TCP/IP層攔截和轉移受害者的流量。

簡單來說,攻擊採取中間人(MitM)方案的形式,其中攻擊者誘使受害者開啟他們控制的網站以發出帶有特製FTP負載的跨域HTTPS請求,然後將此請求重定向到使用與網站相容的證照的FTP伺服器,最終形成有效TLS會話。

因此,TLS服務中的錯誤配置可以被利用來將身份驗證cookie或其他私有資料洩露到FTP伺服器(上傳攻擊),在儲存的跨站指令碼攻擊中從FTP伺服器檢索惡意JavaScript負載,甚至在受害者網站的上下文中執行反射跨站指令碼攻擊。

新型網路攻擊影響

預計所有證照與其他TLS服務相容的TLS伺服器都將受到影響。在實驗設定中,研究人員發現至少有140萬臺web伺服器容易受到跨協議攻擊,其中114197臺伺服器被認為容易受到攻擊,它們使用可利用的SMTP、IMAP、POP3或FTP以及可信和相容的證照。

關於跨站指令碼攻擊

除了以上攻擊型別,常見跨站指令碼攻擊一般是系統漏洞產生的。攻擊者在Web頁面插入惡意程式碼,當使用者瀏覽網頁時,嵌在Web裡面的程式碼會被執行從而實現跳轉造成資訊洩露或其他惡意行為。這些漏洞可能會允許攻擊者竊取cookie、記錄鍵盤敲擊、捕捉螢幕截圖、發現和收集網路資訊,以及遠端訪問和控制受害者的裝置,造成的影響無法估計。

跨站指令碼攻擊是OWASP Top10中第二普遍問題,存在於三分之二的應用程式中。但其實跨站指令碼攻擊很容易被預防,只要在開發階段透過靜態程式碼檢測技術就可以發現,問題在於開發人員此時是否意識到程式碼安全檢測的重要性。

靜態程式碼安全檢測技術和漏洞掃描、防火牆、入侵檢測系統互相配合,能夠有效提高網路的安全性。透過靜態程式碼檢測可以在開發階段對所有程式碼缺陷實時查詢並修復,如果說防火牆和網路監視系統是被動的防禦手段,那麼靜態程式碼檢測就是一種主動的防範措施,能有效查詢系統漏洞避免駭客攻擊行為,做到防患於未然。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2777258/,如需轉載,請註明出處,否則將追究法律責任。

相關文章