新型安卓惡意軟件使用Protobuf協議竊取用戶數據
近日有研究人員發現,MMRat新型安卓銀行惡意軟件利用protobuf 數據序列化這種罕見的通信方法入侵設備竊取數據。
趨勢科技最早是在2023年6月底首次發現了MMRat,它主要針對東南亞用戶,在VirusTotal等反病毒掃描服務中一直未被發現。
雖然研究人員并不知道該惡意軟件最初是如何向受害者推廣的,但他們發現 MMRat 目前是通過偽裝成官方應用程序商店的網站進行傳播的。
這些應用程序通常會模仿政府官方應用程序或約會應用程序,待受害者下載時會自動安裝攜帶 MMRat 的惡意應用程序,并在安裝過程中授予權限,如訪問安卓的輔助功能服務等。
惡意軟件會自動濫用輔助功能,為自己授予額外權限,從而在受感染設備上執行大量惡意操作。
MMRat 的功能
一旦 MMRat 感染了安卓設備,它就會與 C2 服務器建立通信渠道,并監控設備活動以發現設備空閑時間。在此期間,威脅行為者會濫用可訪問性服務遠程喚醒設備、解鎖屏幕并實時進行銀行欺詐。
MMRat 的主要功能可歸納為以下幾點:
- 收集網絡、屏幕和電池信息
- 竊取用戶的聯系人列表和已安裝的應用程序列表
- 通過鍵盤記錄獲取用戶輸入信息
- 通過濫用 MediaProjection API 從設備上捕獲實時屏幕內容
- 記錄和實時串流攝像頭數據
- 以文本轉儲形式記錄和轉儲屏幕數據,并將其外泄到 C2
- 從設備上卸載,清除所有感染證據
惡意軟件支持的所有命令,圖源:趨勢科技
MMRat 能夠捕捉實時屏幕內容,甚至還能通過更初級的 "用戶終端狀態 "方法提取需要重構的文本數據,這都要求高效的數據傳輸。
如果沒有這樣的效率,其性能將阻礙威脅行為者有效實施銀行欺詐,這也是 MMRat 的作者選擇開發用于數據外滲的定制 Protobuf 協議的原因。
MMRat攻擊鏈,圖源:趨勢科技
Protobuf的優勢
MMRat 使用基于協議緩沖區(Protobuf)的獨特命令與控制(C2)服務器協議來實現高效數據傳輸,這在安卓木馬中并不多見。
Protobuf 是谷歌開發的一種結構化數據序列化方法,類似于 XML 和 JSON,但體積更小、速度更快。
MMRat 使用不同的端口和協議與 C2 交換數據,如 8080 端口的 HTTP 用于數據滲出,RTSP 和 8554 端口用于視頻流,8887 端口的自定義 Protobuf 用于命令和控制。
趨勢科技的報告指出:C&C協議尤其獨特,因為它是基于Netty和上文提到的Protobuf定制的,具有精心設計的消息結構。
對于 C&C 通信,威脅行為者使用一個總體結構來表示所有消息類型,并使用 "oneof "關鍵字來表示不同的數據類型"。
Protobuf模式,圖源:趨勢科技
除了 Protobuf 的高效性,定制協議還能幫助威脅行為者躲避網絡安全工具的檢測,這些工具會尋找已知異常的共同模式。
Protobuf的靈活性允許MMRat的作者定義他們的信息結構,并組織數據的傳輸方式。同時,Protobuf 的結構化特性還能確保發送的數據符合預定義的模式,從而降低在接收端被破壞的可能性。
MMRat凸顯出了安卓銀行木馬不斷發展的復雜性,它巧妙地將隱蔽性與高效數據提取融為一體。
因此,安卓用戶最好全部在Google Play里下載應用 ,查看用戶評論,并只選擇信譽良好的軟件發行商。此外,在安裝應用程序階段被要求授予訪問權限時須保持謹慎。