Skip to main content

Beyond Cookie Monster Amnesia: Real World Persistent Online Tracking

  • Conference paper
  • First Online:
Information Security (ISC 2018)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 11060))

Included in the following conference series:

Abstract

Browser fingerprinting is a relatively new method of uniquely identifying browsers that can be used to track web users. In some ways it is more privacy-threatening than tracking via cookies, as users have no direct control over it. A number of authors have considered the wide variety of techniques that can be used to fingerprint browsers; however, relatively little information is available on how widespread browser fingerprinting is, and what information is collected to create these fingerprints in the real world. To help address this gap, we crawled the 10,000 most popular websites; this gave insights into the number of websites that are using the technique, which websites are collecting fingerprinting information, and exactly what information is being retrieved. We found that approximately 69% of websites are, potentially, involved in first-party or third-party browser fingerprinting. We further found that third-party browser fingerprinting, which is potentially more privacy-damaging, appears to be predominant in practice. We also describe FingerprintAlert, a freely available browser add-on we developed that detects and, optionally, blocks fingerprinting attempts by visited websites.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Some browser attributes change over time (e.g. browser version) but uniquely identifying browsers is usually still possible [41], and uniquely identifying the hosting platform is also possible if a different browser is used [8].

  2. 2.

    The most commonly used browser data was retrieved from https://www.netmarketshare.com/browser-market-share.aspx [accessed on 01/07/2018].

  3. 3.

    Firefox has a limited set of options to thwart fingerprinting.

  4. 4.

    A web cookie is a small amount of data sent by a website as part of an HTTP response and then stored by the browser. The browser then provides the contents of the cookie back to the same server in subsequent HTTP requests [6].

  5. 5.

    Modes of this type, which have various names, are intended to enhance the privacy properties of the browser [42].

  6. 6.

    A demonstration of the wide range of information collectable from any browser is available at https://fingerprintable.org/test.

  7. 7.

    Majestic is a website specializing in web usage statistics, and provides a daily-updated list of the top one million websites, https://majestic.com/reports/majestic-million [accessed on 09/10/2017].

  8. 8.

    Selenium is open-source software used to automate browsers for testing purposes—see https://www.seleniumhq.org.

  9. 9.

    The quantity of data that can be relayed using GET or HEAD is very limited, whereas POST allows the transmission of very large volumes (megabytes) of data.

  10. 10.

    https://analytics.google.com.

  11. 11.

    https://www.doubleclickbygoogle.com.

  12. 12.

    A JavaScript library that help websites detect the availability of css and html5 features in a visitor’s browser https://modernizr.com.

  13. 13.

    It is a relatively new full-duplex TCP communication protocol [14].

  14. 14.

    https://chrome.google.com/webstore/detail/ielakmofegkdlpnlppfikmkbceajdofo

    https://addons.mozilla.org/en-US/firefox/addon/fingerprintalert.

  15. 15.

    https://www.ghostery.com.

  16. 16.

    https://www.eff.org/privacybadger.

  17. 17.

    http://ec.europa.eu/ipg/basics/legal/cookies/index_en.htm [accessed on 14/04/2018].

