Root für jedermann: Gefährliche Lücke in OxygenOS 16
Eine Schwachstelle in OxygenOS ermöglicht es völlig unberechtigten Apps, vollständige Root-Rechte auf Smartphones von OnePlus und OPPO zu erlangen. Durch die Kombination zweier Herstellerdienste können Angreifer das Android-Sicherheitskonzept komplett aushebeln und die Kontrolle über betroffene Geräte übernehmen.
Eine Sicherheitslücke in der Android-Spezialanpassung OxygenOS ermöglicht es unberechtigten Apps, vollständige Systemrechte (Root) auf Smartphones von OnePlus und OPPO zu erlangen. Der IT-Sicherheitsforscher Rasmus Moorats deckte auf, dass zwei herstellereigene Hintergrunddienste miteinander kombiniert werden können, um das Android-Sicherheitskonzept komplett zu umgehen.
Da der Angriff weder spezielle Berechtigungen noch Interaktionen der Anwendenden erfordert, stellt die Schwachstelle ein erhebliches Risiko für betroffene Geräte im Unternehmenskontext dar.
Telemetrie- und Debugging-Dienst als Einfallstor
Das Einfallstor der Angriffskette bildet der sogenannte AtlasService, ein proprietärer Telemetrie- und Debugging-Dienst von OxygenOS, der mit Root-Rechten im Hintergrund läuft. Über den ungeschützten Schnittstellenaufruf setEvent kann jede beliebige Anwendung ohne Berechtigungsprüfung Befehle an den Dienst senden.
Wird dabei ein spezifischer Event-Name übermittelt, übergibt das System ungeprüfte Benutzereingaben direkt an eine Systemfunktion zur Ordnererstellung, die den Befehl chmod 777 ausführt. Durch das Einfügen von Trennzeichen lässt sich an dieser Stelle eine sogenannte Command Injection ausführen, wodurch der Angreifer erstmals eine Shell mit der Systemkennung UID 0 im SELinux-Kontext dumpstate erhält.
Hardware Abstraction Layer als zweite Stufe
Da der SELinux-Kontext dumpstate noch gewissen Einschränkungen unterliegt, nutzen Angreifer in einem zweiten Schritt ein herstellerspezifisches Hardware Abstraction Layer (HAL) namens vendor.oplus.hardware.olc2. Dieses Modul stellt eine direkte Funktion bereit, um beliebige Shell-Befehle auszuführen, sichert diese jedoch ausschließlich über die Abfrage ab, ob der Aufrufer die Kennung UID 0 besitzt.
Da diese Bedingung durch den ersten Schritt bereits erfüllt ist, führt das HAL den Befehl ohne weitere Schranken aus. Durch automatische Rechteübergänge erbt der erzeugte Prozess schließlich den SELinux-Kontext vendor_qti_init_shell und erlangt damit praktisch sämtliche Linux-Capabilities, einschließlich des Ladens von Kernel-Modulen.
Exploit funktioniert auf aktuellen Geräten
Für den praktischen Nachweis entwickelte der Forscher eine gewöhnliche Android-Anwendung, die keinerlei Berechtigungen in der Manifest-Datei anfordert und auf aktuellen Android-Versionen läuft. Die App legt eine präparierte Ausführungsdatei im externen Speicher ab, klinkt sich über den AtlasService ein und führt anschließend den Aufruf an das Hardware-HAL aus, um die Rechte schrittweise zu erweitern.
Im Test auf einem OnePlus 15 unter OxygenOS 16 sowie einem OnePlus 12 Pro funktionierte der Exploit auf Anhieb. Der Hersteller bestätigte das Problem zwar für zahlreiche Modellreihen, hat bislang jedoch keine vollständige Übersicht der betroffenen Geräte oder durchgängige Updates bereitgestellt.
Apps aus unbekannten Quellen vermeiden
Für IT-Administratoren unterstreicht der Vorfall das Risiko proprietärer Herstellermodifikationen abseits des Android Open Source Projects (AOSP). Da die Lücke über eine ganz normale APK-Datei ohne Sonderrechte ausnutzbar ist, sollten Mobilgeräte von OnePlus und OPPO in Unternehmensnetzen bis zur Bereitstellung verifizierter Patches mit erhöhter Vorsicht behandelt werden.
Auf verwalteten Geräten (MDM/EMM) empfiehlt es sich dringend, das Installieren von Apps aus unbekannten Quellen strikt zu unterbinden, um das Einfallstor für potenzielle Schadsoftware zu schließen.