Veröffentlicht: März 28, 2023
Einführung in die Welt der Virtualisierung – Teil I
Von Egidijus Lileika, leitender Sicherheitsforscher
Ziel dieser Forschung ist es, das Potenzial der Anwendungsvirtualisierung als Angriffsvektor zu verstehen. In dieser Untersuchung wurden ein Dutzend Virtualisierungs-Apps für reguläre Anwendungsfälle und als Hacking-Tools getestet. Das Produkt Application Protection für Android wurde bei allen getesteten Virtualisierungs-Apps als Abhilfelösung bewertet. Lesen Sie weiter für den ersten Teil dieser Serie.
Virtualisierungs-Apps für den „normalen“ Endgebrauch
Die meisten Virtualisierungs-Apps, die „normalen“ Benutzern zur Verfügung stehen, können im Google Play Store heruntergeladen werden. Diese Apps haben Hunderte Millionen Downloads. Eines der beliebtesten ist Parallel Space. Die primäre Zielgruppe dieser Apps sind Personen, die mehr als ein Konto in bestimmten Apps haben, beispielsweise in Social-Media-Apps. Mit Virtualisierungs-Apps können Endbenutzer mehrere Instanzen einer einzelnen App gleichzeitig ausführen – ohne dass sie sich abmelden und bei einem anderen Konto anmelden müssen. Einige Virtualisierungs-Apps präsentieren sich als Apps zur Verbesserung der Privatsphäre. In virtuellen Räumen installierte Apps sind oft – aber nicht immer – auf die eine oder andere Weise vom regulären Android-System isoliert.
Virtualisierungs-Apps als Tools für Bedrohungsakteure
Am anderen Ende des Benutzerspektrums stehen Bedrohungsakteure. Virtualisierung kann aus verschiedenen Gründen eingesetzt werden. Einer der Hauptvorteile der Virtualisierung besteht darin, dass virtualisierte Apps über privilegiertere Prozesse verfügen als Ziel-Apps, sodass die Virtualisierungs-App frei mit der Ziel-App interagieren kann. Die Virtualisierung umgeht auf die eine oder andere Weise das Sicherheitsmodell von Android, indem sie eine freizügigere Umgebung in der Sandbox der Virtualisierungs-App schafft. Viele Arten von Virtualisierungs-Apps bieten „falschen Root“-Zugriff und Hooking-Dienste, die von Hooking-Frameworks wie Xposed bereitgestellt werden. Und all dies kann auf einem nicht gerooteten Telefon erreicht werden – was bedeutet, dass böswillige Aktivitäten auf verifizierten Geräten ausgeführt werden können.
Virtualisierte Umgebungen eröffnen Möglichkeiten für die folgenden bösartigen Aktivitäten:
- Betrug in Spielen: Software wie GameGuardian, die in einer virtualisierten Umgebung ausgeführt wird, kann fast alles erreichen, was sie auf einem gerooteten Gerät tun könnte.
- Haken: Virtualisierungssoftware wie VirtualXposed ermöglicht die Injektion von Xposed-Modulen in virtualisierte Apps und verändert so deren Verhalten. Beispielsweise könnte VirtualXposed verwendet werden, um Werbung in der YouTube-App zu umgehen.
- Gefälschte Wurzel: Einige Virtualisierungs-Apps ermöglichen den Zugriff auf gefälschte „Superuser“, um Software mit erweiterten Berechtigungen auszuführen. Beispielsweise könnte ein gefälschter Root verwendet werden, um den Frida-Server auf einem nicht gerooteten Gerät auszuführen.
- Virtueller Ort: Die meisten Virtualisierungs-Apps bieten Standort-Spoofing-Dienste. Dies ist besonders nützlich, um geolokalisierungsbasierte Überprüfungen zu umgehen oder in geolokalisierungsbasierten Spielen wie Pokémon Go zu schummeln.
- Dynamische Analyse: Einige beliebte Virtualisierungs-Apps sind Open Source und können über benutzerdefinierte Plugins geändert werden. Innerhalb des Plugins können Benutzer virtualisierte Anwendungen dynamisch instrumentieren, das Anwendungsverhalten beobachten und den Netzwerkverkehr erfassen.