References

  1. Acar, G., Eubank, C., Englehardt, S., Juárez, M., Narayanan, A., Díaz, C.: The web never forgets: persistent tracking mechanisms in the wild. In: ACM SIGSAC 2014, Scottsdale, AZ, USA, 3–7 November 2014, pp. 674–689. ACM (2014)

    Google Scholar 

  2. Acar, G., et al.: FPDetective: dusting the web for fingerprinters. In: ACM SIGSAC CCS 2013, Berlin, Germany, 4–8 November 2013, pp. 1129–1140. ACM (2013)

    Google Scholar 

  3. Al-Fannah, N.M.: Making defeating captchas harder for bots. In: Computing Conference 2017, London, UK, 18–20 July 2017, pp. 775–782. IEEE Computer Society, July 2017

    Google Scholar 

  4. Al-Fannah, N.M., Li, W.: Not all browsers are created equal: comparing web browser fingerprintability. In: Obana, S., Chida, K. (eds.) IWSEC 2017. LNCS, vol. 10418, pp. 105–120. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-64200-0_7

    Chapter  Google Scholar 

  5. Alaca, F., van Oorschot, P.C.: Device fingerprinting for augmenting web authentication: classification and analysis of methods. In: ACSAC 2016, Los Angeles, CA, USA, 5–9 December 2016, pp. 289–301. ACM (2016)

    Google Scholar 

  6. Barth, A., Berkeley, U.: HTTP State Management Mechanism. RFC 6265, RFC Editor, April 2011

    Google Scholar 

  7. Boda, K., Földes, Á.M., Gulyás, G.G., Imre, S.: User tracking on the web via cross-browser fingerprinting. In: Laud, P. (ed.) NordSec 2011. LNCS, vol. 7161, pp. 31–46. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29615-4_4

    Chapter  Google Scholar 

  8. Cao, Y., Li, S., Wijmans, E.: (Cross-)browser fingerprinting via OS and hardware level features. In: NDSS 2017, San Diego, California, USA, February 26–March 1 2017. The Internet Society (2017)

    Google Scholar 

  9. Eckersley, P.: How unique is your web browser? In: Atallah, M.J., Hopper, N.J. (eds.) PETS 2010. LNCS, vol. 6205, pp. 1–18. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14527-8_1

    Chapter  Google Scholar 

  10. Englehardt, S., Narayanan, A.: Online tracking: a 1-million-site measurement and analysis. In: ACM SIGSAC CCS 2016, Vienna, Austria, 24–28 October 2016, pp. 1388–1401. ACM (2016)

    Google Scholar 

  11. FaizKhademi, A., Zulkernine, M., Weldemariam, K.: FPGuard: detection and prevention of browser fingerprinting. In: Samarati, P. (ed.) DBSec 2015. LNCS, vol. 9149, pp. 293–308. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-20810-7_21

    Chapter  Google Scholar 

  12. Falahrastegar, M., Haddadi, H., Uhlig, S., Mortier, R.: Tracking personal identifiers across the web. In: Karagiannis, T., Dimitropoulos, X. (eds.) PAM 2016. LNCS, vol. 9631, pp. 30–41. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-30505-9_3

    Chapter  Google Scholar 

  13. Felten, E.W., Schneider, M.A.: Timing attacks on web privacy. In: ACM CCS 2000, Athens, Greece, 1–4 November 2000, pp. 25–32. ACM (2000)

    Google Scholar 

  14. Fette, I., Melnikov, A.: The WebSocket Protocol. RFC 6455, RFC Editor, December 2011

    Google Scholar 

  15. Fielding, R., et al.: Hypertext Transfer Protocol - HTTP/1.1. RFC 2616, RFC Editor, June 1999

    Google Scholar 

  16. Fifield, D., Egelman, S.: Fingerprinting web users through font metrics. In: Böhme, R., Okamoto, T. (eds.) FC 2015. LNCS, vol. 8975, pp. 107–124. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-47854-7_7

    Chapter  Google Scholar 

  17. Fiore, U., Castiglione, A., Santis, A.D., Palmieri, F.: Countering browser fingerprinting techniques: constructing a fake profile with Google chrome. In: NBiS 2014, Salerno, Italy, 10–12 September 2014, pp. 355–360. IEEE Computer Society (2014)

    Google Scholar 

  18. Franklin, J., McCoy, D.: Passive data link layer 802.11 wireless device driver fingerprinting. In: USENIX Security 2006, Vancouver, BC, Canada, July 31–August 4, 2006. USENIX Association (2006)

    Google Scholar 

  19. Krishnamurthy, B., Wills, C.E.: Generating a privacy footprint on the internet. In: ACM SIGCOMM IMC 2006, Rio de Janeriro, Brazil, 25–27 October 2006, pp. 65–70. ACM (2006)

    Google Scholar 

  20. Laperdrix, P., Rudametkin, W., Baudry, B.: Beauty and the beast: diverting modern web browsers to build unique browser fingerprints. In: IEEE S&P 2016, San Jose, CA, USA, 22–26 May 2016, pp. 878–894. IEEE Computer Society (2016)

    Google Scholar 

  21. Le, H., Fallace, F., Barlet-Ros, P.: Towards accurate detection of obfuscated web tracking. In: IEEE MN 2017, Naples, Italy, 27–29 September 2017, pp. 1–6. IEEE (2017)

    Google Scholar 

  22. Lerner, A., Simpson, A.K., Kohno, T., Roesner, F.: Internet jones and the raiders of the lost trackers: an archaeological study of web tracking from 1996 to 2016. In: USENIX Security 2016, Austin, TX, USA, 10–12 August 2016. USENIX Association (2016)

    Google Scholar 

  23. Libert, T.: Exposing the invisible web: an analysis of third-party http requests on 1 million websites. Int. J. Commun. 9, 18 (2015). http://ijoc.org/index.php/ijoc/article/view/3646

    Google Scholar 

  24. Mayer, J.R., Mitchell, J.C.: Third-party web tracking: policy and technology. In: IEEE S&P 2012, San Francisco, California, USA, 21–23 May 2012, pp. 413–427 (2012)

    Google Scholar 

  25. Merzdovnik, G., et al.: Block me if you can: a large-scale study of tracker-blocking tools. In: IEEE EuroS&P 2017, Paris, France, 26–28 April 2017, pp. 319–333. IEEE (2017)

    Google Scholar 

  26. Metwalley, H., Traverso, S., Mellia, M., Miskovic, S., Baldi, M.: The online tracking horde: a view from passive measurements. In: Steiner, M., Barlet-Ros, P., Bonaventure, O. (eds.) TMA 2015. LNCS, vol. 9053, pp. 111–125. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-17172-2_8

    Chapter  Google Scholar 

  27. Mowery, K., Bogenreif, D., Yilek, S., Shacham, H.: Fingerprinting information in JavaScript implementations. In: W2SP 2011, Oakland, CA, USA, 26 May 2011, vol. 2, pp. 180–193 (2011)

    Google Scholar 

  28. Mowery, K., Shacham, H.: Pixel perfect: fingerprinting canvas in HTML5. In: W2SP 2012, San Francisco, CA, USA, 24 May 2012. IEEE Computer Society (2012)

    Google Scholar 

  29. Mulazzani, M., et al.: Fast and reliable browser identification with JavaScript engine fingerprinting. In: W2SP 2013, San Francisco, CA, USA, 24 May 2013, vol. 5 (2013)

    Google Scholar 

  30. Nikiforakis, N., Joosen, W., Livshits, B.: PriVaricator: Deceiving fingerprinters with little white lies. In: WWW 2015, Florence, Italy, 18–22 May 2015, pp. 820–830. ACM (2015)

    Google Scholar 

  31. Nikiforakis, N., Kapravelos, A., Joosen, W., Kruegel, C., Piessens, F., Vigna, G.: Cookieless monster: exploring the ecosystem of web-based device fingerprinting. In: IEEE S&P 2013, Berkeley, CA, USA, 19–22 May 2013, pp. 541–555. IEEE Computer Society (2013)

    Google Scholar 

  32. Olejnik, Ł., Acar, G., Castelluccia, C., Diaz, C.: The leaking battery. In: Garcia-Alfaro, J., Navarro-Arribas, G., Aldini, A., Martinelli, F., Suri, N. (eds.) DPM/QASA -2015. LNCS, vol. 9481, pp. 254–263. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-29883-2_18

    Chapter  Google Scholar 

  33. Portokalidis, G., Polychronakis, M., Keromytis, A.D., Markatos, E.P.: Privacy-preserving social plugins. In: USENIX Security 2012, Bellevue, WA, USA, 8–10 August 2012, pp. 631–646. USENIX Association (2012)

    Google Scholar 

  34. Rescorla, E.: HTTP over TLS. RFC 2818, RFC Editor, May 2000

    Google Scholar 

  35. Roesner, F., Kohno, T., Wetherall, D.: Detecting and defending against third-party tracking on the web. In: USENIX NSDI 2012, San Jose, CA, USA, 25–27 April 2012, pp. 155–168. USENIX Association (2012)

    Google Scholar 

  36. Takei, N., Saito, T., Takasu, K., Yamada, T.: Web browser fingerprinting using only cascading style sheets. In: BWCCA 2015, Krakow, Poland, 4–6 November 2015, pp. 57–63. IEEE Computer Society (2015)

    Google Scholar 

  37. Torres, C.F., Jonker, H., Mauw, S.: FP-Block: Usable web privacy by controlling browser fingerprinting. In: Pernul, G., Ryan, P.Y.A., Weippl, E. (eds.) ESORICS 2015. LNCS, vol. 9327, pp. 3–19. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24177-7_1

    Chapter  Google Scholar 

  38. Unger, T., Mulazzani, M., Fruhwirt, D., Huber, M., Schrittwieser, S., Weippl, E.R.: SHPF: enhancing HTTP(S) session security with browser fingerprinting. In: ARES 2013, Regensburg, Germany, 2–6 September 2013, pp. 255–261. IEEE Computer Society (2013)

    Google Scholar 

  39. Upathilake, R., Li, Y., Matrawy, A.: A classification of web browser fingerprinting techniques. In: NTMS 2015, Paris, France, 27–29 July 2015, pp. 1–5. IEEE (2015)

    Google Scholar 

  40. Ur, B., Leon, P.G., Cranor, L.F., Shay, R., Wang, Y.: Smart, useful, scary, creepy: perceptions of online behavioral advertising. In: SOUPS 2012, Washington, DC, USA, 11–13 July 2012, p. 4. ACM (2012)

    Google Scholar 

  41. Vastel, A., Laperdrix, P., Rudametkin, W., Rouvoy, R.: FP-STALKER: tracking browser fingerprint evolutions. In: IEEE S&P 2018, San Fransisco, CA, USA, 21–23 May 2018, pp. 1–14. IEEE (2018)

    Google Scholar 

  42. Zhao, B., Liu, P.: Private browsing mode not really that private: dealing with privacy breach caused by browser extensions. In: IEEE/IFIP DSN 2015, Rio de Janeiro, Brazil, 22–25 June 2015, pp. 184–195 (2015)

    Google Scholar 

  43. Zimmeck, S., Li, J.S., Kim, H., Bellovin, S.M., Jebara, T.: A privacy analysis of cross-device tracking. In: USENIX Security 2017, Vancouver, BC, Canada, 16–18 August 2017, pp. 1391–1408. USENIX Association (2017)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nasser Mohammed Al-Fannah .

