Intents sind ein Message-Passing-Mechanismus, der in Android-Anwendungen benutzt wird, um andere Komponenten sowohl innerhalb derselben Anwendung, als auch in anderen Anwendungen zu starten und Daten in Form von Key-Value-Datenbanken verschickt werden. Für eine präzise und möglichst vollständige statische Analyse von Android-Anwendungen ist es daher essentiell, insbesondere Intents näher zu analysieren.
In dieser Arbeit soll eine statische Analyse-Methoden entwickelt und evaluiert werden, welche in einer gegebenen Android-Anwendung diejenigen Stellen identifiziert, an denen Intents gesendet werden könnten und zu gegebenem Intent die folgenden Fragen möglichst präzise beantwortet:
- Welche Komponenten könnten den Intent empfangen?
- Welche Daten könnten mitgeschickt werden?
Mögliche Techniken, die eingesetzt werden könnten, umfassen unter anderem:
- String-Analyse
- (speziell angepasste) Points-To-Analyse
Alle entwickelten Analysen sollen in WALA, einem Open-Source-Programmanalyse-Framework von IBM, implementiert werden. Bei erfolgreichem Abschluss der Arbeit kann das Ergebnis in WALA integriert werden und somit beispielsweise für das am Lehrstuhl entwickelte Informationsflusskontroll-Werkzeug JOANA verfügbar gemacht werden.
Schlüsselworte
Programmanalyse, Android, Intents
Veröffentlichungen
Betreuer
Studenten