Ist der Fingerabdruck des Browsers eine praktikable Methode zur Identifizierung anonymer Benutzer?


96

Ist der Fingerabdruck des Browsers eine ausreichende Methode, um anonyme Benutzer eindeutig zu identifizieren? Was ist, wenn Sie biometrische Daten wie Mausbewegungen oder Eingabemuster verwenden?

Neulich bin ich auf das Panopticlick-Experiment gestoßen, bei dem EFF auf Browser-Fingerabdrücken ausgeführt wird .

Natürlich habe ich sofort über die Auswirkungen auf die Privatsphäre nachgedacht und darüber, wie man sie für das Böse einsetzen kann. Auf der anderen Seite könnte dies jedoch zu einem guten Zweck eingesetzt werden, und zumindest ist es ein verlockendes Problem, daran zu arbeiten.

Bei der Untersuchung des Themas habe ich festgestellt, dass einige Unternehmen Browser-Fingerabdrücke verwenden, um Betrug zu bekämpfen. Und nachdem ich ein paar E-Mails verschickt habe, kann ich bestätigen, dass mindestens eine große Dating-Site den Browser-Fingerabdruck als einzigen Mechanismus zum Erkennen gefälschter Konten verwendet. (Hinweis: Sie haben festgestellt, dass es nicht eindeutig genug ist, um als Identität zu fungieren, wenn es auf Millionen von Benutzern skaliert wird. Mein Programmiererhirn möchte ihnen jedoch nicht glauben.)

Hier ist ein Unternehmen, das Browser-Fingerabdrücke zur Aufdeckung und Verhinderung von Betrug verwendet:
http://www.bluecava.com/

Hier ist eine ziemlich umfassende Liste von Dingen, die Sie als eindeutige Bezeichner in einem Browser verwenden können:
http://browserspy.dk/


6
Wie einfach wäre es, ein Plugin für Ihren Lieblingsbrowser zu schreiben, um den Fingerabdruck Ihres Browsers zu ändern? Ich stelle mir vor, wenn es möglich wäre, könnte jemand ein solches Plugin vertreiben, mit dem Sie Ihren Fingerabdruck nach Belieben ändern können. Es kann sogar vorinstallierte "Profile" enthalten, sodass eine ganze Gruppe von Benutzern denselben Fingerabdruck verwenden kann ...
FrustratedWithFormsDesigner

1
In Verbindung stehende Meta-Stack-Overflow-Diskussion zu diesem Thema in Stack Exchange: Implementieren Sie eine Form von Browser-Fingerprinting, um das Problem zu lösen

In Bezug auf die Verwendung eines Plugins zur Änderung des Browser-Fingerabdrucks. Dieser IEEE-Artikel ( spectrum.ieee.org/computing/software/… ) argumentiert, warum dies kontraproduktiv sein könnte
Pimin Konstantin Kefaloukos,

Antworten:


91

Erstens halte ich es nicht für realistisch, von Benutzern zu erwarten, dass sie JavaScript im modernen Web deaktiviert haben. Werfen wir also einen Blick darauf, was Panopticlick allein mit JavaScript zusammen mit der Eindeutigkeit meines Browsers erfassen kann:

  • User Agent (1 zu 4.184)
  • HTTP_ACCEPT-Header (1 in 14)
  • Details zum Browser-Plugin (1 von 1,8 Millionen)
  • Zeitzone (1 in 24)
  • Bildschirmgröße und Farbtiefe (1 zu 1.700)
  • Systemschriftarten (1 in 11)
  • Cookies aktiviert? (1 in 1,3)
  • Eingeschränkter SuperCookie-Test (1 zu 2)

Die herausragenden Merkmale für die Eindeutigkeit sind eindeutig User-Agent- und Browser-Plugins. Denken Sie daran, dass diese Elemente zusammen verwendet werden , um einen Browser-Fingerabdruck zu bilden. Sie sind also mehr als so stark wie die einzelnen Punkte. Die kumulative Einzigartigkeit hier ist: 4,184 x 14 x 1.8 million x 24 x 1,700 x 11 x 1.3 x 2aka eine WIRKLICH GROSSE ZAHL . Das ist ... ziemlich einzigartig.

