PHP user an browser/os eindeutig identifizieren

adblue

Well-known member
24 Juli 2009
57
2
hi

anhand welchen merkmalen kann man feststellen ob der user bei seinem zweiten login den gleichen pc verwendet wie beim ersten login. ?

ich kenne das ganze von facebook. hier wird man auch gefragt, wenn man sich über einen neuen pc anmeldet. woran merken die das?


cookies wären möglich. aber gibt es noch andere tricks?
betriebssystem und browser ist schwierig. fast jeder hat wahrscheinlich windows7 und firefox.

danke!
 
Dieses "Fingerprint-Tracking" ist recht genau aber zu ungenau um wirklich praktikabel eingesetzt zu werden.

Es reicht hier imho schon wenn man die Bildschirmauflösung ändert, den Browser ändert oder eine neue Schriftart installiert wird. Teilweise könnte es sogar schon reichen wenn ein Browser Plugin auf eine neue Versino upgedatet wird, denn hierdurch verändert sich der Fingerprint was der Server dann als neuen User werten könnte. Eine 100%ige Sicherheit wirst du niemals bekommen ;)
 
wozu gibt es denn User Agent Switcher ?
Die machen es dir nicht gerade einfach. Dort kannst Du praktikabel den Browser so wie das OS xbeliebig oft ändern zu jedem Login...

Also diese Weiche als Abfrage ist nicht eindeutig. Schon gar nicht in verbindung mit einer IP.
Sichereste und schnellste Lösung sind Cookies mit Kopplung von JS Abfragen der Plugins.

Wäre doch mal für die Comunity ein weiterer Zugzwang sich dem anzupassen und zu sagen, wir entwickeln ein Addon welches die Plugins manipulieren kann, und sich mit dem User Agent Switcher zusammen tut, oder den Switcher um diese Variante erweitert!!!

Dann würde auch dieses Tracking in die Hose gehen...

Allgemein ich hasse Tracking !!!:evil:
 

Dieser Test ist meiner Meinung nach nicht wirklich aussagekräftig.

Ich kann damit zwar einen Browser "eindeutig" indentifizieren, sollte der User aber z.B. ein Font de-/installieren, ist man "eindeutig" ein anderer.

Das Hinzufügen einer gewissen Reichweite bei Änderung würde mMn. das Ergebnis ziemlich stark verfälschen, weil dann z.B. die sonst so eindeutige FF-Win7 Standardinstallation mit einer zusätzlichen Font - die sonst eindeutig wäre - durch diese Reichweite dann zu den anderen Standardinstallationen zählen würde.
 
Interessant wäre es vielleicht ein System zu entwickeln mit einer "Punkteliste" oder so in der Richtung..
Wenn also eine Information geändert wird, die man normalerweise nicht so leicht ändert gibt das viele Punkte, bei einem Pluginupdate oder so gibt es wenig.. Andere Bildschirmauflösung wiederum wenig Punkte usw usf.
Je nachdem, wie oft eine Änderung vorkommt... Und dann legt man fest, ab was für einer Punktzahl man annimmt, dass man an einem anderen PC sitzt.
 
Ich bin jetzt aber so schlau und kaufe mir einen größeren Bildschirm, installiere mir deswegen ein Browser Addon um den Platz besser zu nutzen (SplitTab z.B.), update den Browser auf die neuste Version, installiere mir gleichzeitig eine neue Schrift (z.B. weil ich Designer bin und diese benötige) und lösche eine Schriftart weil die Käse ist. Alles zwischen zwei Besuchen auf der Seite.
Jetzt bin ich nicht mehr eindeutig ;) Auch wenn soviele Dinge auf einmal nicht alltäglich sind, kann es schon vorkommen. Also sich auf sowas zu verlassen halte ich für sehr wage.
 
Eindeutig wird nicht gehen, klar. (Außer nahezu über Cookie mit Hash oder was weiß ich.. wobei.. den könnte man natürlich auch fälschen ;))
Aber mit so einem System könnte man das wahrscheinlich schon viel genauer hinbekommen und je nach Zweck könnte so ein System ja auch schon reichen wenn eine falsche Erkennung nicht sehr schlimm wäre.
Und theoretisch könnte man sogar bei so einem System Kombinationen berücksichtigen :p Also neue Auflösung ergibt vermutlich auch dies und das... :ugly:
Das wäre dann aber richtig komplex und für ein kleines Projekt natürlich nicht empfehlenswert so eins zu programmieren. Aber.. als Open-Source Download so etwas anbieten, warum nicht? :biggrin:
 
Interessant wäre es vielleicht ein System zu entwickeln mit einer "Punkteliste" oder so in der Richtung..

na dann schlage mal vor wie du das realisieren willst ;)
Du kannst ja nicht einfach jedesmal alle Infos zum Server übertragen, der dann versucht anhand deiner Punktewerte zu bestimmen, ob du eine Person bist, die er schon kennt.
 
Er möchte das ja beim Login überprüfen.
Wenn man sich nun einloggt werden die Werte mit den in der DB gespeicherten verglichen und alles bestimmt... oder verstehe ich da was falsch?
 
Da werfe ich auch noch was anderes mit ein...

Es gibt doch Robots, Spider, oder wie die Dinger alle heißen!
Die können doch mitsenden was sie wollen.

Diese Teile haben keine Bildschirmauflösung, Schriftarten etc ...
Anhand solcher Daten etwas fest zu machen, finde ich wirklich nicht sinnvoll.
Auch wenn große Unternehmen solche Daten schon seit der Flashsache "sammeln" (Data Mining), finde ich es für eine kleine Seite völlig überflüssig...

Hat denn der Autor dieses Threads schon einmal eine kleine Anwendung in PHP geschrieben, die eine Webseite anfordert, diese im Browser (gefiltert) ausgibt, und wenn nötig Unterseiten nachlädt ?
Oder wenn ein Cookie angefordert wird, diesen ausliefern oder abspeichern ?
Es ist einiges mehr als immer nur ein HEAD, GET oder POST zuschicken ...

Naja wenn man meint, man müsse Tracking betreiben, sollte man sich auch mal tiefgehender mit der Materie beschäftigen !