您所在的位置: 首頁 >
新聞資訊 >
威脅情報(bào) >
數(shù)十億Android設(shè)備面臨“臟流”攻擊!小米文件管理器、WPS Office在列!
微軟的研究人員最近發(fā)現(xiàn)許多Android應(yīng)用程序(其中至少有四個(gè)應(yīng)用程序的安裝量超過5億次)由于常見的安全漏洞而容易受到遠(yuǎn)程代碼執(zhí)行攻擊、令牌盜竊和其他問題的影響。微軟向谷歌的Android安全研究團(tuán)隊(duì)通報(bào)了該問題,谷歌也為Android應(yīng)用開發(fā)者發(fā)布了關(guān)于如何識別和修復(fù)該問題的新指南。
微軟威脅情報(bào)團(tuán)隊(duì)的Dimitrios Valsamaras在5月1日發(fā)布的一份報(bào)告中表示:“此漏洞模式的影響包括任意代碼執(zhí)行和令牌盜竊,具體取決于應(yīng)用程序的實(shí)現(xiàn)?!背晒迷撀┒纯赡苁构粽吣軌蛲耆刂茟?yīng)用程序的行為,并利用被盜的令牌對受害者的在線帳戶和其他數(shù)據(jù)進(jìn)行未經(jīng)授權(quán)的訪問。
數(shù)十億裝置面臨受損風(fēng)險(xiǎn)
微軟還與Google Play商店中受影響的Android應(yīng)用程序供應(yīng)商分享了其調(diào)查結(jié)果。其中包括小米公司的文件管理器產(chǎn)品,其安裝量超過10億次,另外一個(gè)的流行的文檔處理軟件WPS Office,下載量約為5億次。
在小米公司的文件管理器中,微軟研究團(tuán)隊(duì)能夠在V1-210567版本中獲得任意代碼執(zhí)行。經(jīng)過負(fù)責(zé)任的披露,小米發(fā)布了V1-210593版本,微軟確認(rèn)該漏洞已得到解決。在WPS Office中,微軟研究團(tuán)隊(duì)能夠在16.8.1版本中獲得任意代碼執(zhí)行。在披露后,WPS發(fā)布并通知我們該漏洞已從版本17.0.0開始得到解決。
微軟表示,這兩款產(chǎn)品的供應(yīng)商已經(jīng)解決了這個(gè)問題。但它相信,由于同樣的安全漏洞,還有更多的應(yīng)用程序容易被利用和破壞。微軟威脅情報(bào)團(tuán)隊(duì)在其博客文章中表示:“我們預(yù)計(jì)該漏洞模式可能會在其他應(yīng)用程序中發(fā)現(xiàn)?!? “我們正在分享這項(xiàng)研究,以便開發(fā)者和發(fā)行商可以檢查他們的應(yīng)用程序是否存在類似問題,進(jìn)行適當(dāng)?shù)男迯?fù),并防止將此類漏洞引入新的應(yīng)用程序或版本中?!?/span>
Microsoft發(fā)現(xiàn)的問題影響與其他應(yīng)用程序共享文件的Android 應(yīng)用程序。微軟表示,為了以安全的方式促進(jìn)共享,Android實(shí)現(xiàn)了所謂的“內(nèi)容提供商”功能,該功能基本上充當(dāng)管理應(yīng)用程序數(shù)據(jù)并將其公開給設(shè)備上其他已安裝應(yīng)用程序的接口。需要共享其文件的應(yīng)用程序(或者Android中的文件提供程序)聲明其他應(yīng)用程序可以用來獲取數(shù)據(jù)的特定路徑。文件提供程序還包括識別功能,其他應(yīng)用程序可以將其用作在系統(tǒng)上查找它們的地址。
盲目信任和缺乏內(nèi)容驗(yàn)證
微軟表示:“這種基于內(nèi)容提供商的模型提供了明確定義的文件共享機(jī)制,使服務(wù)應(yīng)用程序能夠通過細(xì)粒度控制以安全的方式與其他應(yīng)用程序共享其文件?!钡牵谠S多情況下,當(dāng)Android應(yīng)用程序從另一個(gè)應(yīng)用程序接收文件時(shí),它不會驗(yàn)證內(nèi)容。“最令人擔(dān)憂的是,它使用服務(wù)應(yīng)用程序提供的文件名將接收到的文件緩存在消費(fèi)應(yīng)用程序的內(nèi)部數(shù)據(jù)目錄中?!?/span>
微軟表示,這為攻擊者提供了創(chuàng)建惡意應(yīng)用程序的機(jī)會,該應(yīng)用程序可以在用戶不知情或未經(jīng)用戶批準(zhǔn)的情況下,將帶有惡意文件名的文件直接發(fā)送到接收應(yīng)用程序(或文件共享目標(biāo))。典型的文件共享目標(biāo)包括電子郵件客戶端、消息傳遞應(yīng)用程序、網(wǎng)絡(luò)應(yīng)用程序、瀏覽器和文件編輯器。微軟表示,當(dāng)共享目標(biāo)收到惡意文件名時(shí),它會使用該文件名來初始化文件并觸發(fā)一個(gè)進(jìn)程,該進(jìn)程可能會導(dǎo)致應(yīng)用程序受到損害。
主要的漏洞利用步驟及流程
潛在影響將根據(jù)Android應(yīng)用程序的實(shí)現(xiàn)細(xì)節(jié)而有所不同。在某些情況下,攻擊者可能會使用惡意應(yīng)用程序覆蓋接收應(yīng)用程序的設(shè)置,并使其與攻擊者控制的服務(wù)器進(jìn)行通信,或使其共享用戶的身份驗(yàn)證令牌和其他數(shù)據(jù)。在其他情況下,惡意應(yīng)用程序可能會將惡意代碼覆蓋到接收應(yīng)用程序的本機(jī)庫中,以實(shí)現(xiàn)任意代碼執(zhí)行。微軟表示:“由于流氓應(yīng)用程序控制了文件的名稱和內(nèi)容,因此通過盲目信任此輸入,共享目標(biāo)可能會覆蓋其私有數(shù)據(jù)空間中的關(guān)鍵文件,這可能會導(dǎo)致嚴(yán)重后果。”
微軟和谷歌都向開發(fā)者提供了如何避免該問題的提示。與此同時(shí),最終用戶可以通過確保他們的Android應(yīng)用程序是最新的并且僅安裝來自可信來源的應(yīng)用程序來降低風(fēng)險(xiǎn)。
微軟的安全建議
認(rèn)識到這種漏洞模式可能很普遍,微軟與Google的Android應(yīng)用程序安全研究團(tuán)隊(duì)分享了其發(fā)現(xiàn)。并與Google合作,為Android應(yīng)用程序開發(fā)人員編寫指南,幫助他們認(rèn)識并避免這種模式。微軟建議開發(fā)人員和安全分析師熟悉Google提供的優(yōu)秀Android應(yīng)用程序安全指南,并利用Android SDK 包含的Android Lint工具并與Android Studio集成(輔以Google額外的以安全為重點(diǎn)的檢查)來識別并避免潛在的漏洞。GitHub的CodeQL還提供了識別漏洞的功能。
為了防止這些問題,在處理其他應(yīng)用程序發(fā)送的文件流時(shí),最安全的解決方案是在緩存接收到的內(nèi)容時(shí)完全忽略遠(yuǎn)程文件提供程序返回的名稱。微軟遇到的一些最強(qiáng)大的方法使用隨機(jī)生成的名稱,因此即使傳入流的內(nèi)容格式錯(cuò)誤,也不會篡改應(yīng)用程序。
如果這種方法不可行,開發(fā)人員需要采取額外的步驟來確定緩存文件是否寫入專用目錄。由于傳入的文件流通常由內(nèi)容URI標(biāo)識,因此第一步是可靠地識別和清理相應(yīng)的文件名。除了過濾可能導(dǎo)致路徑遍歷的字符以及在執(zhí)行任何寫入操作之前,開發(fā)人員還必須通過調(diào)用File.getCanonicalPath并驗(yàn)證返回值的前綴來驗(yàn)證緩存的文件是否位于專用目錄中。
另一個(gè)需要保護(hù)的方面是開發(fā)人員嘗試從內(nèi)容URI中提取文件名的方式。開發(fā)人員經(jīng)常使用Uri.getLastPathSegment(),它返回最后一個(gè)路徑URI段的(URL)解碼值。攻擊者可以在此段中使用URL編碼字符(包括用于路徑遍歷的字符)制作URI。使用返回值來緩存文件可能會再次使應(yīng)用程序容易受到此類攻擊。
對于最終用戶,微軟建議通過Google Play商店(或其他適當(dāng)?shù)目尚艁碓?使移動應(yīng)用程序保持最新狀態(tài),以確保安裝解決已知漏洞的更新。用戶應(yīng)僅安裝來自受信任來源的應(yīng)用程序,以避免潛在的惡意應(yīng)用程序。微軟建議在更新之前通過小米應(yīng)用程序訪問SMB或FTP共享的用戶重置憑據(jù)并調(diào)查任何異常行為。Android上的Microsoft Defender for Endpoint可以向用戶和企業(yè)發(fā)出惡意應(yīng)用程序的警報(bào),而Microsoft Defender漏洞管理可以識別已安裝的具有已知漏洞的應(yīng)用程序。
參考資源
1、https://thehackernews.com/2024/05/popular-android-apps-like-xiaomi-wps.html
2、https://www.darkreading.com/cloud-security/billions-android-devices-open-dirty-stream-attack
3、https://www.microsoft.com/en-us/security/blog/2024/05/01/dirty-stream-attack-discovering-and-mitigating-a-common-vulnerability-pattern-in-android-apps/
來源:網(wǎng)空閑話plus