Neuer Android-Bug „lähmt“ Geräte

Originalartikel von Veo Zhang, Mobile Threats Analyst

Kürzlich wurde über eine Schwachstelle berichtet, die Android zum Absturz bringt und Googles Bouncer™-Infrastruktur betroffen hatte. Die Lücke trifft auch Mobilgeräte mit Android 4.0 und höher und könnte von Cyberkriminellen missbraucht werden, um Smartphones und Tablets zu blockieren und in eine Reboot-Endlosschleife zu bringen.
Die Analyse zeigt, dass der erste Absturz durch die Beschädigung des Hauptspeichers in WindowManager verursacht wurde, der Schnittstelle, die Apps für die Kontrolle der Platzierung und des Erscheinungsbilds von Fenstern auf einem Bildschirm nutzen. Es wurden große Datenmengen in das Activity-Label (Pendant zu Window-Titel in Windows) eingefügt.

Erstellt nun ein Cyberkrimineller eine App, die eine versteckte Activity mit einem großen Label umfasst, so hat der Nutzer keine Ahnung, dass dieser Exploit stattfindet. Auch können die Kriminellen den Exploit verschleiern, indem sie ein zeitgebundenes Trigger-Event setzen, dass die aktuelle App-Aktivität stoppt und dann die verborgene Activity öffnet. Sobald das Event angestoßen wird, läuft der Exploit an und das System stürzt ab. Alle Funktionen des Mobilgeräts werden beendet und das System muss neu booten.

Noch schlimmer kann es kommen, wenn der Schädling so aufgesetzt ist, dass er beim Gerätestart ansetzt. In diesem Fall wird das Gerät in einer Reboot-Endlosschleife gefangen. Abhilfe kann lediglich eine Wiederherstellung des Boot Loaders schaffen. Das aber heißt, dass alle Informationen (Kontakte, Fotos, Dateien usw.) auf dem Gerät gelöscht werden.

Ein Fehler lässt eine Reihe von Diensten abstürzen

Trend Micro-Nachforschungen brachten zutage, dass neben dem WindowManager-Dienst, auch der PackageManager und ActivityManager auf eine ähnliche Absturz-Schwachstelle ansprechbar sind. Der Unterschied hier besteht darin, dass das Gerät sofort abstürzt, wenn die bösartige App installiert wird. Die Exploit-App benötigt dafür keine spezielle Berechtigung.

In AndroidManifest.xml können die Labelnamen in dem “android:label”-Attribut des Elements gesetzt werden. Normalerweise lassen sich Apps mit einem sehr langen Raw String-Label in AndroidManifest.xml nicht installieren. Der Grund liegt in der Größenbeschränkung des Transaktions-Buffers des Android Binder. Doch über die ADB (Android Debug Bridge)-Schnittstelle, die viele Drittanbieter nutzen, kann die App leider dennoch installiert werden.

Bild 1. Absturz des PackageManager-Service

Alle weiteren Prozesse, die vom PackageManager abhängig sind, stürzen dann in einer Kettenreaktion ebenfalls ab, sodass das Android-Gerät nicht mehr zu gebrauchen ist. Es folgen Beispiele von Benachrichtigungen einiger abgestürzter Dienste, einschließlich des Launcher und android.process.acore.

Bild 2. Von PackageManager abhängige abgestürzte Dienste

Auch der Systemdienst ActivityManager ist infolge der ständigen Fehler in der Binder-Transaktion betroffen. Dies kann unter Umständen zu einem Binder-Treiberabsturz führen und dann zu einem automatischen Reboot des Geräts. In dieser Situation bleibt dem Nutzer nichts anderes übrig, als auf einen harten Fabriks-Reset zurückzugreifen mit dem Risiko, alle gespeicherten Daten vom Gerät zu löschen.


Bild 3. Treiberabsturz des Binder

Was sollten Nutzer tun?

Auch hier gilt die Empfehlung, nie Apps aus einem App Store eines Drittanbieters herunterzuladen. Die Apps dort sollten mit einer gehörigen Portion an Skepsis betrachtet werden, weil Cyberkriminelle ständig auf der Suche nach Möglichkeiten sind, um Geräte für ihre Zwecke zu kompromittieren. Google wurde bereits über die Schwachstelle informiert.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*