Grin logo
en de es fr
Shop
GRIN Website
Texte veröffentlichen, Rundum-Service genießen
Zur Shop-Startseite › Informatik - IT-Security

Schwachstellenanalyse & Reverse Engineering von Android Apps

Titel: Schwachstellenanalyse & Reverse Engineering von Android Apps

Studienarbeit , 2014 , 66 Seiten

Autor:in: Daniel Szameitat (Autor:in)

Informatik - IT-Security
Leseprobe & Details   Blick ins Buch
Zusammenfassung Leseprobe Details

Diese Arbeit beschäftigt sich mit dem Auffinden von Schwachstellen in Android Apps. Der Leser dieser Arbeit soll in die Lage versetzt werden, die Sicherheit einer App beurteilen zu können. Damit richtet sich diese Arbeit vorrangig an Android Administratoren und Entwickler. Die beschriebenen Techniken sollten nur aus Eigenentwicklungen angewandt werden.

Die Arbeit gliedert sich in vier logische Abschnitte. Am Anfang stehen Informationen zum Umgang mit Android und dem Google Play Store. Diese Informationen sind Grundlagen, welche wichtig für alle nachfolgenden Themen sind. Danach werden einige Schwachstellen, die häufig in Android Apps vorkommen, aufgezeigt und am praktischen Beispiel erläutert. Die letzten zwei Abschnitte stellen den Kern dieser Arbeit da, indem sie beschreiben, wie solche Schwachstellen gefunden werden können. In Abschnitt drei wird prinzipiell gezeigt, wie eine App aufgebaut ist und wie Quelltext aus einer App gewonnen wird. Der letzte Teil der Arbeit geht auf konkrete Analysetechniken ein.

Insgesamt wird so der aktuelle Stand der Technik für Sicherheitsanalysen von Android beschrieben.

Leseprobe


Inhaltsverzeichnis

  • Einleitung
  • Voraussetzungen
  • Apps herunterladen
  • Testumgebung einrichten
    • Android Development Umgebung
    • Alternativer Emulator
    • Santoku
  • Schwachstellen in Android Apps
    • Unauthorized Intent Receipt
    • Intent Spoofing
    • Information Leakage
    • Backdoor
    • SSL
    • DOS
    • Weitere Schwachstellen
      • SQL, JavaScript & XML Injection
      • Fragment Injection
      • OWASP Mobile Top 10 Risks
  • Manuelle Analyse
    • Betrachtung der Manifest-Datei
    • App Konfiguration herausfinden
    • Statische Analyse
      • Ressourcen untersuchen
      • Grundlagen der Dekompilierung
        • Manuelle Dekompilierung von Dex-Bytecode
        • Dekompilierung von Dex zu Java
        • Dekompilierung von Dex zu Smali
        • Prüfung von verdächtigen Konstanten
        • Dekompilierung von Dex zu Jimple
      • Datenfluss Analyse mit FlowDroid
      • Optimierung von FlowDroid
  • Dynamische Analyse
    • Laufzeit injection mit Drozer
    • Schwachstellentests
    • Überwachung von Apps mit Logcat
    • Netzwerküberwachung
  • Anhang: VBS Script FindString.vbs & FindAndroidKonst.vbs
  • Anhang: „,isSession Valid" Methode
  • Benutzerdefiniertes Verzeichnis
    • App Downloader Icon
    • Install
    • ADT installieren 2
    • ADT installieren 3
    • Emulator per Konsole starten
    • Android Debug Monitor
    • Installieren von Apps im Emulator
    • Verfügbare Geräte
    • Santoku
    • GoatDroid Konfiguration
    • GoatDroid App auf virtuellem Device
    • Mitschneiden von Nachrichten
    • SQLite Datenbank in GoatDroid
      • Öffnen von Userinfo.db
      • Datenbankfelder
    • Http Session mit geklauter Session ID
    • URLs in GoatDroid
    • DOS Angriff auf GoatDroid
    • Fenster zur Eingabe eines neuen PINs
    • Apktool Reversing
    • Der Kompiliervorgang in Java
      • JVM
      • Beispiel einer Class Datei
      • Class Datei im Hex-Editor
      • Umwandlung von class zu dex
      • Vergleich von „*.jar“ und „*.dex" Formaten
      • Hex Code von der Beispiel App
      • Apk zu Java
      • Smali Ordnerstruktur
      • Unterschiede Dekompiler
      • Syntax Highlight für Smali
      • Soot Projekt
        • Runnable JAR File
        • GUI für FlowDroid
        • Dekompilierung mit Soot
      • Drozer Server starten
      • Virtuelles Gerät mit Android API 4.0.3
      • Screen Lock
      • Schwachstellentest
      • Logcat GUI
      • Netzwerküberwachung mit Whireshark
      • Http Überwachung mit Fiddler2
        • Fiddler2 Options
  • Kurzfassung
  • Fazit
  • Literaturverzeichnis