Ich habe Flash im Moment deaktiviert, mit "Click to Activation". Das Aktivieren von Flash fügt Folgendes hinzu:

  • Systemschriftarten (1 in 374 KB)

Flash ist das zweitgrößte erkennbare Element, aber angesichts der enormen Anzahl, die selbst die standardmäßige JavaScript-Erkennung in Panopticlick erzeugt, bin ich mir nicht sicher, ob Flash für diese Art von Browser-Fingerabdruck erforderlich ist. Nur aktiviertes JavaScript reicht aus.

Browser-Fingerabdrücke sind jedoch nur ein Teil der Geschichte. Betrachten Sie die Summe von allem, was wir von anonymen Benutzern erkennen können, da alles zusammenarbeiten kann, um anonyme Benutzer mit Fingerabdrücken zu versehen. Wie schwierig ist es, die ermittelten Daten zu sammeln und zu verwenden?

  1. Schnüffeln von Browserdetails wie oben gezeigt (einfach)
  2. IP-Adresse mit bekannter Zuverlässigkeit und Vor- und Nachteilen (einfach)
  3. Benutzerverhaltensmuster wie Nutzung (Tageszeit), Tippen, Maus- oder Fingerbewegungen, Wortgebrauch (hart, einige Serverseite, einige Clientseite)

Eine Sache, die ich mit dem Browser-Schnüffeln alleine befürchte, ist, wie einfach es für Benutzer ist, den Browser zu wechseln. Auf den meisten Plattformen gibt es mindestens vier großartige und kostenlose Browser-Alternativen: Chrome, Opera, Firefox, Safari. Um das Schnüffeln des Browsers zu unterbrechen oder zumindest zu unterbrechen, können Sie häufig den Browser wechseln.

Es lohnt sich zu erwähnen sogenannte SuperCookies hier , da sie tatsächlich funktionieren kann, in einigen Fällen, auch wenn Sie den Browser wechseln und auch wenn JavaScript, HTML 5 Local Storage und Flash sind deaktiviert .

Ein Datenschutzforscher hat das böse Genie eines gewinnorientierten Webanalysedienstes aufgedeckt, der Benutzer auf mehr als 500 Websites verfolgen kann, auch wenn der gesamte Cookie-Speicher deaktiviert war und Websites im Datenschutzmodus eines Browsers angezeigt wurden.

(Wenn Sie neugierig sind, ist die TL; DR-Version, dass sie dies tun, indem sie obskure Prinzipien des ETag-Headers ausnutzen .)

Wie auch immer, zurück zum Browser-Schnüffeln - es gibt zwei etwas unangenehme Dinge, die Benutzer tun können, um dies zu verhindern:

  1. Wechseln Sie ständig den Browser.
  2. Stöbern Sie immer mit deaktiviertem JavaScript und Flash.

Wenn jedoch der Benutzer nicht weiß , dass ihre Browser - Einstellungen schniefte und als Teil des Verfahrens verwendet werden, um sie Fingerabdruck, ich sehr bezweifle , würden sie unbedingt tun diese beiden Dinge die Mühe machen. Es ist Arbeit.

Basierend auf den oben genannten Daten kann Browser-Sniffing meines Erachtens dazu beitragen, den typischen anonymen Internetbenutzer zu identifizieren. Es ist jedoch nur in Kombination mit anderen Dingen wirksam, die wir normalerweise von anonymen Internetbenutzern wie der IP-Adresse erkennen.


7
+1 Hacker. Wissen deine Eltern, wie du deine Zeit verbringst?
P.Brian.Mackey

2
"Erstens halte ich es nicht für realistisch, von Nutzern zu erwarten, dass sie JavaScript im modernen Web deaktiviert haben." Ich bin froh, dass eine einfache NoScript-Lösung meine Verfolgung vollständig unterbindet.
Arda Xi

