and privacy protec5on on the web
play

and privacy protec5on on the Web Nataliia Bielova Inria - PowerPoint PPT Presentation

Web tracking technologies and privacy protec5on on the Web Nataliia Bielova Inria Rennes, 25 October 2013 Back in 1993 2 Today Web


  1. Web ¡tracking ¡technologies ¡ and ¡privacy ¡protec5on ¡on ¡the ¡Web ¡ Nataliia ¡Bielova ¡ ¡ Inria ¡Rennes, ¡ 25 ¡October ¡2013 ¡ ¡

  2. Back ¡in ¡1993… ¡ 2 ¡

  3. Today… ¡ Web ¡Tracking ¡ AdverJse.com ¡ Tracker.com ¡ Bigger ¡browsing ¡profiles ¡ ¡ ¡ ¡ ¡ = ¡increased ¡value ¡for ¡trackers ¡ Doubleclick.com ¡ = ¡reduced ¡privacy ¡for ¡users ¡ ¡ (HypotheJcal ¡tracking ¡relaJonships ¡only.) ¡ Courtesy ¡of ¡Franziska ¡Roesner ¡ 3 ¡

  4. Today… ¡ Web ¡Tracking ¡ AdverJse.com ¡ MyAd.com ¡ Tracker.com ¡ YourAd.com ¡ Doubleclick.com ¡ (HypotheJcal ¡tracking ¡relaJonships ¡only.) ¡ 4 ¡

  5. In ¡this ¡talk… ¡ § What ¡is ¡Web ¡Tracking? ¡ • How ¡does ¡it ¡work? ¡ ¡ • Its ¡basic ¡components ¡ § How ¡to ¡protect ¡your ¡privacy ¡on ¡the ¡Internet? ¡ • What ¡kind ¡of ¡defenses ¡you ¡can ¡set ¡in ¡your ¡browser? ¡ ¡ • Are ¡they ¡effecJve? ¡ • Which ¡research ¡soluJons ¡are ¡proposed? ¡ • What ¡about ¡EU ¡laws ¡and ¡regulaJons? ¡ 5 ¡

  6. HTTP ¡protocol ¡is ¡stateless ¡ URL ¡path: ¡bbc.co.uk/news... ¡ URL ¡path: ¡bbc.co.uk/news ¡ Method: ¡GET Parameters ¡ ¡ ¡ Web ¡browser ¡ Web ¡server ¡ Cookies: ¡session-­‑id= 2082787201l ¡& ¡… ¡ Method: ¡GET ¡ … ¡ … ¡ HTTP ¡request ¡ HTTP ¡response ¡ Status: ¡200 ¡OK ¡ Content: ¡HTML ¡page ¡ Cookie ¡Database ¡ Set-­‑cookies: ¡session-­‑id= 2082787201l ¡& ¡… ¡ bbc.co.uk/news: ¡ … ¡ session-id=2082787201l -­‑ ¡Mapping ¡requests ¡to ¡apps ¡ -­‑ ¡Rendering ¡pages ¡ -­‑ ¡ContacJng ¡DBs ¡ -­‑ ¡ExecuJng ¡scripts/plugins ¡ -­‑ ¡ConstrucJng ¡responses ¡ (JavaScript) ¡ ¡ -­‑ ¡Launching ¡new ¡HTTP ¡requests ¡ 6 ¡

  7. HTTP ¡protocol ¡is ¡stateless ¡ URL ¡path: ¡bbc.co.uk/news... ¡ URL ¡path: ¡bbc.co.uk/news ¡ Method: ¡GET Parameters ¡ ¡ ¡ High-­‑level ¡point: ¡ ¡ Web ¡browser ¡ Web ¡server ¡ Cookies: ¡session-­‑id= 2082787201l ¡& ¡… ¡ Method: ¡GET ¡ HTTP ¡cookies ¡ are ¡useful ¡for ¡web ¡session ¡handling, ¡but ¡ … ¡ … ¡ also ¡ can ¡be ¡used ¡to ¡track ¡users. ¡ HTTP ¡request ¡ HTTP ¡response ¡ Status: ¡200 ¡OK ¡ Content: ¡HTML ¡page ¡ Cookie ¡Database ¡ Set-­‑cookies: ¡session-­‑id= 2082787201l ¡& ¡… ¡ bbc.co.uk/news: ¡ … ¡ session-id=2082787201l -­‑ ¡Mapping ¡requests ¡to ¡apps ¡ -­‑ ¡Rendering ¡pages ¡ -­‑ ¡ContacJng ¡DBs ¡ -­‑ ¡ExecuJng ¡scripts/plugins ¡ -­‑ ¡ConstrucJng ¡responses ¡ (JavaScript) ¡ ¡ -­‑ ¡Launching ¡new ¡HTTP ¡requests ¡ 7 ¡

  8. Mechanisms ¡Required ¡By ¡Trackers ¡ • Ability ¡to ¡store/create ¡user ¡idenJty ¡in ¡the ¡browser ¡ § HTTP ¡cookies ¡ § other ¡HTTP ¡headers ¡ Stateful ¡tracking ¡ § other ¡browser ¡storages ¡ § device ¡fingerprinJng: ¡ ¡ • browser ¡properJes ¡ ¡ Stateless ¡tracking ¡ • OS ¡properJes ¡ ¡ • IP ¡address… ¡ • Ability ¡to ¡communicate ¡user ¡idenJty ¡back ¡to ¡tracker ¡ § HTTP ¡request ¡headers ¡ § JavaScript ¡ Nataliia ¡Bielova ¡ 8 ¡

  9. Stateful ¡Tracking ¡ COOKIES ¡AND ¡OTHER ¡BROWSER ¡STORAGES ¡ 9 ¡

  10. Cookies: ¡first-­‑ ¡& ¡third-­‑party ¡ Origin ¡ Origin ¡ ny5mes.com ¡ b.scorecardresearch.com ¡ nyJmes.com ¡ <iframe � � src=b.scorecardresearch.com> � � � � Html ¡page ¡+ ¡ ¡ Third-­‑party ¡ � First-­‑party ¡ � � JavaScript ¡code ¡ � can ¡read/write ¡ ¡ can ¡read/write ¡ ¡ � � cookies ¡of ¡ ¡ cookies ¡of ¡ ¡ � b.scorecardresearch ny5mes.com ¡ </iframe> � .com ¡ <script src=facebook.net> � � JavaScript ¡code ¡ � � </src> � Nataliia ¡Bielova ¡ 10 ¡

  11. Within-­‑Site ¡Tracking ¡ First-­‑party ¡cookies ¡ are ¡used ¡to ¡track ¡repeat ¡visits ¡to ¡ a ¡site. ¡ google-­‑analyJcs.com ¡ hjp://site1.com ¡ <script processing ¡engine ¡ src=google- analytics.com/ 2:52pm: user 123 visited Cookie ¡Database ¡ script.js> � � site1.com � site1.co com: m: script ¡ � go google- ga_id=123 � logs ¡ analyt ytics cs.co com/tr track? k? </src> � ga_i _id=123& & site=site1.co com m Based ¡on ¡the ¡slide ¡of ¡Franziska ¡Roesner ¡ 11 ¡

  12. First-­‑party ¡cookie ¡sekng ¡ 12 ¡

  13. First-­‑party ¡cookies ¡benefits ¡ • Keep ¡the ¡session ¡through ¡ different ¡windows/tabs ¡ • Website ¡owners ¡can ¡evaluate ¡ § website ¡staJsJcs ¡ § popularity ¡of ¡certain ¡pages ¡ § popularity ¡of ¡links ¡ § selected ¡and ¡copied ¡phrases ¡ 13 ¡

  14. Cross-­‑sites ¡Tracking ¡ Third-­‑party ¡cookies ¡are ¡used ¡by ¡trackers ¡included ¡in ¡ other ¡sites ¡to ¡create ¡profiles. ¡ ¡ tracker.com ¡ hjp://site2.com ¡ hjp://site1.com ¡ co cookie: i id=789 processing ¡engine ¡ <iframe src=tracker.com/ ad.html> � 9:30am: user 789 visited Cookie ¡Database ¡ � co cookie: i id=789 site1.com � ad ¡ tracker.co com: id=789 � 9:31am: user 789 visited � logs ¡ site2.com </iframe> � Courtesy ¡of ¡Franziska ¡Roesner ¡ 14 ¡

  15. PracJcal ¡protecJon: ¡ Third-­‑party ¡cookies ¡blocking ¡ 15 ¡

  16. PracJcal ¡protecJon: ¡ Third-­‑party ¡cookies ¡blocking ¡ • Does ¡not ¡influence ¡your ¡browsing ¡experience ¡ • Does ¡not ¡adjust ¡adverJsements ¡for ¡you ¡ ¡ • So ¡why ¡are ¡third-­‑party ¡cookies ¡s5ll ¡there? ¡ § It’s ¡a ¡business ¡of ¡adverJsement ¡companies ¡ • “ How ¡much ¡are ¡you ¡worth?” ¡ ¡ § New ¡plugin ¡shows ¡what ¡adverJsers ¡pay ¡for ¡you ¡ § hjp://yourvalue.inrialpes.fr ¡by ¡Inria ¡PrivaJcs ¡team ¡ 16 ¡

  17. Cookie ¡respawning ¡ • Cookies ¡ can ¡respawn ¡ even ¡if ¡the ¡ user ¡has ¡deleted ¡them ¡ • Ashkan ¡Soltani, ¡ August ¡2011 ¡ KISSmetrics ¡and ¡Hulu.com ¡lawsuits ¡ § HTML5 ¡localStorage ¡ ¡ § Flash ¡LSOs ¡ ¡ § Other ¡hjp ¡headers ¡ ¡ • Samy ¡Kamkar: ¡“evercookie” ¡ ¡: ¡ § Even ¡more ¡storage ¡mechanisms ¡ 17 ¡

  18. Respawning ¡-­‑ ¡local ¡storages ¡ • KissMetrics ¡lawsuit: ¡HTML5 ¡localStorage ¡(across ¡sessions) ¡ User ¡leaves ¡the ¡page ¡ tracker.com ¡ hjp://site1.com ¡ processing ¡engine ¡ Cookie ¡Database ¡ <iframe src=tracker.com/ tracker.co com: id=789 ad.html> � 9:30am: user 789 visited � co cookie: i id=789 site1.com � ad ¡ � � logs ¡ HTML5 ¡localStorage ¡ </iframe> � tracker.co com: id=789 18 ¡

  19. Respawning ¡-­‑ ¡local ¡storages ¡ • KissMetrics ¡lawsuit: ¡HTML5 ¡localStorage ¡(across ¡sessions) ¡ High-­‑level ¡point: ¡ ¡ User ¡deletes ¡all ¡the ¡cookies! ¡ If ¡these ¡ local ¡storages ¡didn’t ¡store ¡a ¡copy ¡of ¡cookies , ¡ ¡ tracker.com ¡ this ¡tracking ¡would ¡not ¡be ¡detected! ¡ hjp://site2.com ¡ processing ¡engine ¡ Cookie ¡Database ¡ <iframe src=tracker.com/ tracker.co com: id=789 ad.html> � 9:30am: user 789 visited � co cookie: i id=789 site1.com � ad ¡ � 9:31am: user 789 visited � logs ¡ HTML5 ¡localStorage ¡ site2.com </iframe> � tracker.co com: id=789 19 ¡

  20. Not ¡only ¡Respawning, ¡but ¡Tracking ¡ • Demonstrated ¡by ¡Vladimir ¡Klimontovich, ¡October ¡2012 ¡ • HTML5 ¡localStorage ¡instead ¡of ¡cookies ¡ //Iframe code (http://pixel.sample-ad-exchange.com/iframe.html) � <html> � <head></head> � <body> � <script type="text/javascript"> � var userId = localStorage.getItem("user_id"); � if (userId == null) { � //set user is if user is unknown � userId = Math.random(); � localStorage.setItem("user_id", userId); � } � var img = document.createElement('img'); � img.src = "http://pixel.sample-ad-exchange.com/pixel.gif?user_id=“ + userId; � var body = document.getElementsByTagName('body')[0]; � body.appendChild(img); � </script> � </body> � </html> � 20 ¡

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend