Papilio: Visualizing Android Applica3on Permissions Mona - - PowerPoint PPT Presentation
Papilio: Visualizing Android Applica3on Permissions Mona - - PowerPoint PPT Presentation
Papilio: Visualizing Android Applica3on Permissions Mona Hosseinkhani, Philip W.L. Fong, Sheelagh Carpendale {hossem, pwlfong, sheelagh}@ucalgary.ca University of Calgary,
2 ¡
Papilio
3 ¡
Why Visualize Android Data
- Android apps use permissions
to access people private data
- 27 billion total Android app
downloads, March 2014.
- Explore how Android
applications request permissions in practice
4 ¡
Android Application Dataset
My ¡applica3on ¡ informa3on ¡ database ¡ Data ¡Extrac3ons ¡ Request ¡for ¡applica3on ¡APKs ¡ Applica3on ¡APKs ¡
5 ¡
Android Permissions
- Normal (e.g. SET_WALLPAPER, VIBRATE)
- Dangerous (e.g. READ_CONTACTS,
RECORD_AUDIO)
- Signature (e.g. BRICK)
- SignatureOrSystem (e.g.
INSTALL_PACKAGES) Permissions ¡ ¡ ¡ ¡ ¡
Opera3ons ¡
Resource ¡ Normal ¡ Dangerous ¡ Signature ¡ SignatureOrSystem ¡
Android ¡Permissions ¡protec3on ¡ levels ¡
6 ¡
Settings in All Iterations
- Application color = category
- Permission color = protection level
- Equivalence class (e-class)
- Relations
- Superset/subset
- Relations between apps
- E-class and requested
permissions
7 ¡
Requirements by Security Analysts
- Explicit Tasks
- Identify permissions per app
- Find the protection level of each requested permission
by an app.
- Identify the category of each Android application (e.g.
Business, Finance, Social, etc.)
- Implicit Tasks
- Correlation between app category and their permissions.
- Investigate how the gradual increase in permission
usage changes the category of applications.
- Find the most frequently requested permissions
- …
8 ¡
Iterative Design Approach
3 iterations
- Force-directed based
- Sugiyama based
- Papilio
9 ¡
Papilio - Components
Rela3on ¡Among ¡Android ¡Applica3ons ¡ Applica3on ¡e-‑classes ¡ Applica3on ¡Permissions ¡
10 ¡
Papilio – Components (Cont.)
Parent-‑Child ¡Rela3on ¡ Inherited ¡Permissions ¡ Parent ¡e-‑class ¡ Child ¡e-‑classes ¡ Not ¡inherited ¡Permissions ¡
11 ¡
Papilio Body
Sample ¡ ¡e-‑class ¡ Permissions ¡appeared ¡for ¡the ¡first ¡3me ¡
12 ¡
Interactions
- Pan and zoom
- Selection
- Application
- Permission
- Search
- Slide on Halo
Permission ID = 125 Permission Name = Android.Permission.WRITE_SECURE_SETTINGS Protection Level = SignatureOrSyatem
13 ¡
Papilio – Slide on Halo
Off ¡Screen ¡Parents ¡ Off ¡Screen ¡Children ¡ [Halo] ¡BAUDISCH ¡P., ¡ROSENHOLTZ ¡R.: ¡Halo: ¡a ¡technique ¡for ¡visualizing ¡off-‑ screen ¡objects. ¡In ¡Proceedings ¡of ¡the ¡ACM ¡SIGCHI ¡(2003), ¡pp. ¡481–488. ¡
14 ¡
Findings by Papilio
- 1. Signature or SignatureOrSystem
permissions are used by some third-party applications
- (12 apps requesting dangerous permissions)
15 ¡
Findings by Papilio (Cont.)
- 2. Little correlation between categories defined
by Google and application permission requests
Game Apps Game Apps Game App
16 ¡
Findings by Papilio (Cont.)
- 4. Exploring categories
requesting more or less permissions
- e.g., Communication,
medical.
17 ¡
Findings by Papilio (Cont.)
- 5. Frequency of
requested permissions
- (55 out of 133
permissions not requested at all)
18 ¡
Selected Contributions of Papilio
- Papilio: Two-sided visualization for
demonstrating Android applications and permissions
- Interaction technique: Slide on Halo
- Security findings from exploring Papilio
19 ¡
Applicability in Other Domains
- Visualization of other permission-based
systems
- Facebook applications
- Chrome extensions
- Visualizing superset/subset relations among
many-valued entities
- Disease and their symptoms
- Food nutrition facts
- …
20 ¡
Acknowledgement
- Dr. Tim Dwyer for his thoughtful comments
21 ¡
Thank ¡You ¡! ¡
Mona ¡Hosseinkhani ¡| ¡hossem ¡@ucalgary.ca ¡ Philip ¡W.L. ¡Fong ¡| ¡pwlfong@ucalgary.ca ¡ Sheelagh ¡Carpendale ¡| ¡sheelagh@ucalgary.ca ¡ ¡ ¡ ¡