Static Analysis for Extracting Permission Checks of a Large Scale Framework: The Challenges And Solutions for Analyzing Android
Alexandre Bartel (SnT), Jacques Klein (SnT), Martin Monperrus (INRIA, Lille - Nord Europe), Yves Le Traon (SnT)

TL;DR
This paper addresses the challenge of accurately extracting permission checks in Android frameworks using advanced static analysis techniques, overcoming limitations of naive methods.
Contribution
It introduces a novel class-hierarchy and field-sensitive static analysis tailored for Android to improve permission mapping accuracy.
Findings
Naive static analysis fails on Android framework.
Proposed analyses successfully extract permission mappings.
Android-specific optimizations enhance analysis precision.
Abstract
A common security architecture is based on the protection of certain resources by permission checks (used e.g., in Android and Blackberry). It has some limitations, for instance, when applications are granted more permissions than they actually need, which facilitates all kinds of malicious usage (e.g., through code injection). The analysis of permission-based framework requires a precise mapping between API methods of the framework and the permissions they require. In this paper, we show that naive static analysis fails miserably when applied with off-the-shelf components on the Android framework. We then present an advanced class-hierarchy and field-sensitive set of analyses to extract this mapping. Those static analyses are capable of analyzing the Android framework. They use novel domain specific optimizations dedicated to Android.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
