An Analysis of Private Browsing Modes in Modern Browsers - - PowerPoint PPT Presentation

an analysis of private browsing modes in modern browsers
SMART_READER_LITE
LIVE PREVIEW

An Analysis of Private Browsing Modes in Modern Browsers - - PowerPoint PPT Presentation

Stanford Computer Security Lab An Analysis of Private Browsing Modes in Modern Browsers Gaurav Aggarwal, Elie Bursztein, Collin Jackson, Dan Boneh Usenix


slide-1
SLIDE 1

Usenix ¡ ¡Security ¡2010 h2p://seclab.stanford.edu An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Stanford ¡Computer ¡Security ¡Lab

Gaurav ¡Aggarwal, ¡Elie ¡Bursztein, ¡Collin ¡Jackson, ¡ Dan ¡Boneh

An ¡Analysis ¡of ¡Private ¡ Browsing ¡Modes ¡in ¡Modern ¡ Browsers

slide-2
SLIDE 2

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

Private ¡Browsing ¡?

Browse ¡without ¡leaving ¡trace ¡

  • f ¡visited ¡URLs

Now ¡in ¡all ¡major ¡browsers

slide-3
SLIDE 3

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Private ¡browsing ¡UI

slide-4
SLIDE 4

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Private ¡browsing ¡UI

slide-5
SLIDE 5

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Threat ¡Model

Home ¡Computer ¡or ¡Internet ¡Kiosk

slide-6
SLIDE 6

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Threat ¡Model

WeddingRings.com

Home ¡Computer ¡or ¡Internet ¡Kiosk

slide-7
SLIDE 7

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Threat ¡Model

WeddingRings.com gambling.com

Home ¡Computer ¡or ¡Internet ¡Kiosk

slide-8
SLIDE 8

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Threat ¡Model

WeddingRings.com

OMG!!!

gambling.com

Later ¡

Home ¡Computer ¡or ¡Internet ¡Kiosk Marketed ¡for ¡surprise ¡giZs ¡… ¡

slide-9
SLIDE 9

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

People ¡Really ¡care ¡about ¡this ¡!

slide-10
SLIDE 10

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Privacy ¡from ¡local ¡A2acker

  • A2acker ¡gets ¡control ¡of ¡the ¡machine ¡aZer ¡

private ¡browsing ¡ends

  • Goal: ¡ ¡ ¡which ¡sites ¡did ¡user ¡visit ¡in ¡private?

¡

¡ (see ¡“indis_nguishability” ¡defini_on ¡in ¡paper)

¡ ¡ installing ¡a ¡key ¡logger ¡is ¡not ¡an ¡a2ack

slide-11
SLIDE 11

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Par_al ¡goal: ¡ ¡ ¡ ¡privacy ¡from ¡web ¡a2acker

  • Private ¡browsing ¡does ¡not ¡hide:
  • IP ¡address
  • Browser ¡fingerprint ¡ ¡(a ¡la ¡ ¡Panop_click ¡ ¡[Eckersley’10] ¡)
  • Some ¡browsers ¡make ¡half ¡hearted ¡a2empt:
  • Ex: ¡ ¡cookies ¡set ¡in ¡public ¡mode ¡not ¡available ¡in ¡private
  • Safari ¡makes ¡no ¡a2empt ¡to ¡hide ¡public ¡state
slide-12
SLIDE 12

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

slide-13
SLIDE 13

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

  • The ¡a2ack ¡works ¡as ¡follows:
slide-14
SLIDE 14

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

  • The ¡a2ack ¡works ¡as ¡follows:
  • 1. Embedded ¡an ¡smb ¡link ¡on ¡a2acker’s ¡page:

¡ <img ¡src=“smb:\\ip\a.jpg”>

slide-15
SLIDE 15

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

  • The ¡a2ack ¡works ¡as ¡follows:
  • 1. Embedded ¡an ¡smb ¡link ¡on ¡a2acker’s ¡page:

¡ <img ¡src=“smb:\\ip\a.jpg”>

  • 2. When ¡the ¡SMB ¡request ¡arrives ¡deny ¡it
slide-16
SLIDE 16

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

  • The ¡a2ack ¡works ¡as ¡follows:
  • 1. Embedded ¡an ¡smb ¡link ¡on ¡a2acker’s ¡page:

