enhancing users’ comprehension of android permissions liu yang, nader boushehrinejad, pallab roy,...

22
Enhancing Users’ Comprehension of Android Permissions Liu Yang , Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer Science Rutgers University

Upload: javier-crissey

Post on 01-Apr-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Enhancing Users’ Comprehension of Android Permissions

Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode

Department of Computer ScienceRutgers University

Page 2: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Android Apps

Social networking

Gaming

Entertainment

Communication

Transportation

Sports…

Online shopping

Page 3: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Resources on Android

Page 4: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

App-based Permission Model: An Example

This app requests the following resources:Your accounts, your locations, your messages, network communication, your personal information, phone calls, system tools, …(39 permission in total)

App installed if user approves the request

No install if user rejects the request

Page 5: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Users Puzzled by Permissions

• 3% of users correctly answer three permission questions [Felt. et al. SOUPS’12, Kelly et al., USEC’12]– A lot of permissions defined (134, Android 2.2)– Not always self-explanatory, e.g.,

SUBSCRIBED_FEEDS_READ, WRITE_SYN_SETTINGS, …

• Confusion exists for developers [Felt et al. CCS’11]

Page 6: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Permission Misuse

LocationsIMEI ContactsIMEI

Phone number

com.antivirus com.kayak.android com.taskos com.kakao.talk com.myyearbook.m

[Hornyack et al., AppFence, CCS’11]

[Lin et al., Ubicom’12]

Locations: 45/110 apps

IMEI: 31/110 apps

Contacts: 7/110 apps

Phone#: 5/110 apps

com.facebook

Contacts

Page 7: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Our Contribution

• Enhancing users’ comprehension of permissions using crowdsourcing– Permission usage commented by app users– Permission comments shared among users

• Designing Droidganger which provides clues of permission usage– Record/replay + permission suppression

• Feasibility study

Page 8: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Architecture Overview

Permission comments

Permission comments

Permission comments

Comments Processing Server (CPS)

Droidganger

Droidganger

Droidganger

Permission comments aggregation and presentation

Internet

Page 9: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Crowdsourcing

• Users of same apps form user communities• Users use Droidganger to help permission

understanding• Each user reviews one permission (small task)• More users

– more permissions covered– more execution paths covered– more apps covered

Page 10: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Intuition of Droidganger

Permission changes

Capability changes

App behavior changes

Q: Behavior changes visible or understandable?

Q: How to capture changes? A: Record/replay + permission suppression

Page 11: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Overview of Droidganger

Record(all permissions

granted)

Replay(a permission suppressed)

Deviation Detection

User inputs permission comments

Execution trace

To Comment Processing Server

Page 12: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Record and Replay

• Record app execution– non-deterministic inputs and events, e.g.,

keystrokes, touches/drags, etc. (saved as a trace)– outputs, e.g., screenshots, etc.

• Replay a trace– each time a different permission suppressed– snapshots taken for comparison

Page 13: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Deviation Detection

SnapshotsSnapshotsSnapshots

SnapshotsSnapshotsSnapshots

Record phase Replay phase

Difference detector

User comments on detected difference

Page 14: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Comment Processing Server

Comments grouped by apps and permissions

Comments aggregation

Comments presented for pubic access

Page 15: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Feasibility Study

• Implementation of Droidganger– Android 4.0 + Emulator– Record: Intercepting KeyEvents and MotionEvents– Compiling events to Python scripts– Replaying scripts with Monkeyrunner

• Data Sets– AngryBirds Rio (6 permissions)– Antivirus (39 permissions)

Page 16: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Observations

Pairs of screenshots of AngryBirds

(a) Record stage (all requested permissions granted)

(b) Replay stage (INTERNET permission suppressed)

Page 17: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Observations (cont.)

Record Replay

(all requested permissions granted)

WRITE_SYNC_SETTINGS permission suppressed

Page 18: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Observations (cont.)Summary of observed effects with replay + permission suppression

Meaningful: permission suppression provides helpful clues of purposes of permissionsCrashed: app crashed due to permission suppressionSyslog only: execution deviation was only captured by syslogNone: no difference was observed with permission suppression

Page 19: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Challenges

• Network proxy: recording network traffic• Randomness, e.g., card games, etc.• Non-repeatable execution, e.g., online

payments, etc.• Application failure when permission

suppressed• User incentives

Page 20: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Comparison to Privacy as Expectations (PAE) [Lin et al., Ubicomp’12]

capturing users’ expectations on privacy

PAE Our work

Goals: improving users’ comprehension of permissions

Objects: Access to privacy related resources

Permissions requested by apps

Techs: CrowdsourcingTaintDroidNew interfaces

CrowdsourcingRecord/replay +Permission suppression

Page 21: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Related Work

• Information flow and permission misuse– AppFence [Hornyack et al., CCS’11]– TaintDroid [Enck et al., OSDI’10]– Permission demystified [Felt et al., CCS’11]

• Privacy-preserving– Apex [Nauman et al., AsiaCCS’10]– MockDroid [Beresford et al., Hotmobile’11]

• Permission comprehension and attention– [Felt et al., SOUPS’12], [Kelley et al., USEC’12]– [Lin et al., Ubicom’12]

Page 22: Enhancing Users’ Comprehension of Android Permissions Liu Yang, Nader Boushehrinejad, Pallab Roy, Vinod Ganapathy, Liviu Iftode Department of Computer

Conclusion

• Crowdsourcing– Collections of users help each other on permission

understanding• Record/replay + permission suppression:

– Changes of app behavior provide clues of permission usage

• Feasibility study– Droidganger providing helpful clues on permission

usage