在一項對華為、LG和小米制造的安卓手機的點對點(P2P)文件共享功能的研究中,Doyensec應用程序安全工程師洛倫佐·斯特拉發現,這些手機廠商的文件共享設計程序存在嚴重的安全漏洞,惡意應用程序可以輕易劫持傳輸會話。
文件共享服務被濫用
安全業界先前對WiFi Direct協議的研究側重于網絡架構,包括發現和連接過程以及各種幀格式。
Stella指出:“我們轉而關注在兩臺設備之間創建本地P2P WiFi連接后會發生什么,特別是在應用程序層面。我們分析了許多流行手機品牌產品的定制化Android ROM中的文件傳輸應用程序。”
大多數安卓手機制造商使用文件傳輸控制器或客戶端(FTC)以及文件傳輸服務器(FTS)在設備之間建立WiFi連接、管理會話和傳輸文件。
Stella發現P2P WiFi建立連接后,其接口可被任何一個具備互聯網訪問權限的應用程序調用。
“因此,本地應用程序可以與本地或遠程設備客戶端上的文件共享應用程序生成的FTS和FTC服務進行交互,這為大量攻擊打開了大門。”Stella在一篇博客
(https://blog.doyensec.com/2020/12/10/novel-abuses-wifi-direct-mobile-file-transfers.html)中詳細介紹了這些漏洞。
劫持文件共享會話
Stella發現在SmartShare Beam上創建一個會話后,LG手機的P2P文件共享功能會將文件發送到不需要身份驗證的接收端口。
該服務還使用硬編碼的接收端口,并從非常小的隨機數池中生成會話ID。這使得惡意應用很容易劫持文件傳輸會話,向接受設備發送惡意文件。
Stella說:“在建立P2P WiFi連接(例如,當用戶想要發送文件時)時,用戶設備上運行的任何應用程序都能夠使用P2P接口來干擾傳輸。”
對于LG的SmartShare Beam,我們發現無需最終用戶授權就能將文件推送到遠程或本地設備。
在博客文章中,Stella還指出,攻擊者可以更改發送文件的名稱或者在單次會話中發送多個文件。
華為手機的“共享”服務雖然沒有發現類似的設計缺陷,但存在穩定性問題。第三方應用可能會導致FTS服務崩潰并啟動自己的惡意服務以劫持文件傳輸會話。
“發送文件的華為手機用戶和接受方都感覺不到這種崩潰。我們發現多個可通過惡意請求導致崩潰的矢量,導致了華為手機系統性的脆弱性和可利用性。”Stella寫道。
最后,Stella檢測了小米的“Mi Share”功能,發現該功能容易受到拒絕服務(DoS)攻擊,并且會話ID使用了弱隨機數。
緩解措施
Stella指出:“這些智能手機文件共享應用程序的安全設計需要改進,以防止被本地惡意應用程序濫用。”
例如,添加采用per-session證書的雙向TLS身份驗證有助于防止某些攻擊,此類證書是在創建P2P網絡之前通過BLE生成和交換的,并且在初始連接建立后不會重新協商。
應用程序還必須避免未加密和未經身份驗證的流量。
“這仍然不能保證服務的穩定性(例如遭遇DoS攻擊),但可以有效地防止惡意應用程序的濫用和攻擊。”Stella說。
破爛不堪的文件共享安全機制
P2P WiFi文件共享傳輸已經存在了10年,但手機制造商們仍未達成共識實現該功能的標準化,各種專有應用程序“百花齊放”,這使得其安全性難以得到有效保護。
Stella寫道:雖然核心技術一直都在那里,但手機廠商們仍在拼命捍衛自己的P2P文件共享“配方”。