¡ <img ¡src=“smb:\\ip\a.jpg”>

  • 2. When ¡the ¡SMB ¡request ¡arrives ¡deny ¡it
  • 3. Windows ¡will ¡try ¡to ¡authen_cate ¡over ¡SMB
slide-17
SLIDE 17

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

  • The ¡a2ack ¡works ¡as ¡follows:
  • 1. Embedded ¡an ¡smb ¡link ¡on ¡a2acker’s ¡page:

¡ <img ¡src=“smb:\\ip\a.jpg”>

  • 2. When ¡the ¡SMB ¡request ¡arrives ¡deny ¡it
  • 3. Windows ¡will ¡try ¡to ¡authen_cate ¡over ¡SMB
  • 4. A2acker ¡gets ¡windows ¡username ¡domain ¡and ¡

version ¡

slide-18
SLIDE 18

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Web ¡A2acker: ¡an ¡IE ¡example

POC ¡: ¡h2p://ly.tl/iepoc

slide-19
SLIDE 19

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Usage ¡Experiment

How ¡do ¡people ¡use ¡private ¡mode?

  • What ¡type ¡of ¡sites? ¡ ¡ ¡ ¡ ¡ ¡Which ¡browsers?

Observa_on: ¡ ¡ ¡

  • private ¡browsing ¡status ¡is ¡remotely ¡detectable
  • Use ¡“history ¡sniffing” ¡
slide-20
SLIDE 20

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Behavior ¡in ¡Regular ¡Mode

AD

Random ¡page

slide-21
SLIDE 21

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Behavior ¡in ¡Regular ¡Mode

AD Random page

Random ¡page Random ¡page ¡

¡If ¡( ¡getComputedStyle(link).color ¡== ¡RGB(51,102,160) ¡)

slide-22
SLIDE 22

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Behavior ¡in ¡Private ¡Mode

AD

Random ¡page

slide-23
SLIDE 23

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Behavior ¡in ¡Private ¡Mode

AD Random page

Random ¡page Random ¡page ¡

slide-24
SLIDE 24

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Usage ¡measurement ¡– ¡Results

  • More ¡common ¡on ¡Safari, ¡Firefox ¡
  • subtle ¡private ¡browsing ¡indicators
  • IE ¡users ¡rarely ¡use ¡private ¡mode
  • People ¡care ¡about ¡privacy ¡from ¡local ¡a2ackers ¡!
slide-25
SLIDE 25

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Safari ¡in ¡private

slide-26
SLIDE 26

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Safari ¡in ¡private

slide-27
SLIDE 27

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

… ¡ ¡But ¡private ¡browsing ¡is ¡not ¡so ¡private ¡

slide-28
SLIDE 28

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

… ¡ ¡But ¡private ¡browsing ¡is ¡not ¡so ¡private ¡

slide-29
SLIDE 29

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Privacy ¡viola_ons: ¡ ¡ ¡ ¡simple ¡examples

Local ¡DNS ¡cache:

  • DNS ¡resolu_ons ¡persist ¡aZer ¡leaving ¡private ¡mode

Swap ¡file ¡persists:

  • Experiment ¡on ¡Firefox ¡3.5.9 ¡running ¡Ubuntu ¡9.10
  • Swap ¡file ¡dump ¡aZer ¡private ¡browsing:
  • URLs ¡of ¡websites ¡visited
  • Embedded ¡links
  • Text ¡from ¡web ¡pages
slide-30
SLIDE 30

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Firefox: ¡ ¡ ¡a ¡detailed ¡analysis

Method ¡1: ¡ ¡ ¡manual ¡review ¡(Firefox ¡3.6)

  • code ¡abstrac_ons ¡for ¡wri_ng ¡to ¡profile ¡folder:

¡ ¡ ¡ Storage, ¡nsIFile

  • Analyze ¡code ¡points ¡that ¡use ¡these ¡abstrac_ons

Check ¡if ¡private ¡status ¡moderates ¡writes

slide-31
SLIDE 31

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Firefox: ¡ ¡ ¡a ¡detailed ¡analysis

Method ¡2: ¡ ¡ ¡automated ¡tes_ng

  • Leverage ¡exis_ng ¡browser ¡unit ¡tests
  • MozMill ¡test ¡framework
  • User ¡interface ¡test ¡automa_on ¡tool
  • 196 ¡tests ¡currently
  • … ¡and ¡we ¡added ¡a ¡few ¡addi_onal ¡tests
slide-32
SLIDE 32

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Mozmill ¡Tests ¡– ¡How ¡to

  • 1. Make ¡a ¡new ¡Firefox ¡profile
  • 2. Start ¡Firefox ¡in ¡private ¡mode
  • 3. Run ¡Mozmill ¡tests
  • 4. Monitor ¡changes ¡to ¡files ¡in ¡profile ¡folder
  • fs_usage ¡(OSX):

¡ ¡ Track ¡system ¡calls ¡related ¡to ¡filesystem

  • 5. Analyze ¡changes ¡ ¡ ¡(manually)
slide-33
SLIDE 33

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

Sample ¡viola_ons ¡(more ¡in ¡the ¡paper)

  • SSL ¡certs ¡ ¡ ¡ ¡ ¡ ¡CA ¡certs ¡ ¡ ¡and ¡ ¡ ¡client ¡certs ¡ ¡ ¡persist
  • Site-­‑specific ¡Preferences ¡Block/allow ¡images, ¡pop-­‑ups, ¡etc.
  • Search ¡Plug-­‑ins: ¡Persists ¡source ¡URL ¡of ¡the ¡plug-­‑in
slide-34
SLIDE 34

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

Extensions ¡and ¡plug-­‑ins

slide-35
SLIDE 35

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Add-­‑ons ¡– ¡Privacy ¡Risk!

  • Surveyed ¡top ¡40 ¡most ¡popular ¡add-­‑ons ¡for ¡Firefox
  • Only ¡one ¡extension ¡checks ¡for ¡private ¡browsing ¡

mode ¡in ¡the ¡code! ¡ ¡ ¡ ¡ ¡ ¡ ¡(TabMixPlus)

  • 16 ¡extensions ¡persist ¡state ¡in ¡private ¡mode
  • NoScript ¡– ¡URL ¡whitelist
  • Stylish ¡– ¡mapping ¡from ¡website ¡to ¡CSS
  • DownThemAll ¡– ¡URL ¡download ¡queue
slide-36
SLIDE 36

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Add-­‑ons: ¡ ¡browser ¡policies

IE ¡and ¡Chrome:

  • Disables ¡extensions, ¡plug-­‑ins ¡s_ll ¡func_onal
  • Excep_ons ¡can ¡be ¡added ¡for ¡extensions ¡ ¡ ¡(Chrome)

Firefox:

  • Extensions ¡and ¡plug-­‑ins ¡work ¡normally

Safari:

  • No ¡supported ¡extension ¡API
slide-37
SLIDE 37

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Chrome ¡Extensions

plug-­‑ins ¡enabled ¡by ¡default ¡ ¡(no ¡UI ¡op_on)

slide-38
SLIDE 38

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Our ¡proposal: ¡ ¡ ¡Manual ¡Policy ¡Check

Extensions ¡“opt-­‑in” ¡for ¡running ¡in ¡private ¡mode

  • Opt-­‑in ¡by ¡including ¡special ¡tag ¡in ¡manifest ¡file
  • Manual ¡review ¡to ¡respect ¡private ¡browsing

All ¡other ¡extensions ¡are ¡disabled ¡in ¡private ¡mode No ¡user ¡interac_on ¡necessary

  • Implemented ¡POC ¡as ¡FF ¡extension

h2p://seclab.stanford.edu/websec/private/extBlocker.xpi

slide-39
SLIDE 39

Usenix ¡ ¡Security ¡2010 h2p://ly.tl/p16 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers

Strengthening ¡private ¡browsing?

Non-­‑solu_on:

  • Snapshot ¡and ¡restore ¡user ¡profile
  • Would ¡remove ¡bookmarks ¡and ¡global ¡setngs

Enhanced ¡browser ¡architecture:

  • Journaling ¡file ¡system ¡ ¡ ¡[Stamm’10]
  • Restrict ¡extension ¡API ¡in ¡private ¡mode

Torbu2on: ¡ ¡ ¡ ¡ ¡Security ¡against ¡web ¡a2acker

  • ¡ ¡ ¡… ¡ ¡but ¡costs ¡in ¡performance
slide-40
SLIDE 40

Usenix ¡ ¡Security ¡2010 An ¡Analysis ¡of ¡Private ¡Browsing ¡Modes ¡in ¡Modern ¡Browsers h2p://ly.tl/p16

THE ¡ ¡END ¡?

Follow ¡me ¡on ¡Twi2er @elie