Kirchner, A. (2011). Data leak detection in smartphone applications [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-45963
data leak detection; taint tracking; privacy; data security; smartphone; software analysis; symbolic execution; virtualization; Android; third party application
en
Abstract:
Wenn eine Benutzerin eine Smartphoneanwendung von Drittanbietern installiert, weiß sie vorher nicht ob sensible, auf dem Smartphone gespeicherte, Daten - wie etwa Daten über ihren aktuellen Aufenthaltsort, die eindeutige Geräte ID oder sogar Daten über ihren Gesundheitszustand - ihr Telefon verlassen. Das wirft Bedenken bezüglich Privacy und Datensicherheit auf, da Smartphones im beruflichen und privaten Alltag immer häufiger eingesetzt werden.<br />Diese Diplomarbeit beschäftigt sich mit dem Design und der Implementierung eines Prototyps von Leakalizer, einem Tool zur automatischen Erkennung von Datenlecks in Smartphoneanwendungen. Das geschieht in drei Schritten: Zuerst führt Leakalizer eine gründliche Untersuchung der Ausführungspfade der Zielapplikation durch. Danach werden sensible Daten für jeden Ausführungspfad verfolgt. Schließlich meldet Leakalizer wenn sensible Daten das Smartphone verlassen. Der Prototyp erstellt ein virtuelles Smartphone auf einem Desktop PC um den Android Software Stack zu starten, er wendet symbolische Ausführung an um Ausführungspfade der Zielapplikation zu traversieren, und er benutzt Dynamic Taint Tracking um das Versenden von sensiblen Daten zu erkennen.<br />Leakalizer demonstriert wie die systematische Untersuchung von Ausführungspfaden in Smartphoneanwendungen verwendet werden kann um Datenlecks sichtbar zu machen. Dies hilft Benutzerinnen und Organisationen die Vertrauenswürdigkeit von Applikationen von Drittanbietern zu bewerten.<br />
de
When a user installs a third party application on her smartphone, she does not know in advance whether sensitive data - like her current location, the unique device ID or even data about her health condition - leaves the phone. This raises new concerns about privacy and data security, since more and more people are using smartphones in private and business life.<br />In this thesis, we design and implement a prototype of Leakalizer, a tool to automatically detect data leaks in smartphone applications in three steps. First, Leakalizer thoroughly explores execution paths of the target application. Then, for each path, it traces sensitive data.<br />Finally, Leakalizer reports all sensitive data that leaves the smartphone. The prototype emulates a smartphone device on a desktop PC to run the Android software stack, applies symbolic execution to traverse execution paths of the target application, and uses dynamic taint tracking to detect transmissions of sensitive data.<br />Leakalizer demonstrates how a thorough exploration of execution paths in a smartphone application can be used to make data leaking behavior visible, which helps users and organizations to assess the trustworthiness of a given application.