Zielsetzung und Themenschwerpunkte

Diese Arbeit befasst sich mit der Analyse von Android Apps auf Schwachstellen. Das Ziel ist es, dem Leser die notwendigen Kenntnisse zu vermitteln, um die Sicherheit von Android Apps beurteilen zu können. Die Arbeit richtet sich vorrangig an Android Administratoren und Entwickler. Die beschriebenen Techniken sollten ausschließlich für eigene Entwicklungen verwendet werden.

  • Grundlagen des Umgangs mit Android und dem Google Play Store
  • Häufige Schwachstellen in Android Apps
  • Methoden zur Analyse von Android Apps
  • Statische und dynamische Analysetechniken
  • Aktuelle Sicherheitsanalysemethoden für Android

Zusammenfassung der Kapitel

Die Einleitung stellt die Voraussetzungen für das Verständnis der Arbeit dar und erläutert die Bedeutung von Java- und Android-Kenntnissen sowie die Verwendung von Git-Repositories. Es wird außerdem erklärt, wie Android Apps heruntergeladen werden können, indem die Apk-Datei aus dem Google Play Store oder vom Gerät geladen wird. Der Apk-Downloader, ein Plugin für den Chrome Browser, wird vorgestellt, das den Download von Apps aus dem Google Play Store direkt auf den PC ermöglicht.

Der Abschnitt "Testumgebung einrichten" beschreibt die notwendigen Komponenten für die Analyse von Android Apps. Die Android Development Tools (ADT) werden als Grundlage für alle Apps und Tools vorgestellt. Die Verwendung von Eclipse mit dem Google Eclipse Plugin wird empfohlen. Für Linux-Benutzer wird das Santoku-System als fertiges System mit vielen Analysetools vorgestellt.

Im Kapitel "Schwachstellen in Android Apps" werden verschiedene Schwachstellen aufgezeigt, die häufig in Android Apps vorkommen. Dazu gehören Unauthorized Intent Receipt, Intent Spoofing, Information Leakage, Backdoor, SSL, DOS und weitere Schwachstellen wie SQL, JavaScript & XML Injection sowie Fragment Injection. Die OWASP Mobile Top 10 Risks werden ebenfalls erwähnt.

Der Abschnitt "Manuelle Analyse" befasst sich mit der Untersuchung der Manifest-Datei und der App-Konfiguration. Die statische Analyse umfasst die Untersuchung von Ressourcen und die Dekompilierung von Dex-Bytecode. Es werden verschiedene Dekompilierungsmethoden vorgestellt, darunter die Dekompilierung von Dex zu Java, Smali und Jimple. Die Datenflussanalyse mit FlowDroid und die Optimierung von FlowDroid werden ebenfalls behandelt.

Das Kapitel "Dynamische Analyse" beschreibt die Laufzeit-Injection mit Drozer, Schwachstellentests, die Überwachung von Apps mit Logcat und die Netzwerküberwachung. Es werden verschiedene Tools vorgestellt, die für die dynamische Analyse von Android Apps verwendet werden können.

Schlüsselwörter

Die Schlüsselwörter und Schwerpunktthemen des Textes umfassen die Analyse von Android Apps, Schwachstellen, Sicherheit, Android Development, Dekompilierung, statische Analyse, dynamische Analyse, Intent Spoofing, Information Leakage, Backdoor, SSL, DOS, SQL Injection, JavaScript Injection, XML Injection, Fragment Injection, OWASP Mobile Top 10 Risks, Drozer, Logcat, Netzwerküberwachung, Apktool, FlowDroid, Santoku, Android Debug Monitor, Google Play Store, Apk-Downloader, Android Development Tools (ADT), Eclipse, Java, Git, Android Manifest, Dex-Bytecode, Smali, Jimple, Ressourcen, App Konfiguration, Sicherheitsanalyse, Android Administratoren, Android Entwickler.

Ende der Leseprobe aus 66 Seiten  - nach oben

Details

Titel
Schwachstellenanalyse & Reverse Engineering von Android Apps
Hochschule
Hochschule Aalen
Autor
Daniel Szameitat (Autor:in)
Erscheinungsjahr
2014
Seiten
66
Katalognummer
V280939
ISBN (eBook)
9783656749547
ISBN (Buch)
9783656749462
Sprache
Deutsch
Schlagworte
Android Google App Security Schwachstellen Entwicklung Analyse
Produktsicherheit
GRIN Publishing GmbH
Arbeit zitieren
Daniel Szameitat (Autor:in), 2014, Schwachstellenanalyse & Reverse Engineering von Android Apps, München, GRIN Verlag, https://www.grin.com/document/280939
Blick ins Buch
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
  • Wenn Sie diese Meldung sehen, konnt das Bild nicht geladen und dargestellt werden.
Leseprobe aus  66  Seiten
Grin logo
  • Grin.com
  • Zahlung & Versand
  • Impressum
  • Datenschutz
  • AGB
  • Impressum