93
"Auch bekannt als WIRKLICH GROSSE ZAHL. Das ist ... ziemlich einzigartig." Es ist nur dann einzigartig, wenn diese Funktionen zufällig auf die Benutzer verteilt werden. Ist es möglich, dass die Mehrheit der Benutzer eine viel kleinere Teilmenge von Agenten und Plugin-Konfigurationen ausführt? Gibt es einige Agenten oder Plugin-Konfigurationen, die stark korrelieren? Wenn Sie sich darauf verlassen möchten, dass dies einzigartig ist, sollten Sie sich die Verteilung dieser Funktionen auf die Benutzer ansehen, nicht nur den bestmöglichen Fall.
Charles E. Grant

3
@Arda Xi: Trotzdem ist das Surfen problematisch ...;)
BoltClock 29.11.11

1
"Erstens halte ich es nicht für realistisch, von Nutzern zu erwarten, dass sie JavaScript im modernen Web deaktiviert haben." Mit freundlichen Grüßen, Sie irren sich. Mit dem Noscript-Addon ist es einfach, Skripte für Ihre unbekannte Website zu deaktivieren und gleichzeitig das moderne Web auf bekannten Websites zu genießen.
Arkh

11

Browser-Fingerabdrücke basieren auf einem sehr heterogenen Browser- / Geräte-Ökosystem. Wir müssen berücksichtigen, dass wir uns auf dem Weg zu einem immer homogeneren Ökosystem befinden, da immer mehr auf Smartphones und Tablets / Pads gesurft wird, die in diesem Sinne weniger fragmentiert sind. IPhones / iPads werden zum Beispiel alle im Wesentlichen identisch aussehen.


3
Ein ausgezeichneter Punkt, und irgendwie ein trauriger. Aber das ist eine sehr wahrscheinliche Realität.
Jeff Atwood

Die Anzahl der iPhones und iPad-Modelle ist unterschiedlich.
JoJo

10

Ist der Fingerabdruck des Browsers eine ausreichende Methode, um anonyme Benutzer eindeutig zu identifizieren?

Nein, es kann bestenfalls einen Computer eindeutig identifizieren . Es gibt keine Möglichkeit, zwischen zwei neuen (und ähnlichen) Computern im selben Netzwerk (derselben IP-Adresse) ohne Cookie-Sitzung zu unterscheiden.

Was ist, wenn Sie biometrische Daten wie Mausbewegungen oder Eingabemuster verwenden?

Das scheint nicht realistisch zu sein. Dies müsste fast vollständig in JavaScript codiert werden, da "biometrische Daten" ausschließlich clientseitig sind. Der Benutzer kann es einfach abschalten. Und wie sehen Ihre "biometrischen Daten" für a aus Perl Script?


Davon abgesehen ist es eine gute Idee, diese Art von Taktik zur Betrugsbekämpfung einzusetzen. Es muss nicht 100% sein. Jede Verringerung des Betrugs ist gut, auch wenn es sich nur um eine 5% ige Verbesserung handelt.

Die Betrugsbekämpfung ist inkrementell, es gibt keine einheitliche Lösung für die Betrugsbekämpfung, Sie müssen nicht einmal nach einer suchen.


BEARBEITEN: Um auf die folgenden Kommentare zu antworten (und weil es sehr relevant ist), ist die Tatsache, dass Fingerabdrücke verschiedene Profile behandeln, nach meiner Überzeugung ein Netto-NEGATIV *. Dies ist etwas, das ein böswilliger Benutzer verwendet, um den Fingerabdruckmechanismus zu täuschen. Die Tatsache, dass der Benutzer die Kontrolle über alle beim Fingerabdruck verwendeten Variablen hat, ist ein schwerwiegender Fehler an sich .

* Aus diesem Grund kann es bestenfalls einen einzelnen Computer identifizieren, da dies BESSER ist, als ein einzelnes Konto auf einem Computer zu identifizieren. Wenn Sie beides können, ist das großartig.


3
"Biometrische Daten" können auch sein, wenn Benutzer auf die Website zugreifen, welche URLs, wie oft, ihre Wort- und Sprachmuster. Dazu ist kein JavaScript erforderlich
Jeff Atwood

2
Mit Fingerabdrücken können sogar verschiedene Konten auf demselben Computer identifiziert werden. Ich kann Englisch, Schwedisch und etwas Spanisch. Ich habe meinen Mac entsprechend konfiguriert. Wenn Firefox eine Seite anfordert, wird "Accept-Language: en-us, en; q = 0,8, sv; q = 0,5, es; q = 0,3" gesendet. Meine Frau kann kein Spanisch. Firefox enthält in ihrem Konto auf demselben Computer nicht den Begriff "es". Ganz klar ist das, was du sagst, nicht möglich.
Andrew Dalke

Andy, nur weil es dein Benutzerprofil ist, heißt das nicht, dass du vor dem Computer sitzt.
Morons

4
Mor, Ihre Aussage "bestenfalls kann es einen Computer eindeutig identifizieren" ist falsch. Im besten Fall kann es zwischen verschiedenen Konten auf demselben Computer unterscheiden. Wenn es sich um ein Netzwerkkonto handelt, können möglicherweise zwei verschiedene Konten im selben Netzwerk unterschieden werden. Dass mehrere Personen den Account nutzen können, ist eine andere Sache.
Andrew Dalke

6

Ich würde @ vincentcr zustimmen , aber noch eine weitere zu berücksichtigende Umgebung hinzufügen: das Unternehmensnetzwerk.

Hier werden Sie wahrscheinlich viele Dutzende oder Hunderte (potenzielle) Benutzer mit genau demselben Browser, denselben Plug-ins, denselben Schriftarten usw. finden. Die zusätzlichen Faktoren, die @ vincentcr vorschlägt, schlagen auch hier fehl - IP-Adressen sind wahrscheinlich gleich, wenn die Benutzer hinter a stehen Unternehmens-Firewall sowie die von den Benutzern gemeldeten Standorte.

Selbst wenn Mausgesten und Eingabemuster berücksichtigt werden, bezweifle ich, dass diese Techniken verwendet werden könnten, um eindeutige Benutzer mit jeglicher Form von Sicherheit zu identifizieren, und wenn Sie möchten, dass Benutzerkonten den Benutzerwechsel in Browsern überleben, müssten Sie dies unterstützen auf jeden Fall mit einem traditionelleren Authentifizierungssystem.

Obwohl, wie andere gesagt haben, kann es bei der Erkennung von Spambots und dergleichen etwas nützlich sein. Beispielsweise analysiert das WordPress-Plugin "Bad Behavior" HTTP-Header (unter anderem), um Spambots zu erkennen.


Sehr guter Punkt. Sie können zwar Dinge wie einen Zeitversatz erkennen, der von Computer zu Computer unterschiedlich sein kann, und Sie können anscheinend über Flash zu den tatsächlichen IP-Adressen gelangen. Es gibt auch eine Monitorauflösung, die in einem Unternehmensumfeld etwas wert, aber weniger nützlich wäre.
SMrF

4

Selbst wenn es eine große Anzahl von Kombinationen gibt, sind sie nicht alle gleichmäßig verteilt.

Überlegen Sie, wie viele Benutzer, beispielsweise eines Macbooks, nur die Bestandskonfiguration verwenden. Oder diejenigen, die niemals ein Plugin installieren: Ich vermute, das sind die meisten Benutzer.

Und am äußersten Ende haben Sie das am schnellsten wachsende Segment an Geräten: Benutzer von Mobiltelefonen und Tablets, insbesondere iPhones und iPads, bei denen Sie sich auf nur zwei Variablen beschränken: make und Versionsnummer.

In Kombination mit anderen Faktoren (z. B. IP-Adresse oder Standort, falls verfügbar) ist dies möglicherweise eine gute Heuristik, aber nicht viel mehr.


3

Mithilfe des Browser-Fingerabdrucks können Sie einen einzelnen Benutzer im Web identifizieren. Der einzige Nachteil besteht darin, dass Sie JavaScript für jeden Benutzer obligatorisch machen müssen.

Es funktioniert nach zwei Prinzipien:

  1. Ermitteln Sie den Browser-Fingerabdruck anhand von 8 Parametern
  2. Ermitteln Sie, ob jemand seinen Fingerabdruck geändert hat, indem Sie einen Parameter ändern.

Der Erfolg des Fingerabdrucks hängt vom zweiten Prinzip ab. um festzustellen, ob jemand den Fingerabdruck geändert hat.

Für weitere Informationen versuchen Sie einfach den verfügbaren Code . Sie müssen Ihren eigenen Algorithmus entwickeln, um einen wiederkehrenden Benutzer zu erkennen, da der von https://panopticlick.eff.org/ verwendete Algorithmus derzeit nicht zu 100% effizient ist.


1
'nicht 100% effizient' oder vielleicht 'nicht 100% effektiv'? Könnten Sie diesen Punkt näher erläutern?
Martijn Pieters

2

Einige Browser können auch über HSTS Supercookies identifiziert werden.

Hier können Sie eine Seite mit Anfragen an zufällige Gruppen sicherer und nicht sicherer Ressourcen für jeden Besucher einbetten und dann das Muster der Anfragen bei einem erneuten Besuch überwachen. Wenn jede Ressource nach demselben Muster angefordert wird, können Sie anhand dieser Informationen den Benutzer identifizieren.

Diese sind besonders nützlich, um iPhone / iPads zu identifizieren, die ansonsten eher einen generischen Browser-Fingerabdruck aufweisen würden. Dieser Ansatz eignet sich nicht für Internet Explorer, in denen HSTS nicht unterstützt wird.

Dieser Artikel beschreibt den Ansatz; http://www.radicalresearch.co.uk/lab/hstssupercookies/

Dieser Artikel enthält ein gutes Beispiel für die Verwendung von HSTS Supercookies zur Identifizierung von Benutzern. https://nakedsecurity.sophos.com/2015/02/02/anatomy-of-a-browser-dilemma-how-hsts-supercookies-make-you-choose-between-privacy-or-security/


0

Javascript ist nicht zwingend erforderlich und es gibt viele andere Parameter, die man von PHP aus abrufen kann. Das heißt, 99% der Benutzer haben JS, warum also die Mühe machen

Können Fingerabdrücke eine hinreichend eindeutige Identifikation liefern? Ich glaube schon. Und das sagt www.visitor-intelligence.com mit seiner Philosophie des sukzessiven Screenings. Denk darüber nach.

Ihre persönliche private Galaxie ist nicht so groß wie unser ganzer Planet.

Wie viele große Mädchen mit braunen Haaren und blauen Augen und französischem Akzent gehen in Ihrer Straße spazieren? Auf einer Planetenskala Millionen. Aber ich wette, sie wäre ziemlich einzigartig in Ihrer Straße (oder wenn Sie Ihren Laden besuchen).

Es sei denn, Sie leben in Champs Elysees. Dann schau genauer hin. Ist sie schlank und geht wie ein Model? Trägt sie eine teure Handtasche? Na gut, sie ist jetzt total einzigartig :-)

Es ist falsch, nur die Überschriften zu betrachten, da sie die Versionsnummer des Browsers und sehr variable Parameter enthalten.

Wir sind jetzt bei Chrome 27 und Firefox 21. Wir aktualisieren die Browserversion, ohne es zu merken.

Jetzt ist es auch ganz falsch, sich die vollständige Plugin-Liste anzusehen. Versuchen Sie Folgendes: Installieren Sie Firefox, Acrobat Reader und Chrome. Ich wette, der Acrobat Reader wird nicht in Ihrer Chrome-Plugin-Liste angezeigt :-)

Also ... Fazit: Wenn Sie nach einem anständigen Identifikationssystem für ein Geschäft in Standardgröße suchen, ist Fingerabdruck ausreichend und sogar stabiler als Cookies (ich persönlich lösche fast jeden Tag alle meine Cookies).

Nur meine 2 Cent

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.