investigating user privacy in android ad libraries · analyze popular android ad libraries for...

69
Investigating User Privacy in Android Ad Libraries Ryan Stevens, Clint Gibler, Jon Crussell, Jeremy Erickson Hao Chen UC Davis Computer Security Lab 1

Upload: others

Post on 08-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Investigating User Privacy in Android Ad Libraries

Ryan Stevens, Clint Gibler, Jon Crussell, Jeremy EricksonHao Chen

UC Davis Computer Security Lab

1

Page 2: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Motivation

2

Page 3: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Motivation

?

3

Page 4: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Motivation

✓Previous work has focused on thetrustworthiness of application code:• TaintDroid - Enck, “OSDI 2010”

• AndroidLeaks - Gibler, “Trust 2012”

4

Page 5: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Motivation

? But what about ad code?

5

Page 6: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Goals

• Identify unique privacy concerns in Android app advertising

• Discover privacy threats resulting from these concerns

• Analyze popular Android ad libraries for these threats

• Propose guidelines to alleviate these threats

6

Page 7: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Goals

• Identify unique privacy concerns in Android app advertising

• Discover privacy threats resulting from these concerns

• Analyze popular Android ad libraries for these threats

• Propose guidelines to alleviate these threats

6

Page 8: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Goals

• Identify unique privacy concerns in Android app advertising

• Discover privacy threats resulting from these concerns

• Analyze popular Android ad libraries for these threats

• Propose guidelines to alleviate these threats

6

Page 9: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Goals

• Identify unique privacy concerns in Android app advertising

• Discover privacy threats resulting from these concerns

• Analyze popular Android ad libraries for these threats

• Propose guidelines to alleviate these threats

6

Page 10: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Goals

• Identify unique privacy concerns in Android app advertising

• Discover privacy threats resulting from these concerns

• Analyze popular Android ad libraries for these threats

• Propose guidelines to alleviate these threats

6

Page 11: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Permissions

• Specified by the application

• Allows the app to access privileged device functionality

• Examples of permissions are:• internet• access fine location• access network state

7

Page 12: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Permissions

• Specified by the application

• Allows the app to access privileged device functionality

• Examples of permissions are:• internet• access fine location• access network state

7

Page 13: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Permissions

• Specified by the application

• Allows the app to access privileged device functionality

• Examples of permissions are:• internet

• access fine location• access network state

7

Page 14: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Permissions

• Specified by the application

• Allows the app to access privileged device functionality

• Examples of permissions are:• internet• access fine location

• access network state

7

Page 15: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Permissions

• Specified by the application

• Allows the app to access privileged device functionality

• Examples of permissions are:• internet• access fine location• access network state

7

Page 16: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Application Advertising

App APK

Ad Library

SDK

8

Page 17: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Application Advertising

App APK

Ad Library

SDK

Ad Server

Ad Request

9

Page 18: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Application Advertising

App APK

Ad Library

SDK

Ad Server

Ad Request

Advertisement

10

Page 19: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Threat Model

InternetProfile Data

(Device ID, GPS,

phone type...)Device

Ad Provider

11

Page 20: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Threat Model - Unscrupulous Ad Provider

InternetProfile Data

(Device ID, GPS,

phone type...)Device

Ad Provider

12

Page 21: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Threat Model - Network Snooper

InternetProfile Data

(Device ID, GPS,

phone type...)

Ad Provider

Network Snooper

Device

13

Page 22: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code• No same origin policy

2. Greater access to detailed user data• SMS, calendar, etc.

3. More persistent user identifiers• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

14

Page 23: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code• No same origin policy

2. Greater access to detailed user data• SMS, calendar, etc.

3. More persistent user identifiers• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

14

Page 24: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code• No same origin policy

2. Greater access to detailed user data• SMS, calendar, etc.

3. More persistent user identifiers• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

14

Page 25: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code• No same origin policy

2. Greater access to detailed user data• SMS, calendar, etc.

3. More persistent user identifiers• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

14

Page 26: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code

• No same origin policy

2. Greater access to detailed user data

• SMS, calendar, etc.

3. More persistent user identifiers

• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

15

Page 27: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Required

Optional

Ad Provider Documentation

* Stowaway

16

Page 28: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Required

Optional

Ad Provider Documentation

All Permissions

Ad Provider

SDK

Stowaway*

* A.P. Felt et al. Android Permissions Demystified. “CCS 2011”

17

Page 29: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Required

Optional

Ad Provider Documentation

All Permissions Undocumented

Ad Provider

SDK

Stowaway*

– =

* A.P. Felt et al. Android Permissions Demystified. “CCS 2011”

18

