On Demystifying the Android Application Framework: Re-Visiting Android Permission Specification Analysis

Abstract

In contrast to the Android application layer, Android’s application framework’s internals and their influence on the platform security and user privacy are still largely a black box for us. In this paper, we establish a static runtime model of the application framework in order to study its internals and provide the first high-level classification of the framework’s protected resources. We thereby uncover design patterns that differ highly from the runtime model at the application layer. We demonstrate the benefits of our insights for security-focused analysis of the framework by re-visiting the important use-case of mapping Android permissions to framework/SDK API methods. We, in particular, present a novel mapping based on our findings that significantly improves on prior results in this area that were established based on insufficient knowledge about the framework’s internals. Moreover, we introduce the concept of permission locality to show that although framework services follow the principle of separation of duty, the accompanying permission checks to guard sensitive operations violate it.

View Slides

Extracted Key Phrases

9 Figures and Tables

Cite this paper

@inproceedings{Backes2016OnDT, title={On Demystifying the Android Application Framework: Re-Visiting Android Permission Specification Analysis}, author={Michael Backes and Sven Bugiel and Erik Derr and Patrick D. McDaniel and Damien Octeau and Sebastian Weisgerber}, booktitle={USENIX Security Symposium}, year={2016} }