Editor information

Editors and Affiliations

Appendices

Appendix

A Crawling Components and Environment

1.1 A.1 Prepopulated List of Attributes

Resolution, OS, OS Version, User-Agent, Browser Name, Browser Version, WebGL Renderer, WebGL Vendor, WebGL Version, GPU, GPU Vendor, Installed Plugins, Language, Geolocation, City, IP Addresses, and Charset.

1.2 A.2 Crawler Software Components

Component

Details

Browser add-on

FingerprintAlert 1.0

Programming language

Phython 3.6.3

Automation tool

Selenium 3.8.1

1.3 A.3 Computing Environment

Component

Details

Device

MacBook Pro (10.1.1)

OS

MacOS Sierra 12.1

Browser

Chrome 62.0.3202.94

B Attributes Collected by Fingerprinters

1.1 B.1 WebGL

aliased line width range, aliased point size range, alpha bits, angle instanced arrays, antialiasing, blue bits, depth bits, experimental-webgl, ext blend min max, ext disjoint timer query, ext frag depth, ext shader texture lod, ext srgb, ext texture filter anisotropic, fragment shader high float precision, fragment shader high float precision range max, fragment shader high float precision range min, fragment shader high int precision, fragment shader high int precision range max, fragment shader high int precision range min, fragment shader low float precision, fragment shader low float precision range max, fragment shader low float precision range min, fragment shader low int precision, fragment shader low int precision range max, fragment shader low int precision range min, fragment shader medium float precision, fragment shader medium float precision range max, fragment shader medium float precision range min, fragment shader medium int precision, fragment shader medium int precision range max, fragment shader medium int precision range min, green bits, max 3d texture size, max anisotropy, max array texture layers, max color attachments, max combined fragment uniform components, max combined texture image units, max combined vertex uniform components, max cube map texture size, max draw buffers, max fragment input components, max fragment uniform blocks, max fragment uniform components, max fragment uniform vectors, max program texel offset, max render buffer size, max samples, max texture image units, max texture lodbias, max texture size, max transform feedback interleaved components, max transform feedback separate attribs, max transform feedback separate components, max uniform block size, max uniform buffer bindings, max varying components, max varying vectors, max vertex attribs, max vertex output components, max vertex texture image units, max vertex uniform blocks, max vertex uniform components, max vertex uniform vectors, max view port dims, min program texel offset, oes element index uint, oes standard derivatives, oes texture float, oes texture float linear, oes texture half float, oes texture half float linear, oes vertex array object, performance caveat, red bits, renderer, shading language version, stencil bits, unmasked renderer webgl, unmasked vendor webgl, vendor, version, vertex shader high float precision, vertex shader high float precision range max, vertex shader high float precision range min, vertex shader high int precision, vertex shader high int precision range max, vertex shader high int precision range min, vertex shader low float precision, vertex shader low float precision range max, vertex shader low float precision range min, vertex shader low int precision, vertex shader low int precision range max, vertex shader low int precision range min, vertex shader medium float precision, vertex shader medium float precision range max, vertex shader medium float precision range min, vertex shader medium int precision, vertex shader medium int precision range max, vertex shader medium int precision range min, webgl, webgl compressed texture s3tc, webgl compressed texture s3tc srgb, webgl debug renderer info, webgl debug shaders, webgl depth texture, webgl draw buffers, webgl lose context, webgl2, webkit ext texture filter anisotropic, webkit webgl compressed texture s3tc, webkit webgl depth texture, webkit webgl lose context.

