小心!Google Play 中出現首個使用代碼注入Android惡意軟體——Dvmap

前言

從2017年4月開始,研究人員就開始在Google Play商店發現了一個新出現的安卓root惡意軟體。與其他root惡意軟體不同,該木馬不僅能將其模塊安裝到系統中,還會將惡意代碼注入到系統運行的時間庫來獲取root許可權並保持持續訪問。目前,卡巴斯基實驗室目前已經將其命名為Trojan.AndroidOS.Dvmap.a。

通過Google Play傳播root惡意軟體並沒有什麼驚奇的,自從2016年9月以來,已經有100多種的Ztorg木馬變種上傳到了Google Play。但Dvmap是非常特別的root惡意軟體,它使用各種最新的攻擊技術,但最有趣的是它將惡意代碼注入到系統庫libdmv.so或libandroid_runtime.so中。

這使得Dvmap成為第一個在運行時將惡意代碼注入系統庫的Android惡意軟體,根據統計,它已從Google Play商店下載超過50000次。目前,卡巴斯基實驗室已向Google報告了該木馬,隨後Google就將其從商店中刪除。

在Google Play上的Trojan.AndroidOS.Dvmap.a

為了繞過Google Play商店的安全檢查,惡意軟體創建者使用了一個非常有趣的方法,他們首先在2017年3月底之前將一個合法的應用程序上傳到商店,隨後在更新該合法程序時,注入惡意程序,通常他們會在更新的當天再向Google Play上傳一個合法的應用程序。在4月18日至5月15日期間他們至少進行了5次這樣的操作。

所有Dvmap惡意應用程序都具有相同的功能,它們會從安裝包的assets文件夾解密多個檔案文件,並從利用「start」啟動可執行文件。

有趣的是,Dvmap木馬甚至在64位的安卓版本中都起作用這是非常罕見的。

在32位和64位安卓版本中的一部分Dvmap代碼

所有加密的檔案文件可以分為兩組:第一組包括Game321.res,Game322.res,Game323.res和Game642.res,這些都是在感染的初始階段使用的,而第二組則是Game324.res和Game644 .res,用於攻擊的主要階段。

初始階段

在此階段,Dvmap木馬會嘗試獲取根許可權並試圖在系統上安裝多個模塊,除了一個名為「common」的檔案外,此階段的所有檔案都會包含相同的文件。如下圖所示,這是一個本地根漏洞包,Dvmap木馬使用了4個不同的exploit pack文件,3個32位系統和1個64位系統。如果這些文件成功獲得root許可權,該木馬將在系統中安裝多個工具多個模塊包括用中文寫的幾個模塊,以及名為」com.qualcmm.timeservices」的惡意app。這些檔案包含文件「.root.sh」,其中還包含一些中文說明:

.root.sh文件的一部分

攻擊的主要階段

在這個階段,Dvmap木馬會從Game324.res或Game644.res啟動「start」文件。該文件將檢查安裝的Android版本,並決定使用哪個庫進行攻擊。對於Android 4.4.4及更高版本來說,Dvmap木馬將從libdvm.so庫中使用_Z30dvmHeapSourceStartupBeforeForkv,對於Android 5和更新版本,它將從libandroid_runtime.so庫中使用nativeForkAndSpecialize。這兩個庫都是與Dalvik和ART運行系統相關的運行時間庫。在使用之前,Dvmap木馬將以bak_ {original name}備份原始庫。

使用libdvm.so庫

在攻擊期間,Dvmap木馬將使用惡意代碼覆蓋現有的代碼,以便所有可以執行的操作都會執行/ system / bin / ip,這可能非常危險,會導致一些設備在覆蓋之後立即崩潰。然後Dvmap會將攻擊過的庫放回系統目錄。之後,木馬將從存檔(Game324.res或Game644.res)中使用惡意代碼代替原始的/ system / bin / ip。此時,Dvmap就可以確保其惡意模塊會執行系統許可權了。但惡意ip文件不包含原始ip文件中的任何方法,這意味著所有正在使用此文件的應用程序將失去某些功能,甚至會開始崩潰。

惡意模塊「ip」

該文件將由被攻擊的系統庫執行,它可以關閉「VerifyApps」,並通過更改系統設置啟用來自第三方app商店的應用程序。此外,它可以授權「com.qualcmm.timeservices」應用程序設備管理員許可權,而無需與用戶進行任何交互,只需運行命令即可。對於獲取設備管理員許可權來說,這種做法是非常罕見的。

惡意應用程序com.qualcmm.timeservices

如前所述,在初始攻擊階段中,Dvmap將安裝「com.qualcmm.timeservices」應用程序。其主要目的是下載檔案並從中執行「start」二進位文件。在監測過程中,com.qualcmm.timeservices能夠在沒有收到命令的情況下,成功連接到命令和控制伺服器。雖然目前,研究人員還沒有搞清楚哪種文件會被執行,但它們很可能是惡意或廣告文件。

總結

由於Dvmap木馬通過Google Play商店發布,並使用了一些非常危險的技術,包括攻擊系統庫,從而將具有不同功能的惡意模塊安裝到系統中。 它的主要目的是進入系統並執行具有root許可權的下載文件,但目前研究人員並沒有從它們的命令和控制伺服器收到這樣的文件。

另外,這些惡意模塊會向攻擊者反饋它們將要做的每一步, 所以研究人員認為這個惡意軟體仍在測試研發階段。

MD5

43680D1914F28E14C90436E1D42984E2

20D4B9EB9377C499917C4D69BF4CCEBE

如何預防被Dvmap攻擊

我們建議安裝了「顏色拼塊」遊戲的用戶對手機的數據進行備份並恢復出廠設置。由於該木馬目前仍在測試階段,所以重新恢復後,它的攻擊力就會消除。其次,要從正規的APP商店進行下載。

本文翻譯自:Dvmap: the first Android malware with code injection,如若轉載,請註明來源於嘶吼: 小心!Google Play 中出現首個使用代碼注入Android惡意軟體--Dvmap 更多內容請關注「嘶吼專業版」——Pro4hou

推薦閱讀:

快訊:英國議會電郵網路遭到持續攻擊
Github 安全類Repo收集整理
黑客通過控制麥克風竊取烏克蘭600GB數據
訴訟聲明:這42款迪士尼應用程序正在監視你的孩子!
【無線安全】解決和排除無線網路連接故障的若干方法

TAG:GooglePlay | 恶意软件 | 信息安全 |