Page 30: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Ad Library (version) INTERNET

ACCESS

NET

STATE

READ

PHONE

STATE

ACCESS

LOCATIO

N

CAMERA

READ

CALENDAR

WRIT

ECALENDAR

READ

CONTACTS

WRIT

ECONTACTS

admob (4.3.1)

r r

inmobi (3.0.1)

r o o x x

millennialmedia (4.5.1)

r r r o

mobclix (3.2.0)

r o r x x x x x x

smaato (2.5.4)

r r r o

R = Required O = Optional X = Undocumented

19

Page 31: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Ad Library (version) INTERNET

ACCESS

NET

STATE

READ

PHONE

STATE

ACCESS

LOCATIO

N

CAMERA

READ

CALENDAR

WRIT

ECALENDAR

READ

CONTACTS

WRIT

ECONTACTS

admob (4.3.1) r rinmobi (3.0.1) r

o o x x

millennialmedia (4.5.1) r r r

o

mobclix (3.2.0) r

o

r

x x x x x x

smaato (2.5.4) r r r

o

R = Required

O = Optional X = Undocumented

19

Page 32: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Ad Library (version) INTERNET

ACCESS

NET

STATE

READ

PHONE

STATE

ACCESS

LOCATIO

N

CAMERA

READ

CALENDAR

WRIT

ECALENDAR

READ

CONTACTS

WRIT

ECONTACTS

admob (4.3.1) r rinmobi (3.0.1) r o o

x x

millennialmedia (4.5.1) r r r omobclix (3.2.0) r o r

x x x x x x

smaato (2.5.4) r r r o

R = Required O = Optional

X = Undocumented

19

Page 33: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Undocumented Permissions

Ad Library (version) INTERNET

ACCESS

NET

STATE

READ

PHONE

STATE

ACCESS

LOCATIO

N

CAMERA

READ

CALENDAR

WRIT

ECALENDAR

READ

CONTACTS

WRIT

ECONTACTS

admob (4.3.1) r rinmobi (3.0.1) r o o x x

millennialmedia (4.5.1) r r r omobclix (3.2.0) r o r x x x x x xsmaato (2.5.4) r r r o

R = Required O = Optional X = Undocumented

19

Page 34: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code

• No same origin policy

2. Greater access to detailed user data

• SMS, calendar, etc.

3. More persistent user identifiers

• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

20

Page 35: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Goal: Discover if private data is sent in ad requests

Method: Observed ad requests from each library in

• Android emulator

• Live traffic

21

Page 36: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Goal: Discover if private data is sent in ad requests

Method: Observed ad requests from each library in

• Android emulator

• Live traffic

21

Page 37: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Ad Library (version) AppPackageName

GPSCoordinates

ConnectionTyp

e

DeviceMake

andModel

WirelessCarrier

Age

Gen

der

Inco

meLevel

Keywords

admob (4.3.1)

a d d d d

inmobi (3.0.1)

a p p a d d d

millennialmedia (4.5.1)

d d d d

mobclix (3.2.0)

p d

smaato (2.5.4)

a p p p d d d d

A = Always automatically P = Automatically, with permissionsD = Developer chosen

22

Page 38: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Ad Library (version) AppPackageName

GPSCoordinates

ConnectionTyp

e

DeviceMake

andModel

WirelessCarrier

Age

Gen

der

Inco

meLevel

Keywords

admob (4.3.1) a

d d d d

inmobi (3.0.1) a

p p

a

d d d

millennialmedia (4.5.1)

d d d d

mobclix (3.2.0)

p d

smaato (2.5.4) a

p p p d d d d

A = Always automatically

P = Automatically, with permissionsD = Developer chosen

22

Page 39: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Ad Library (version) AppPackageName

GPSCoordinates

ConnectionTyp

e

DeviceMake

andModel

WirelessCarrier

Age

Gen

der

Inco

meLevel

Keywords

admob (4.3.1) a

d d d d

inmobi (3.0.1) a p p a

d d d

millennialmedia (4.5.1)

d d d d

mobclix (3.2.0) p

d

smaato (2.5.4) a p p p

d d d d

A = Always automatically P = Automatically, with permissions

D = Developer chosen

22

Page 40: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Private Data on the Network

Ad Library (version) AppPackageName

GPSCoordinates

ConnectionTyp

e

DeviceMake

andModel

WirelessCarrier

Age

Gen

der

Inco

meLevel

Keywords

admob (4.3.1) a d d d dinmobi (3.0.1) a p p a d d d

millennialmedia (4.5.1) d d d dmobclix (3.2.0) p dsmaato (2.5.4) a p p p d d d d

A = Always automatically P = Automatically, with permissionsD = Developer chosen

