虛擬化世界入門—第二部分

作者:Egidijus Lileika,資深安全研究員

 

歡迎來到虛擬化系列文章的第二部分。本研究旨在了解應用程式虛擬化被用作攻擊媒介的可能性。我們測試了十幾個虛擬化應用程序,分別針對常規使用場景和作為駭客工具的情況進行了評估。此外,我們還評估了適用於所有測試虛擬化應用程式的 Android 應用程式保護解決方案。

虛擬化應用評估

本節將介紹最受歡迎的開源和閉源虛擬化應用。我們會從易用性、編譯或修改的便利性以及Android應用程式保護在虛擬化環境中抵禦攻擊的能力等方面對每個應用程式進行評估。我們力求列出涵蓋所有不同虛擬化方法的應用。部分應用比其他應用程式更受歡迎,我們將大致按照受歡迎程度從高到低的順序進行討論。

開源

虛擬應用

虛擬應用 這是一個部分虛擬化的安卓系統。完整的功能清單可以在專案的 README.MD 檔案中找到。該專案在 2017 年之前是開源的,之後就未再更新。不過,進階用戶仍可取得更新的版本(現已閉源)。 GitHub 上沒有預編譯的二進位。編譯原始碼非常困難,很多錯誤需要手動修復。

該專案有很多分支。 後續分支 實際上,它還維護著 2017 年後發布的 Android 版本。

我們最初嘗試編譯 VirtualApp 失敗了,但該專案被認為是其他虛擬化專案的靈感來源。

Android 應用程式保護已觸發:虛擬化偵測

虛擬Xposed

虛擬Xposed VirtualXposed 是另一個基於 VirtualApp 專案的 Android 部分虛擬化專案。它的主要特點是允許在未 root 的裝置上,於虛擬化環境中執行 Xposed 框架。然而,該項目存在穩定性問題。在用於測試的兩台裝置上,VirtualXposed 都未能成功安裝 Xposed 插件。在其中一台裝置上,VirtualXposed 甚至無法啟動虛擬化應用程式。許多其他項目試圖複製 VirtualXposed 的理念。

Android 應用程式保護功能觸發了以下保護措施:虛擬化偵測、Hook 偵測、動態偵測、Root 偵測、簽章檢查和模擬器偵測,導致應用程式崩潰。

VirtualApp2022

VirtualApp2022 受 VirtualXposed 啟發,基於 VirtualApp。在 Android 11 上運行良好。開發者在 README.MD 檔案中聲明支援 Xposed 外掛程式。

Android 應用程式保護已觸發:虛擬化偵測

千沃伊

千沃伊 Twoyi 是一款 Android 系統應用,可虛擬化整個 ROM 映像。預設情況下,它虛擬化的是預先安裝了 Superuser 應用的 Android 8.1.0 系統。由於 Twoyi 可以虛擬化自訂 ROM 鏡像,理論上,它可以用來虛擬化使用 Magisk 打過補丁的 ROM,運行 LSPosed 或其他威脅工具。

Android 應用程式保護機制已觸發:Root 偵測和模擬器偵測

多重應用

多重應用 運作良好。很難確定 MultiApp 使用的確切虛擬化技術,但它很可能是部分 Android 系統虛擬化,或將應用程式作為宿主進行虛擬化。這個專案僅部分開源——應用程式的 UI 和啟動器是開源的,但主要的虛擬化邏輯包含在預先編譯的 JAR 和 APK 檔案中。

Android 應用程式保護已觸發:虛擬化偵測

太極

太極 這是一個受 VirtualXposed 啟發的虛擬化應用,可以在未 root 的裝置上使用 Xposed 模組。遺憾的是,該專案並不穩定,在兩台測試設備上均無法安裝或執行虛擬化應用。

Android 應用程式保護已觸發:虛擬偵測

VirtualApk、Phantom 和 DroidPlugin

VirtualApk, 幻象以及 DroidPlugin 項目是SDK,允許用戶創建宿主應用程序,這些應用程式可以在其中虛擬化目標應用程式。由於時間有限,這些框架未經測試。

Android 應用程式保護機制已觸發:– 虛擬化偵測

閉源

平行空間, 雙重空間, 和別的

其他:

  • https://play.google.com/store/apps/details?id=com.excelliance.multiaccounts&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=multi.parallel.dualspace.cloner&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.cloneapp.parallelspace.dualspace&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.excelliance.multiaccount&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.excean.parallelspace&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=do.multiple.cloner&hl=en&gl=US
  • https://www.apkmirror.com/apk/nox-ltd/noxapp-multiple-accounts-clone-app/

Parallel Space是Google Play商店中最受歡迎的虛擬化應用程式之一。要將Parallel Space與GameGuardian配合使用,則需要從GameGuardian論壇下載一個非官方的「最佳化版」Parallel Space應用程式。

GameGuardian 優化版本:

  • https://gameguardian.net/forum/files/file/120-parallel-space-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/213-dualspace-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/194-virtual-space/
  • https://gameguardian.net/forum/files/file/225-octopus-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/122-go-multiple/

Android 應用程式保護機制觸發:虛擬化偵測與動態插樁偵測(偵測到平行空間記憶體竄改)

太空核心

太空核心 這是一個全新的部分開源虛擬化應用程式。虛擬化邏輯是閉源的。由於缺少核心庫的源代碼,該應用程式無法從原始碼編譯。演示版本穩定,可以運行大多數經過測試的應用。選單中包含 Xpo​​sed 管理員的佔位符,該管理器目前尚未發布。

Android 應用程式保護已觸發:虛擬化偵測

AppCloner

AppCloner 這是一種基於重新打包的虛擬化技術,它將目標應用程式重新打包成另一個軟體包名稱,並將其安裝到系統中。這種虛擬化技術雖然簡單,但無法與其他威脅工具配合使用,在沒有root權限的情況下篡改目標應用程式。

Android 應用程式保護已觸發:虛擬化偵測

冰島

冰島 Island 是一種基於工作設定檔的虛擬化解決方案,它將應用程式隔離在不同的工作設定檔中。在 Android 虛擬化應用程式保護過程中,防護創建報告顯示,Island 被用於將受害應用程式與其他應用程式隔離,而 GameGuardian 則被用於在不被察覺的情況下篡改應用程式記憶體。

Android 應用程式保護已觸發:虛擬化偵測

摘要

虛擬化技術對一般使用者和攻擊者都很有用。許多虛擬化應用程式允許攻擊者在未取得root權限的裝置上虛擬建立惡意環境。儘管有許多開源項目,但大多數都難以編譯和修改。

虛擬化可以透過多種方式實現,從應用程式重新打包到整個Android系統虛擬化。我們在本文中測試的所有虛擬化應用程式都被Android應用程式保護產品偵測到了。

其他資源

https://github.com/pianpian315/VirtualAndroid/blob/master/Mobile%20Virtualization%20Technologies.pdf

https://github.com/ysrc/AntiVirtualApp

 

您可以先觀看本系列的第一部分,連結如下: 此處.

你可能還喜歡