control what you include
play

Control What You Include! Server-Side Protec7on against - PowerPoint PPT Presentation

Control What You Include! Server-Side Protec7on against Third Party Web Tracking Dolire Francis Som, Nataliia Bielova, Tamara Rezk Privaski 2017


  1. Control ¡What ¡You ¡Include! ¡ Server-­‑Side ¡Protec7on ¡against ¡Third ¡Party ¡Web ¡Tracking ¡ ¡ ¡ Dolière ¡Francis ¡Somé, ¡Nataliia ¡Bielova, ¡Tamara ¡Rezk ¡ Privaski ¡2017 ¡

  2. thanks ¡to ¡ePrivacy ¡direc7ve ¡2009 ¡ bcc.co.uk ¡ emp.bcci.co.uk ¡ googleads.g.doubleclick.net ¡ effec6vemeasure.net ¡ pagead2.googlesyndica6on.com ¡ b.voicefive.com ¡ js.revsci.net ¡ googletagservices.com ¡ b.scorecardresearch.com ¡ Nataliia ¡Bielova ¡ 2 ¡

  3. Third ¡party ¡content ¡on ¡websites ¡ Today ¡ • up ¡to ¡34 ¡dis7nct ¡third ¡par7es ¡on ¡a ¡single ¡website ¡ • 90% ¡of ¡content ¡is ¡tracking ¡users ¡ • Users ¡protect ¡themselves ¡with ¡browser ¡extensions ¡ § Ghostery, ¡Disconnect, ¡etc. ¡ Tomorrow ¡ • ePrivacy ¡update ¡[1]: ¡website ¡owners ¡are ¡liable ¡if ¡third ¡ par7es ¡track ¡their ¡users ¡ ¡ => ¡Website ¡owners ¡want ¡to ¡control ¡third ¡party ¡ ¡ ¡content ¡they ¡include ¡ Nataliia ¡Bielova ¡ 3 ¡

  4. Mechanisms ¡Required ¡By ¡Trackers ¡ • Ability ¡to ¡store/create ¡user ¡iden7ty ¡in ¡the ¡ browser ¡and ¡communicate ¡it ¡back ¡to ¡tracker ¡ § HTTP ¡cookies, ¡browser ¡cache, ¡local ¡Storage ¡ § device ¡fingerprin7ng ¡ • Ability ¡to ¡communicate ¡website ¡visited ¡back ¡to ¡ the ¡tracker ¡ ¡ § HTTP ¡Referer ¡header ¡ § document.referrer Nataliia ¡Bielova ¡ 4 ¡

  5. Third ¡party ¡tracking ¡via ¡cookies ¡ tracker.com ¡ Referer: Re : mys ysite.co com h`p://news.com ¡ h`p://mysite.com ¡ co cookie: i Re Referer: id=789 : news.co com processing ¡engine ¡ <img src=tracker.com/ smiley.gif> 9:30am: user 789 visited Cookie ¡Database ¡ co cookie: i id=789 news.com tracker.co com: id=789 9:31am: user 789 visited logs ¡ mysite.com </img> Based ¡on ¡slides ¡of ¡Franziska ¡Roesner ¡ 5 ¡ Nataliia ¡Bielova ¡

  6. Why ¡web ¡developers ¡include ¡so ¡ many ¡third ¡party ¡contents? ¡ Nataliia ¡Bielova ¡ 6 ¡

  7. Func7onality ¡ J ¡ ¡Privacy ¡ L ¡ Nataliia ¡Bielova ¡ 7 ¡

  8. Privacy ¡ J ¡ ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ duckduckgo.com ¡ Nataliia ¡Bielova ¡ 8 ¡

  9. How ¡can ¡developers ¡include ¡third ¡party ¡ content ¡and ¡guarantee ¡privacy? ¡ Nataliia ¡Bielova ¡ 9 ¡

  10. Same ¡Origin ¡Policy ¡(SOP) ¡ • SOP ¡implemented ¡in ¡all ¡web ¡browsers: ¡ § “Scripts ¡can ¡only ¡access ¡proper6es ¡associated ¡ with ¡documents ¡from ¡the ¡same ¡origin” ¡ ¡ • Origin ¡= ¡[scheme, ¡host, ¡port] ¡ h`p://www.example.com:81/dir/page.html ¡ scheme ¡ host ¡ port ¡ Nataliia ¡Bielova ¡ 10 ¡

  11. In ¡what ¡origin ¡each ¡script ¡is ¡running? ¡ a.com ¡ b.com ¡ a.com <script src=b.com/script.js> JavaScript ¡1 ¡ c.com ¡ <iframe src=b.com/main.html> Html ¡page ¡+ ¡ ¡ <script src=c.com/script.js> JavaScript ¡2 ¡ </iframe> ¡ Nataliia ¡Bielova ¡ 11 ¡

  12. In ¡what ¡origin ¡each ¡script ¡is ¡running? ¡ a.com ¡ b.com ¡ a.com <script src=b.com/script.js> JavaScript ¡1 ¡ JavaScript ¡1 ¡ c.com ¡ <iframe src=b.com/main.html> Html ¡page ¡+ ¡ ¡ <script src=c.com/script.js> JavaScript ¡2 ¡ JavaScript ¡2 ¡ </iframe> ¡ Nataliia ¡Bielova ¡ 12 ¡

  13. Which ¡third ¡party ¡content ¡is ¡ controllable? ¡ controllable ¡ not ¡controllable ¡ Nataliia ¡Bielova ¡ 13 ¡

  14. Privacy-­‑preserving ¡web ¡architecture ¡ Goal ¡ § Remove ¡tracking ¡from ¡func7onal ¡third-­‑party ¡ content ¡ Idea ¡ § Rewrite ¡sta7c ¡third-­‑party ¡content ¡ § Redirect ¡dynamic ¡third-­‑party ¡content ¡ § Restrict ¡communica7on ¡between ¡third-­‑par7es ¡ within ¡the ¡applica7on ¡ Nataliia ¡Bielova ¡ 14 ¡

  15. Current ¡architecture ¡ tracker.com ¡ h`p://mysite.com ¡ m m o o c c . . e e t t i i s s y y m m : : r r e e r r e e f f e e R R Web ¡browser ¡ mysite.com ¡ Nataliia ¡Bielova ¡ 15 ¡

  16. Our ¡architecture ¡ tracker.com ¡ ¡ middle.com ¡ Redirect ¡third ¡par7es ¡to ¡middle.com ¡ h`p://mysite.com ¡ Intercept ¡dynamically ¡created ¡in-­‑ context ¡content ¡ Add ¡CSP ¡(to ¡avoid ¡bypassing) ¡ Web ¡browser ¡ mysite.com ¡ rewrite.com ¡ http://tracker.com/smiley.gif à http://middle.com/?src=http://tracker.com/smiley.gif Content-­‑Security-­‑Policy: ¡ ¡ default-­‑src ¡’self’ ¡’middle.com’; ¡object-­‑src ¡’self’; ¡ Nataliia ¡Bielova ¡ 16 ¡

  17. Our ¡architecture ¡ tracker.com ¡ ¡ middle.com ¡ ❌ ¡ m m o o c c . . e e t t s s i i y y m m : : r r e e r r e e f f e e R R m m o o c c e e . . t t s s i i y y Web ¡browser ¡ m m : : r r e e r r e e e e f f R R ❌ ¡ mysite.com ¡ rewrite.com ¡ Removes ¡cookies, ¡Etag, ¡Referer ¡ Rewrites ¡an ¡iframe ¡as ¡a ¡new ¡ iframe ¡from ¡middle.com ¡ Nataliia ¡Bielova ¡ 17 ¡

  18. Case ¡study ¡& ¡conclusions ¡ • All ¡websites ¡work ¡properly ¡ § Demo ¡website ¡with ¡youtube ¡videos ¡ § News: ¡www.bbc.com ¡ § Movies: ¡www.imdb.com ¡ § Shopping: ¡h`p://vertbaudet.fr ¡ • Our ¡architecture ¡ § for ¡website ¡developers ¡ ¡ § allows ¡to ¡embed ¡third ¡party ¡contents ¡ ¡ § while ¡preserving ¡users ¡privacy ¡ ¡ Nataliia ¡Bielova ¡ 18 ¡

Recommend


More recommend