PGN5: KAING, RISHER AND SCHULTE PERSISTENT COOKIES WITH BROWSER FINGERPRINTING
DEFINITIONS & BACKGROUND Persistent Cookies : cookies that are resistant to deletion. Browser Fingerprint : set of browser attributes that can be used to uniquely identify a user. Used in combination with passwords to verify users. Browser Fingerprint is alternative to two-factor authentication. Requires no additional hardware tokens Is passive (convenient)
FINGERPRINT ATTRIBUTES
BITS OF ENTROPY Describes how likely a piece of information will be identical between any two random users. Example: 8 bits of entropy indicates attribute has potential to uniquely identify 2 8 or 256 different users. AttributeBoda Study (2012)Eckersley Study (2010) User Agent String Timezone User ID9.03- All fonts Universal fonts6.83- Detected fonts7.63- Plugins-15.4
EVERCOOKIE API for persistent cookies Multiple storage locations throughout the client If any cookie is deleted, all are replaced as long as at least one cookie remains Stored in locations typical users will not be able to remove (Silverlight storage, flash cookies)
STORAGE LOCATIONS Standard cookies Typical browser cookies, easy to implement, easy to remove Local Shared Objects Flash cookies Flash does not by default ask for permission Not cross domain
STORAGE LOCATIONS Silverlight Isolated Storage Virtual file system on client Any type of data can be stored PNG caching Image created using RGB values equal to the cookies value Stored in browser’s cache If needed to be retrieved (other cookies have been deleted) the browser is made to make a request for the PNG 304 “Not Modified” message sent back, telling browser to look into the cache
STORAGE LOCATIONS Etags Used for cache validation Can be set in a similar way to a cookie Web cache Standard web cache mechanism Persistent cookie stored in cache window.name DOM property with 2-32MB of data available Cross domain Can be read by other websites
STORAGE LOCATIONS HTML5 locations Global storage outdated, instead use local storage Persistent, no expiration date Session data Not very persistent. Cleared when user exits browser Database storage SQL storage in database on client
RESULTS Firefox (20.0.1)EvercookieProject PNGYES eTagYES CacheYES userData localDataYES globalData sessionDataYES windowDataYES CookieYES History DB FlashYES SilverlightYES
RESULTS Safari (5.1.7)EvercookieProject PNGYES eTagYES CacheYES userData localDataYES globalData sessionDataYES windowDataYES CookieYES History DB FlashYES SilverlightYES
RESULTS IE ( )EvercookieProject PNGYES eTag CacheYES userData localDataYES globalData sessionDataYES windowDataYES CookieYES History DB Flash Silverlight
RESULTS Chrome ( )EvercookieProject PNGYES eTagYES CacheYES userData localDataYES globalData sessionDataYES windowDataYES CookieYES History DBYES FlashYES SilverlightYES
RESULTS FeaturesEvercookieProject Cross browser storageNoYes Retrievable after closeYes Retrievable after restartYes Retrievable w/o JSYes Retrievable after clearingYes Retrievable in Private BrowsingFF/S Retrievable via fingerprintingNoYes
RESULTS
FUTURE WORK New storage locations? Javascript file I/O? Performance measurements Improved Fingerprinting Additional attributes Location capturing (combined with last seen time/location) Fuzzy matching