rC3: Stresstest führt zu vielen iPhone-Abstürzen

Die Sicherheitsforscherin Jiska Classen hat iPhone-Chips mit Fuzzing-Werkzeugen auf den Zahn gefühlt. Die Smartphones hinterließen einen verwirrten Eindruck.

Lesezeit: 6 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 48 Beiträge

(Bild: CC by 4.0 rC3 media.ccc.de)

Von
  • Stefan Krempl

Kommunikations-Chips, die Apple in iPhones einsetzt, halten Härtetests nur bedingt stand. Dies zeigte Jiska Classen von der Forschungsgruppe für Mobilfunksicherheit der TU Darmstadt auf dem remote Chaos Communication Congress (rC3). Immer wieder war auf ihren Aufzeichnungen zu sehen, wie sich die Geräte in einen unkontrollierbaren Status "verabschiedeten" – teils mit ungewöhnlichen Soundeffekten. Sie verloren die "Orientierung" und mussten teils in den Ausgangszustand zurückgesetzt werden.

Classen nutzte für ihre Experimente das Fuzzing-Verfahren. Dabei werden an das zu testende System über eine oder mehrere Eingabeschnittstellen laufend Zufallsdaten in großer Menge gesendet, um dessen Robustheit automatisiert zu prüfen. Den Fokus legte die Wissenschaftlerin auf den Baseband-Chip, der für Netzwerkfunktionen wie die Telefonie, SMS-Übertragung und den Internetzugang zuständig ist. Über das Einschleusen manipulierter Datenpakete, so ihre These, könnten dann eventuell im übergeordneten, eigentlich abgeschirmten iOS-Betriebssystem Sicherheitslücken ausgenutzt werden, um eigene Befehle auszuführen.

Diese Strategie sei schon aus der Perspektive des Reverse Engineering, also des Nachbaus kritischer proprietärer Funktionen, sehr interessant, konstatierte Classen. In dabei entstehenden Profilen sehe man etwa viele Nachrichten fürs Baseband-Management. Bei iPhones, auf denen Nutzungsbeschränkungen per Jailbreak entfernt worden seien, könne man so problemlos Datenpakete einschleusen und das Verhalten des Modems ändern. Dies öffne den Weg für neue Ansätze in der Mobilfunkforschung.

Konkret fühlte die Expertin den Chips und Geräten zunächst per Wireless Protocol Fuzzing auf den Zahn, unterzog also die Protokollimplementierungen für die drahtlose Kommunikation einem Stresstest. Sie schickte dafür Bilder an den für die Verarbeitung zuständigen Image Parser, um zu sehen, was davon wie ausgeführt wird. Entsprechende Dateien fügte sie zu einem Korpus zusammen und ergänzte diesen durch normkonforme JPEGs und künstlich erzeugte Bilder. So konnte sie erkennen, welche Dateien einen Absturz erzeugten und was genau die Ursache war.

Auch gelang es Classen, während laufender Anrufe oder ankommender Kurzmitteilungen Bits und Bytes mit eigenen Daten zu ersetzen und diese einzuschleusen. Nach Beobachten der Effekte, die die manipulierten Daten induzierten, konnte sie die Methode verfeinern und große Mengen an Kurznachrichten an den Baseband-Chip senden. Das iPhone erhielt dann so viele SMSe in kurzer Zeit, dass es gar nicht mehr dazu kam, für jede einzelne den typischen Dimm-Hinweiston abzuspielen. Stattdessen war nur noch ein unspezifisches "D-d-d-di-di-d-d-di-d-di-d-di-d-dimm" zu vernehmen.

Auch konnte Classen Anrufabbrüche bei Hotlines erzwingen, wobei das getestete iPhone die letzten Silben einer Ansage stakkatomäßig wiederholte. In einem anderen Fall sollte der Nutzer seine PIN erneut eingeben, ein andermal meldete das Testgerät ständig irrtümlich eine besetzte Leitung. In einer weiteren Demo ließ sich eine SMS nicht mehr löschen, sodass ein Reset erforderlich war. Das Verfahren ist der Forscherin zufolge noch ausbaufähig, da selbst mit einem guten Ausgangskorpus viele Funktionen noch nicht ausgeführt werden könnten.

Classen zeigte in ihrem Vortrag auch auf, welche Fuzzer sie nutzte und wie sie diese Werkzeuge für die iPhone-Chips mit eigenem Code adaptierte und kombinierte. Bisher hatte die Forschungsgruppe vor allem Bluetooth-Chips untersucht. Team-Kollege Jan Ruge baute dafür ein "Frankenstein" getauftes Modul, um die Bluetooth-Firmware mit der gleichen Geschwindigkeit wie mit gängiger Hardware zu emulieren und so realistische Tests für komplette Protokollstapel durchführen zu können.

Als weitere hilfreiche Werkzeuge nannte die Wissenschaftlerin ToothPicker, Frida sowie DTrace und American Fuzzy Lop (AFL). Teils habe sie diese Fuzzer mehrere Wochen lang laufen lassen und damit immer wieder Abstürze etwa bei den iPhone-Modellen 7 und 8 erzeugt und Schwachstellen entdeckt. Manche Probleme hätten sich auch auf das Desktop- und Laptop-Betriebssystem macOS erstreckt. Eine Hürde sei gewesen, dass beim drahtlosen Verbindungsaufbau die Kanäle nach Empfang einiger ungültiger Pakete geschlossen worden seien. Dieses Verhalten habe sich aber mit Frida abstellen lassen.

Bei den Analysen fielen Classen Unterschiede zwischen iPhone-8-Modellen für die USA und Europa auf. Während die USA-Variante einen Qualcomm-Chip mit der dokumentierten MSM-Schnittstelle (QMI) enthält, steckt in der europäischen Variante ein Intel-Chip mit einer bislang weitgehend unbekannten Schnittstelle namens Apple Remote Invocation (ARI). Over the Air versandte Datenpakete könnten diese beiden Schnittstellen prinzipiell kontrollieren, auch wenn noch eine Zwischenschicht eingebaut sei. Die zwei verschiedenen Bibliotheken ließen sich mit Frida fuzzen. In einigen Fällen wurde das CommCenter außer Betrieb gesetzt, sodass Anrufe verlorengingen und Internetverbindungen neu aufgebaut werden mussten. Teils lief die virtuelle Kommunikationszentrale weiter und verarbeitete auch Pakete mit falschen Werten.

Bei den Tests habe Classen ein iPhone 8 fast unbrauchbar gemacht. Die Startprozedur sei nur noch bis zum pongoOS vor dem eigentlichen Boot-Prozess des iOS abgelaufen. Erst nach einigen Stunden sei ein normales Starten wieder möglich gewesen. Die Intel-Variante habe Log-Dateien von insgesamt 500 Megabyte Umfang notiert, sodass der interne Speicher rasch vollgelaufen sei. Dann habe das Löschen von Fotos nicht mehr geklappt und SSH-Logins seien gescheitert.

Generell würde das Fuzzing die iPhones "sehr verwirren", erläuterte die Forscherin. Sie verlangten nach einer erneuten Aktivierung, verlören ihre Ortungsfunktion und zeigten grau unterlegte Flash-Messages an. Für Hacker bleibe noch viel Spielraum zum Ausprobieren. Man solle dafür aber besser nicht sein privates Smartphone verwenden. Absturzberichte und Hinweise auf mögliche Sicherheitslücken habe Classen an Apple geschickt. Der Konzern habe die daraus erkennbaren größeren Schwachstellen mit den iOS-Updates 14.2 und 14.3 geschlossen.

Mehr von c't Magazin Mehr von c't Magazin

(dz)