1.2 B.2 Features

adblock, application cache, background size, blending, bluetooth, border image, border radius, box shadow, budget, canvas winding, credentials, css animations, css columns, css gradients, css reflections, css transforms, css transforms 3dc, css transitions, drag and drop, flex box, flex box legacy, font face, generated content, get battery, get game pads, get user media, hash change, history, hsla, img hash, inline svg, installed fonts, installed plugins, java enabled, js, media devices, mime types, multiple bgs, opacity, permissions, post message, presentation, register protocol handler, request media key system access, request midi access, rgba, send beacon, service worker, shockwave flash, smil, svg, svg clip paths, text shadow, towebp, unregister protocol handler, usb, vibrate, web sql database, web workers, webkit get user media, webkit persistent storage, webkit temporary storage, webrtc, websockets.

1.3 B.3 Media

ac-base latency, ac-channel count, ac-channel count mode, ac-channel interpretation, ac-max channel count, ac-number of inputs, ac-number of outputs, ac-sampler ate, ac-state, an-channel count, an-channel count mode, an-channel interpretation, an-fft size, an-frequency bin count, an-max decibels, an-min decibels, an-number of inputs, an-number of outputs, an-smoothing time constant, audio ogg, avc1.42c00d, avc1.42e01e (mp4a.40.2), codecs1, dynamiccompressor, h264, hybridoscillator, mp3, mp4a.40.2, mpeg, opus, oscillator, theora, video mp4, video ogg, vorbis (ogg), vorbis (vp8), vorbis (vp9), vorbis (wav), wav, webm, wm4a.

1.4 B.4 Miscellaneous

app code name, battery level, charging, charging time, charset, collect time, cookie enabled, cpu cores, discharging time, do not track, geolocation, graphics card vendor, hardware concurrency, has timezone mismatch, incognito, indexed db, js heap size limit, languages, local storage, navigator, online, open data base, platform, product, product sub, referrer, renderer, session storage, timestamp, timezone, total js heap size, used js heap size, user agent, vendor, vendor sub.

1.5 B.5 Network

downlink, effectivetype, is proxied, is tor, is using tor exit node, local ip, onchange, public ipv4, public ipv6, rtt.

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Al-Fannah, N.M., Li, W., Mitchell, C.J. (2018). Beyond Cookie Monster Amnesia: Real World Persistent Online Tracking. In: Chen, L., Manulis, M., Schneider, S. (eds) Information Security. ISC 2018. Lecture Notes in Computer Science(), vol 11060. Springer, Cham. https://doi.org/10.1007/978-3-319-99136-8_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99136-8_26

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99135-1

  • Online ISBN: 978-3-319-99136-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics