Das Zombie-Cookie
Der Hacker Samy Kamkar demonstriert auf seiner Homepage, wie man verschiedene Techniken, mit denen sich Browser identifizieren lassen, kombinieren kann, um ein fast unlöschbares Cookie zu schaffen.
Neben Cookies können Websites heute eine ganze Reihe von Speichertechniken einsetzen, um Browser eindeutig wiedererzukennen. Dazu zählen Flash-Cookies und diverse HTML5-Speichertechniken (siehe dazu auch den c't-Artikel und die Demos). Samy Kamkar hat nun auf seiner Homepage eine JavaScript-API vorgestellt, die diverse dieser Techniken kombiniert, um einen fast unlöschbaren Cookie-Zombie zu schaffen, den er selbst evercookie nennt.
Neben den bekannten Verfahren benutzt evercookie auch zwei ausgefallene Speichertechniken: PNG- und History-Caching. In ersterem wird die Cookie-ID in einer speziell angefertigten PNG-Datei gespeichert, die einige Browser via HTML-Canvas wieder auslesen können. History Caching benutzt das sogenannte History Stealing: Beim erstmaligen Besuch einer evercookie-Site kodiert diese die Cookie-ID in eine URL, die im Hintergrund aufgerufen wird. Diese lässt sich dann bei späteren Besuchen wieder aus der Browser-History rekonstruieren.
Alle Verfahren erklärt Kamkar auf seiner Homepage im Detail. Dort lässt sich evercookie auch ausprobieren. Hat der Benutzer mit "click to create an evercookie" ein Cookie angelegt, kann er versuchen, es aus seinem Browser zu entfernen. (Die Cookies bei Kamkar sind Werte zwischen 1 und 1000, mit denen er seine Technik demonstrieren, aber Benutzer nicht wirklich identifizieren kann.)
Für viele der Techniken gibt es keine endanwendertaugliche Löschfunktion im Browser. Daher dürften viele Besucher nicht alle der Teil-Cookies löschen können. Die Demo listet genau auf, welche der IDs die Löschversuche überlebt haben. Ruft der Benutzer die Seite ein weiteres Mal auf, hat evercookie alle mit dem jeweiligen Browser verfügbaren Teil-Cookies aus den vorhandenen wiederhergestellt. Da evercookie auch Browser-übergreifend funktionierende Flash-Cookies verwendet, pflanzt es sich auf allen Browsern des Systems fort.
Das als Version 0.2 Beta veröffentlichte evercookie funktioniert noch alles andere als hundertprozentig zuverlässig. So ließen sich mit der Beta des Internet Explorer 9 keine evercookies anlegen. Mit anderen Browsern zeigte es sporadische Probleme beim Wiederherstellen von Teil-Cookies. Dennoch gibt evercookie eine Idee davon, wie Website-Betrieber ihre Besucher im Blick behalten können. Einziger Schutz scheint derzeit das Surfen im Anonym-Modus zu sein. Testweise im entpsrechenden Modus von Chrome und Firefox angelegte evercookies waren nach der Sitzung nicht mehr vorhanden.
Kamkar stellt den Quelltext seines evercookies als Open Source zum Download bereit. Er will es weiter aufbohren, etwa um die UnterstĂĽtzung fĂĽr Isolated Storage in Silverlight. (jo)