Das Android-Betriebssystem von Google findet weltweit vielseitigen Einsatz, angefangen bei Smartphones, über Tablet-Computer und mittlerweile sogar Smartwatches oder Android TV. Diese Arbeit beschränkt sich jedoch auf die Ausnutzung der libstagefright Bibliothek auf Smartphones, die das Android-Betriebssystem nutzen.
Smartphones werden im heutigen, schnelllebigen Computerzeitalter immer billiger und damit erschwinglich für die breite Masse an potenziellen Nutzern. Dies führt dazu, dass im Jahr 2015 bereits knapp 2 Milliarden Smartphones weltweit genutzt werden. Auf jedem zweiten Gerät läuft das Betriebssystem von Android. Seit Version 2.2 verwendet Android neben dem alten Multimedia-Framework OpenCore, ein Framework namens Stagefright, dieses birgt jedoch einige Schwachstellen bezüglich der Speicherverwaltung in sich.
Wie an zahlreichen, in dieser Arbeit beschriebenen Lücken zu sehen sein wird, bietet das Stagefright-Framework eine große Anzahl an Angriffsvektoren für potenziellen Missbrauch.
Inhaltsverzeichnis
- Abstrakt
- 1 Prolog
- 1.1 Motivation
- 1.2 Aufbau der Arbeit
- 2 Abhandlung
- 2.1 Android (Betriebssystem)
- 2.1.1 Interfaces und Architektur
- 2.1.2 Mediaframework
- 2.1.3 Versionen
- 2.1.4 Marktanteil und Verbreitung
- 2.2 Terminus „Stagefright“
- 2.2.1 Stagefright
- 2.2.2 Stagefright 2.0
- 2.1 Android (Betriebssystem)
- 3 Schwachstellen in Stagefright
- 3.1 Grundlagen: Integer Under- and Overflow
- 3.2 MP4 Atom Integer Overflow
- 3.2.1 Sample-to-Chunk ('stsc')
- 3.2.2 Composition Offset ('ctts')
- 3.2.3 Time-to-Sample ('stts')
- 3.2.4 Sync Sample ('stss')
- 3.2.5 Text Metadata ('tx3g')
- 3.2.6 Album cover artwork ('covr')
- 3.3 MP4 Atom Integer Underflow
- 3.3.1 Elementary Stream Descriptor ('esds')
- 3.3.2 Album cover artwork ('covr')
- 3.3.3 3rd Generation Partnership Project (3GPP)
- 3.3.4 Text Metadata ('tx3g')
- 3.4 Metadata Buffer Overread
- 3.5 libstagefright Integer Overflow
- 3.5.1 findFrame
- 3.5.2 size_t overflow in base64 decoding
- 3.6 libutils Integer Overflow
- 4 Angriffsvektoren
- 4.1 Proof of Concept bestätigte Szenarien
- 4.1.1 MP4
- 4.1.2 Firefox for Android
- 4.1.3 MKV-Datei
- 4.2 Offene Szenarien
- 4.1 Proof of Concept bestätigte Szenarien
- 5 Schutzmaßnahmen
- 5.1 MMS Umleitung
- 5.2 Updates
- 5.3 Stagefright Detector App
- 5.4 Address Space Layout Randomization (ASLR)
- 6 Resonanzen
- 6.1 Arbeitsumfeld
- 6.2 Privater Umkreis
- 7 Exploit Demo
Zielsetzung und Themenschwerpunkte
Diese Bachelorarbeit befasst sich mit der Bedrohungsanalyse des Android-Betriebssystems im Hinblick auf die Ausnutzung der Stagefright-Bibliothek, die Schwachstellen in der Speicherverwaltung aufweist. Die Arbeit soll ein umfassendes Verständnis für die Sicherheitslücken, die durch Stagefright entstanden sind, und deren Auswirkungen auf Android-Geräte vermitteln. Darüber hinaus werden Schutzmaßnahmen und mögliche Angriffsvektoren behandelt.
- Android-Betriebssystem: Architektur, Mediaframework, Versionen, Marktanteil und Verbreitung
- Stagefright: Funktionsweise, Schwachstellen, Lücken in der Speicherverwaltung
- Angriffsvektoren: Ausnutzung von Stagefright-Schwachstellen für Schadsoftware
- Schutzmaßnahmen: Updates, Sicherheitstools, Address Space Layout Randomization
- Resonanzen: Auswirkungen von Stagefright auf verschiedene Bereiche
Zusammenfassung der Kapitel
- Kapitel 1: Prolog: Motivation und Aufbau der Arbeit.
- Kapitel 2: Abhandlung: Einführung in das Android-Betriebssystem, insbesondere die Architektur und das Mediaframework. Erläuterung des Begriffs "Stagefright" und Unterscheidung zwischen den ersten Schwachstellen und Stagefright 2.0.
- Kapitel 3: Schwachstellen in Stagefright: Detaillierte Beschreibung der gefundenen Schwachstellen in Stagefright, darunter Integer Under- and Overflow, Metadata Buffer Overread, und verschiedene Integer Overflow-Probleme in libstagefright und libutils.
- Kapitel 4: Angriffsvektoren: Präsentation von bestätigten und möglichen Szenarien für die Ausnutzung der Stagefright-Schwachstellen, beispielsweise durch MP4-Dateien oder Firefox for Android.
- Kapitel 5: Schutzmaßnahmen: Vorstellung von Maßnahmen zur Abwehr von Angriffen, die Stagefright ausnutzen, wie MMS-Umleitung, Software-Updates, Stagefright Detector Apps, und Address Space Layout Randomization.
- Kapitel 6: Resonanzen: Analyse der Auswirkungen der Stagefright-Schwachstellen auf verschiedene Bereiche, einschließlich Arbeitsumfeld und privater Umkreis.
Schlüsselwörter
Android-Betriebssystem, Stagefright, Sicherheitslücken, Speicherverwaltung, Angriffsvektoren, Schadsoftware, Schutzmaßnahmen, Updates, Address Space Layout Randomization, Resonanzen, Mobile Sicherheit, Android-Hacker's Handbuch, Zimperium zLabs, Joshua J. Drake, Black Hat Konferenz, MP4, MMS, Firefox for Android.
- Arbeit zitieren
- Christian Peschek (Autor:in), 2016, Bedrohungsanalyse von Android. Die Ausnutzung von Stagefright, München, GRIN Verlag, https://www.grin.com/document/316975