2012年7月26日,谷歌將Android Market重新命名,變?yōu)槿缃翊蠹叶炷茉數(shù)腉oogle Play。作為整個安卓系統(tǒng)最重要、最為官方的應(yīng)用下載市場,10年來,Google Play已經(jīng)服務(wù)了來自全球190多個國家地區(qū)的25億用戶。但正所謂樹大招風,Google Play也早已被眾多惡意軟件盯上,成為它們的集散中心。
【圖:為慶祝Google Play十周年,谷歌設(shè)計了新的標志】
近兩年,Google Play惡意軟件泛濫的問題已經(jīng)引起了越來越多安全機構(gòu)的注意,根據(jù)2020年的一項調(diào)查研究,Google Play直接被確認為是安卓設(shè)備上安裝惡意軟件的主要來源。研究人員通過對790萬款獨立應(yīng)用所涉及的3400萬個APK分析,發(fā)現(xiàn)有10%到24%可以被描述為惡意或不需要的應(yīng)用軟件。研究人員還特別研究了這些軟件的來源路徑,結(jié)果顯示,大約67%的惡意應(yīng)用軟件安裝來自Google Play。
由于Google Play惡意軟件問題越發(fā)嚴峻,安全事件頻出,F(xiàn)reeBuf曾在近期做過多次專門報道:
Facestealer
今年5月,趨勢科技揭露了一款名為Facestealer的間諜軟件,該軟件自去年7月被俄羅斯安全廠商Doctor Web發(fā)現(xiàn)以來,通過變換馬甲,偽裝成超200款應(yīng)用滲透進Google Play,其中VPN類應(yīng)用占比最高,達42款,其次是拍照類應(yīng)用(20款)及照片編輯類應(yīng)用(13款)。
Facestealer的目的是竊取用戶Facebook賬戶的敏感信息,當用戶登錄Facebook賬戶后,惡意軟件會搜集Cookie,并加密發(fā)送至攻擊者所在的遠程服務(wù)器。
【圖:Facestealer請求用戶登錄Facebook】
Autolycos
同樣是去年,網(wǎng)絡(luò)安全公司Evina的研究人員注意到一款名為Autolycos的惡意軟件,根據(jù)批露,有8款軟件內(nèi)含Autolycos,累計下載次數(shù)超過了300萬次。作為一種新型的惡意軟件,Autolycos能夠執(zhí)行隱蔽的惡意行為,如在遠程瀏覽器上執(zhí)行URL,然后將結(jié)果納入到HTTP請求中,而不是使用Webview。這種方式旨在使其行為變得更加隱蔽,也不會被受感染設(shè)備的防護措施檢測到。
Joker
Joker與Google Play的羈絆可謂最久,這是一款向用戶惡意訂閱由攻擊者控制的高級付費服務(wù)的惡意軟件,自2017年問世以來現(xiàn)身頻繁。去年底,Joker被曝附身于一款名為Color Message的短信App內(nèi),下載次數(shù)達到了50萬次,并在用戶神不知鬼不覺的情況下訂閱了昂貴的云計算服務(wù)。此外,它還會訪問用戶聯(lián)系人信息,并將信息發(fā)送至由攻擊者控制的境外服務(wù)器。
【圖:下載量達50萬次的Color Message】
最近,網(wǎng)絡(luò)安全公司Zscaler又在Google Play發(fā)現(xiàn)了53款含有Joker的應(yīng)用軟件,累計下載次數(shù)超過了33萬次。這些應(yīng)用一般通過冒充短信、照片編輯器、血壓計、表情符號鍵盤和翻譯應(yīng)用程序的形式出現(xiàn),一旦用戶安裝后,應(yīng)用程序又要求提升設(shè)備的權(quán)限來進行其它操作。
【圖:部分含有Joker的惡意軟件】
道高一尺魔高一丈
其實官方應(yīng)用市場時不時冒出惡意軟件并不是什么新鮮事,哪怕是相對封閉的蘋果macOS與iOS系統(tǒng)有時也會為之困擾,據(jù)Apple Insider的統(tǒng)計,2022年迄今已發(fā)現(xiàn)超過3400萬個新的惡意軟件樣本,其中macOS為2000個,而安卓系統(tǒng)則達到了53.6萬個,可見基于安卓系統(tǒng)自身的開放性,惡意軟件的防范難度遠非macOS與iOS能夠比擬。
在上傳至Google Play時,這些惡意軟件可通過輕量化的代碼,偽裝、克隆成合法正常的應(yīng)用程序,以欺騙Google Play的安全防御檢測,即使當受害首次下載安裝時也看不出任何端倪,而一旦獲取了用戶設(shè)備相應(yīng)的權(quán)限,這些惡意軟件才逐漸浮現(xiàn)出廬山真面目——比如通過Dropper(滴管)技術(shù),在受害者設(shè)備上逐步部署帶有惡意功能的有效載荷。
為了盡可能多地持續(xù)性繞過檢測,這些惡意軟件也會不斷升級優(yōu)化,也會善于利用通用工具進行混淆,比如Joker曾利用由谷歌設(shè)計的開源應(yīng)用開發(fā)工具包Flutter來逃避基于設(shè)備和應(yīng)用商店的安全檢測,它能允許開發(fā)者從一個代碼庫中為移動端、網(wǎng)絡(luò)端和桌面端制作本地應(yīng)用。由于Flutter的通用性,惡意軟件代碼也可以輕松繞過檢查。
面對惡意軟件泛濫,谷歌表示,僅在2021年就封禁了190000個惡意和垃圾郵件開發(fā)者賬戶,120萬款違反Google Play政策的應(yīng)用被刪除,但這并不表示這些刪除都是及時的。如前文所述,去年6月,網(wǎng)絡(luò)安全公司Evina發(fā)現(xiàn)了8款內(nèi)含Autolycos的惡意軟件,并隨即向谷歌做了匯報,但谷歌花了長達約半年的時間才刪除了其中的6款軟件,另外兩款直到今年7月初才被刪除。正是由于許多惡意軟件仍需要安全公司甚至用戶主動發(fā)現(xiàn)并上報,再經(jīng)過谷歌一定時間的審核確認,導致不少惡意軟件在被刪除前已被下載了數(shù)萬次,在這期間,攻擊者可能已或多或少達成了他們的目的。
對于主要依靠事后刪除這種治標不治本的做法,谷歌也嘗試過擴大其檢測和防御手段,但這些惡意軟件的更新迭代也在不斷加快,總能找到空子趁機溜入。今年4月,谷歌通過了一系列新的開發(fā)策略,要求自2022年11月1日起,所有新發(fā)布的應(yīng)用程序必須對標最新Android系統(tǒng)版本發(fā)布后一年之內(nèi)與之相匹配的API級別,否則將不得上架Google Play;而現(xiàn)有應(yīng)用若兩年內(nèi)未對標相應(yīng)API級別,則會被Google Play移除。
【圖:新發(fā)布應(yīng)用的API級別定位要求】
這一變化旨在要求應(yīng)用程序開發(fā)人員采用更嚴格的API策略來支持較新的Android版本,以針對目前的安全威脅,獲得更好的權(quán)限管理和撤銷、通知反劫持、數(shù)據(jù)隱私增強、網(wǎng)絡(luò)釣魚檢測、屏幕啟動限制等功能。
另外一項政策便是收緊了“REQUEST_INSTALL_PACKAGES”權(quán)限,以針對一些應(yīng)用在上架Google Play時通過提交看似正常的代碼騙過審核,并在被下載后部署惡意模塊。該政策已于7月正式生效,適用于所有使用API級別為25(Android 7.1)及更高版本的應(yīng)用,使用此權(quán)限的應(yīng)用程序在安裝或更新時僅能獲取經(jīng)過數(shù)字簽名的數(shù)據(jù)包,且不得執(zhí)行自我更新、修改或在文件中捆綁其他APK的操作。
這些政策能給谷歌防范惡意軟件帶來多大幫助目前還不得而知,但有一點可以肯定,惡意軟件如同經(jīng)久不衰的DDoS以及APT攻擊,攻擊者總能找到突破口實施入侵。對于Google Play,谷歌所要做的就是盡可能地快人一步,不斷升級安全措施,及時發(fā)現(xiàn)并阻止惡意軟件,盡量減小它們對用戶構(gòu)成的威脅。