22

Page 41: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Unique Privacy Concerns in Android App Advertising

1. No privilege separation between app and ad code

• No same origin policy

2. Greater access to detailed user data

• SMS, calendar, etc.

3. More persistent user identifiers

• UDIDs – ANDROID ID, DEVICE ID (IMEI, MEID, ...)• More persistent than Web cookies and IP addresses

23

Page 42: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

Device

App 1

App 2

App 3

24

Page 43: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

SHA-1(UDID)

SHA-1(UDID) Ad Provider

Device

App 1

App 2SHA-1(UDID)App 3

Internet

25

Page 44: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

SHA-1(UDID)

SHA-1(UDID) Ad Provider

Device

App 1

App 2SHA-1(UDID)App 3

Internet

Network Snooper

26

Page 45: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

Device

App 3

App 1

App 2

27

Page 46: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

UDID

MD5(UDID) Ad Provider

2

Device

SHA-1(UDID)App 3

Internet

Ad Provider

1

Ad Provider

3

App 1

App 2

28

Page 47: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

UDID

MD5(UDID) Ad Provider

2

Device

SHA-1(UDID)App 3

Internet

Network Snooper

Ad Provider

1

Ad Provider

3

App 1

App 2

29

Page 48: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Tracking Users

Ad Library (version) DEVICEID

ANDROIDID

md5(ANDROIDID)

sha1(ANDROIDID)

admob (4.3.1) x

inmobi (3.0.1) x x

millenialmedia (4.5.1) x x x

mobclix (3.2.0) x x

smaato (2.5.1) x x

30

Page 49: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Hashing Device Identifiers

Prevent correlating ad requests across multiple ad providers:

hash(ad provider || UDID)

Prevent correlating ad requests across multiple applications:

hash(ad provider || package name || UDID)

31

Page 50: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Hashing Device Identifiers

Prevent correlating ad requests across multiple ad providers:

hash(ad provider || UDID)

Prevent correlating ad requests across multiple applications:

hash(ad provider || package name || UDID)

31

Page 51: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Hashing Device Identifiers

Prevent correlating ad requests across multiple ad providers:

hash(ad provider || UDID)

Prevent correlating ad requests across multiple applications:

hash(ad provider || package name || UDID)

31

Page 52: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Encrypting Ad Requests

Problem: SSL is expensive and allows for less concurrency on theserver

Desirable properties of advertising encryption:

• Low overhead - minimal session state

• Lightweight - preferrably symmetric key

32

Page 53: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Encrypting Ad Requests

Problem: SSL is expensive and allows for less concurrency on theserver

Desirable properties of advertising encryption:

• Low overhead - minimal session state

• Lightweight - preferrably symmetric key

32

Page 54: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Encrypting Ad Requests

Problem: SSL is expensive and allows for less concurrency on theserver

Desirable properties of advertising encryption:

• Low overhead - minimal session state

• Lightweight - preferrably symmetric key

32

Page 55: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Encrypting Ad Requests

Problem: SSL is expensive and allows for less concurrency on theserver

Desirable properties of advertising encryption:

• Low overhead - minimal session state

• Lightweight - preferrably symmetric key

32

Page 56: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Separating Ad and App Code

Splitting library and application code is not trivial in the Androidframework

Potential solutions:

• AdDroid – “Asia CCS 2012”

• AdSplit – “ArXiv preprint 2012”

33

Page 57: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Separating Ad and App Code

Splitting library and application code is not trivial in the Androidframework

Potential solutions:

• AdDroid – “Asia CCS 2012”

• AdSplit – “ArXiv preprint 2012”

33

Page 58: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Separating Ad and App Code

Splitting library and application code is not trivial in the Androidframework

Potential solutions:

• AdDroid – “Asia CCS 2012”

• AdSplit – “ArXiv preprint 2012”

33

Page 59: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 60: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code

• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 61: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions

• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 62: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 63: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data

• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 64: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network

• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 65: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 66: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers

• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 67: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time

• Solution: Proper hashing, lightweight encryption

34

Page 68: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Conclusions

1. No privilege separation between app and ad code• Problem: Undocumented permissions• Solution: AdDroid, AdSplit

2. Greater access to detailed user data• Problem: Private user data on network• Solution: Lightweight encryption

3. More persistent user identifiers• Problem: Correlating user profile data over time• Solution: Proper hashing, lightweight encryption

34

Page 69: Investigating User Privacy in Android Ad Libraries · Analyze popular Android ad libraries for these threats Propose guidelines to alleviate these threats 6. Permissions Speci ed

Questions/Comments?

Presenter:

Ryan [email protected]

35