QR codes可繞過瀏覽器隔離,實現惡意C2通訊

Mandiant網路安全公司近日發現一種繞過瀏覽器隔離技術並透過QR codes實現命令和控制(C2或C&C Server, Command & Control)註1操作的新方法。

瀏覽器隔離是一種日益受到青睞的安全技術,它將所有本機Web瀏覽器請求透過重定向到雲端環境或虛擬機器中託管的遠端Web瀏覽器路由來執行。造訪的網頁上的任何腳本或內容都在遠端瀏覽器而不是本機瀏覽器上執行。然後,頁面渲染的圖元流會被傳送回發出原始請求的本機瀏覽器,僅顯示頁面的外觀並保護本機裝置免受任何惡意程式碼的侵害。

許多命令和控制伺服器利用HTTP進行通訊,導致而遠端流覽器隔離能夠過濾惡意流量,使得這些通訊模式失效。Mandiant公司發現的新技術試圖繞過這些限制,儘管它也存在一些實際限制,但它揭示現有的瀏覽器安全保護措施還遠遠不夠完善,需要結合其他安全措施的「縱深防禦」策略。

C2s和瀏覽器隔離的背景

C2 通道允午攻擊者與受感染系統之間進行惡意通訊,使遠端駭客能夠控制受感染的設備並能夠執行命令、竊取資料等。由於瀏覽器在設計上不斷與外部伺服器交互,因此會啟動隔離措施以防止攻擊者在安全關鍵型環境中存取底層系統上的敏感資料。

這是透過在雲端、本機虛擬機器或本地託管的單獨沙箱(sandboxed)環境中運行瀏覽器來實現的。當隔離處於活動狀態時,隔離的瀏覽器會處理傳入的HTTP請求,並且只有頁面的視覺內容會串流到本機瀏覽器,這表示HTTP回應中的腳本或命令永遠不會到達目標。這阻止攻擊者直接存取HTTP回應或向瀏覽器注入惡意命令,從而使隱藏的C2通訊更加困難。(如圖1)

圖1:瀏覽器隔離示意圖

Mandiant 的繞過技巧

Mandiant的研究人員設計出一種新技術,可以繞過現代瀏覽器中現有的隔離機制。攻擊者不是將命令嵌入HTTP回應中,而是將其編碼到網頁上可視顯示的QR code中。由於瀏覽器隔離請求期間不會剝離網頁的視覺呈現,因此QR code能夠返回到發起請求的用戶端。在Mandiant 的研究中,「受害者」的本機瀏覽器是一個無頭客戶端,由先前感染裝置的惡意軟體控制,它會捕獲檢索到的QR codes並對其進行解碼以獲取指令。(如圖2)

圖2:使用QR code繞過瀏覽器隔離示意圖

Mandiant的概念驗證展示了對最新的Google Chrome網路瀏覽器的攻擊,並透過Cobalt Strike的外部C2功能(一種被廣泛濫用的滲透測試工具包)整合了植入程式。

雖然概念性驗證(Proof of concept,PoC)表明攻擊是可行的,但該技術並非完美無缺,尤其是考慮到現實世界的適用性。

首先,資料流的最大限制為2,189字節,大約是QR code可承載的最大資料的74%,如果惡意軟體的解釋器在讀取QR code時出現問題,資料包的大小需要進一步減小。其次,需要考慮延遲,因為每個請求大約需要5秒。這將資料傳輸速率限制為大約438位元組/秒,因此該技術不適合發送大型有效負載或促進SOCKS代理。最後,Mandiant表示,其研究沒有考慮網域信譽、URL掃描、資料遺失防護和請求啟發式等其他安全措施,這些措施在某些情況下可能會阻止這種攻擊或使其無效。

雖然Mandiant基於QR code的C2技術頻寬較低,但如果不加以阻止,仍然很危險。因此,建議關鍵環境中的管理員監控異常流量和以自動化模式運作的無頭瀏覽器。

註1: 命令和控制伺服器 (C&C或C2) 是一部發送命令給感染惡意程式裝置的電腦,並從這些裝置接收資訊。有些 C&C 伺服器控制著數百萬部裝置。

註2:概念性驗證(Proof of concept,PoC)是對某些想法的一個較短而不完整的實現,以證明其可行性,示範其原理,其目的是為了驗證一些概念或理論。概念驗證通常被認為是一個有里程碑意義的實作的原型 。

本文參考自:https://www.bleepingcomputer.com/news/security/qr-codes-bypass-browser-isolation-for-malicious-c2-communication/