Abbildung 1 – Beliebtheit der jeweiligen virtuellen Räume bei GameGuardian-Benutzern
Kategorien von Virtualisierungs-Apps
App-Virtualisierung ist ein weit gefasster Begriff. App-Virtualisierung kann auf viele verschiedene Arten erreicht werden und nicht unbedingt durch Virtualisierung des Android-Systems. App-Virtualisierung ist ein guter Begriff, um die Idee der Ausführung von Anwendungen in einer unregelmäßigen Umgebung zu verallgemeinern. Im Folgenden sind einige der vielen verschiedenen Varianten der App-Virtualisierung aufgeführt:
Isolierung des Arbeitsprofils
Einige der Virtualisierungs-Apps erreichen die Virtualisierung, indem sie ein separates Arbeitsprofil erstellen und die darin enthaltene virtualisierte App isolieren. Ein Arbeitsprofil ist eine Einrichtung auf einem Android-Gerät, um „berufliche“ Apps und Daten von persönlichen Apps und Daten zu trennen. Das Arbeitsprofil befindet sich in einem separaten Teil des Geräts, der vom Rest des Systems isoliert ist. Das Isolieren einer App mit einem Arbeitsprofil ist nicht unbedingt gut, da eine potenziell schädliche App, die im regulären Benutzerbereich mit Root-Zugriff ausgeführt wird, wahrscheinlich nicht erkannt werden kann, da die vom Arbeitsprofil isolierte App nur Apps sehen kann, die sich im selben Arbeitsprofil befinden. Eine solche Angriffsstrategie wird beispielsweise von Game-Bedrohungsakteuren missbraucht, die GameGuardian auf einem gerooteten Gerät mit Root-Rechten verwenden und die Zielanwendung im isolierten Arbeitsprofil ausführen. „Die Island-App ist eine Anwendung, die im Google Play Store kostenlos verfügbar ist und es Benutzern ermöglicht, bestimmte Anwendungen zu klonen. Die Island-App ist auch ein gutes Beispiel für die „Arbeitsprofil-Isolation“.
Klonen und Umpacken
Eine andere Art von Virtualisierungs-App erreicht die Virtualisierung durch Klonen oder Neupacken der Zielanwendung. Normalerweise ist der Prozess unkompliziert. Grundsätzlich werden diese Apps kopiert und ihr Paketname wird in einen eindeutigen Paketnamen geändert. Um alle Arten von Prüfungen und Verifizierungen zu umgehen, fügen solche Virtualisierungs-Apps ihren eigenen Code in Patch- oder Hook-Methoden ein, die für den Abruf von Paketnamen und Signaturen verantwortlich sind, sowie andere Methoden, um der Anwendung vorzutäuschen, dass es sich um die Original-App handelt. Da sich die Anwendungs-ID geändert hat, können sowohl die ursprüngliche als auch die geklonte App auf demselben Android-System koexistieren. Diese Art der Virtualisierung ist die schnellste, da kein Virtualisierungsaufwand entsteht. Die AppCloner-App ist ein Beispiel für diese Art von App. AppCloner ist auch im Google Play Store kostenlos verfügbar.
Anwendungshosts
„Anwendungshosts“ sind eine andere Art von Virtualisierungstechnik. Anwendungshosts virtualisieren, indem sie die Zielanwendung in sich selbst laden und ausführen. Dies ist ein relativ einfacher Ansatz zur Virtualisierung einer App, der jedoch mit gewissen Einschränkungen verbunden ist. Beispielsweise können solche Anwendungshosts in der Regel jeweils nur eine einzelne Instanz der App oder eine sehr begrenzte Anzahl von Apps gleichzeitig ausführen. Einige Virtualisierungstechnologien, die eine solche Strategie nutzen, werden als SDKs ausgeliefert, die es dem Benutzer ermöglichen, seine eigene Host-App für bestimmte Apps mit bestimmten Funktionen zu erstellen. Solche SDKs eröffnen auch Möglichkeiten für die Verwendung von Hooking-Frameworks und ganz allgemein für die dynamische Analyse von Anwendungen mit Instrumentierung. VirtualApk und Phantom sind bemerkenswerte Beispiele für einen solchen Virtualisierungsansatz.
Komplette Android-Systemvirtualisierung
Einige Virtualisierungs-Apps virtualisieren das gesamte Android-System. Einige von ihnen booten sogar das gesamte Android-System von jedem ROM-Image (Nur-Lese-Speicher). Diese Art der Virtualisierung ist die langsamste, aber leistungsstärkste, da dieser Ansatz buchstäblich das gesamte Android-Telefon emuliert. Benutzerdefinierte ROM-Images oder -Dateien können mit Magisk gepatcht, angepasst, gerootet usw. werden. Es gibt fast keine Möglichkeit für eine virtualisierte Anwendung, mit dem externen Android-System zu interagieren und zu wissen, was dort passiert. Eine solche Virtualisierung kann verwendet werden, um Zielanwendungen in normal aussehenden virtualisierten Android-Systemen ohne Root-Zugriff auszuführen. Das ursprüngliche Android-System könnte jedoch gerootet sein und zusätzliche dynamische Analysesoftware ausführen, um die virtualisierte App zu manipulieren. Twoyi ist eine der beliebtesten Apps, die das gesamte Android-System virtualisiert.
Teilweise Android-Laufzeitvirtualisierung
Zu guter Letzt erreichen einige Virtualisierungs-Apps eine teilweise Virtualisierung des Android-Systems. Normalerweise erstellen solche Virtualisierungs-Apps den Großteil des Android-Systems mithilfe von Proxys und Dummy-Prozessen neu. Hooking ist ein sehr wichtiger Teil solcher Virtualisierungstechniken, da während der Kommunikation zwischen virtualisierten App-Prozessen und dem Rest des Systems viele Dinge abgefangen und gepatcht werden müssen. Außerdem ist die Wartung dieser Methode zwischen verschiedenen Android-Versionen und über verschiedene Android-Geräteanbieter hinweg kompliziert. Normalerweise leidet ein solcher Virtualisierungsansatz unter Stabilitätsproblemen. Allerdings ist die Technik der partiellen Android-Laufzeitvirtualisierung eine der leistungsstärksten Virtualisierungstechniken: Eine gut implementierte partielle Android-Laufzeitvirtualisierung kann völlig unentdeckbar sein. VirtualApp ist eine der bekanntesten partiellen Android-Laufzeitvirtualisierungen, die es gibt.
Kann man Virtualisierungs-Apps vertrauen?
Wie bereits erwähnt, versprechen die vielen Virtualisierungs-Apps im Google Play Store eine Erhöhung der Privatsphäre, um normale Benutzer glauben zu lassen, dass Virtualisierung die Privatsphäre der Benutzer verbessert. Diese Behauptung ist mit Vorsicht zu genießen. Die Tatsache, dass die virtualisierte App vom Rest des Systems isoliert ist, erhöht die Privatsphäre. Allerdings verfügt die Virtualisierungs-App über mehr Privilegien gegenüber einer virtualisierten App als jede andere auf dem Android-System installierte Drittanbieteranwendung. Es gibt keine Garantie dafür, dass die Virtualisierungs-App diese Berechtigungen nicht nutzt, um die persönlichen Daten des Benutzers zu stehlen.
Die meisten Virtualisierungs-Apps sind voller Werbung. Einige von ihnen fügen tatsächlich zusätzlichen Adware-Code in die virtualisierte App ein. Es gibt nahezu unendlich viele Dinge, die ohne Zustimmung des Benutzers in die virtualisierte Anwendung eingefügt werden könnten.
Außerdem könnte die Verwendung von Virtualisierungssoftware gegen die Nutzungsbedingungen der virtualisierten Anwendung verstoßen, was bedeutet, dass die Verwendung von Virtualisierungssoftware zu einer Kontosperre führen könnte.
Setzen Sie das Gespräch im zweiten Teil der Blogserie fort, den Sie hier finden hier.
Auch interessant
Agentische KI-Angriffe: Agent Smith ist aus dem Ruhestand zurück
Angreifer im Kampf gegen die natürliche Evolution treiben die Grenzen der KI immer weiter voran…
Gleiches mit Gleichem bekämpfen: KI gegen KI einsetzen
App-Angriffe stiegen im Januar 2025 auf 83 %, gegenüber 65 % im Januar…
Was mir Bad Guys 2 über Informationsasymmetrie und die Application Security Ein Problem, das niemand benennen will
01 Sie waren Studenten Ihrer Arbeit. Es gibt…