Papilio: ¡Visualizing ¡Android ¡ Applica3on ¡Permissions ¡ Mona ¡Hosseinkhani, ¡Philip ¡W.L. ¡Fong, ¡Sheelagh ¡Carpendale ¡ {hossem, ¡pwlfong, ¡sheelagh}@ucalgary.ca ¡ University ¡of ¡Calgary, ¡AB, ¡Canada ¡
Papilio 2 ¡
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 3 ¡
Android Application Dataset Request ¡for ¡applica3on ¡APKs ¡ Applica3on ¡APKs ¡ Data ¡Extrac3ons ¡ My ¡applica3on ¡ informa3on ¡ database ¡ 4 ¡
Android Permissions Permissions ¡ Android ¡Permissions ¡protec3on ¡ levels ¡ ¡ Resource ¡ Opera3ons ¡ ¡ Normal ¡ ¡ ¡ Dangerous ¡ • Normal (e.g. SET_WALLPAPER, VIBRATE) • Dangerous (e.g. READ_CONTACTS, Signature ¡ RECORD_AUDIO) • Signature (e.g. BRICK) SignatureOrSystem ¡ • SignatureOrSystem (e.g. INSTALL_PACKAGES) 5 ¡
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 6 ¡
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 • … 7 ¡
Iterative Design Approach 3 iterations • Force-directed based • Sugiyama based • Papilio 8 ¡
Papilio - Components Rela3on ¡Among ¡Android ¡Applica3ons ¡ Applica3on ¡e-‑classes ¡ Applica3on ¡Permissions ¡ 9 ¡
Papilio – Components (Cont.) Parent ¡e-‑class ¡ Inherited ¡Permissions ¡ Parent-‑Child ¡Rela3on ¡ Not ¡inherited ¡Permissions ¡ Child ¡e-‑classes ¡ 10 ¡
Papilio Body Permissions ¡appeared ¡for ¡the ¡first ¡3me ¡ Sample ¡ ¡e-‑class ¡ 11 ¡
Interactions • Pan and zoom • Selection • Application • Permission • Search Permission ID = 125 Permission Name = Android.Permission.WRITE_SECURE_SETTINGS Protection Level = SignatureOrSyatem • Slide on Halo 12 ¡
Papilio – Slide on Halo Off ¡Screen ¡Parents ¡ Off ¡Screen ¡Children ¡ [Halo] ¡BAUDISCH ¡P., ¡ROSENHOLTZ ¡R.: ¡Halo: ¡a ¡technique ¡for ¡visualizing ¡off-‑ 13 ¡ screen ¡objects. ¡In ¡Proceedings ¡of ¡the ¡ACM ¡SIGCHI ¡(2003), ¡pp. ¡481–488. ¡
Findings by Papilio 1. Signature or SignatureOrSystem permissions are used by some third-party applications • (12 apps requesting dangerous permissions) 14 ¡
Findings by Papilio (Cont.) 2. Little correlation between categories defined by Google and application permission requests Game Apps Game Apps Game App 15 ¡
Findings by Papilio (Cont.) 4. Exploring categories requesting more or less permissions • e.g., Communication, medical. 16 ¡
Findings by Papilio (Cont.) 5. Frequency of requested permissions • (55 out of 133 permissions not requested at all) 17 ¡
Selected Contributions of Papilio • Papilio: Two-sided visualization for demonstrating Android applications and permissions • Interaction technique: Slide on Halo • Security findings from exploring Papilio 18 ¡
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 • … 19 ¡
Acknowledgement • Dr. Tim Dwyer for his thoughtful comments 20 ¡
Thank ¡You ¡! ¡ Mona ¡Hosseinkhani ¡| ¡hossem ¡@ucalgary.ca ¡ Philip ¡W.L. ¡Fong ¡| ¡pwlfong@ucalgary.ca ¡ Sheelagh ¡Carpendale ¡| ¡sheelagh@ucalgary.ca ¡ ¡ ¡ 21 ¡ ¡
Recommend
More recommend