Autor |
Nachricht |
Azraeldark
Threadersteller
Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Di 20.08.2013 17:55
Titel PHP Bots erkennen |
|
|
Hallo liebes Forum.
Ich stehe vor einem Problem, bei dem mir nicht einmal google weiterhelfen konnte.
Kurz um:
Ich baue gerade selbst ein Forum (also Eigenentwicklung), da ich bei meinen bisherigen PHPBB Foren ständig mit Spams zu kämpfen hatte und dies trotz unzähliger Plugins nicht in den Griff bekommen zu war.
Nun möchte ich natürlich schon vor dem Login auch Bots von echten Menschen unterscheiden können um schlicht die Datenbank mit eben einem Bot oder einem Gast zu füttern.
Blöderweise, scheint es keine 100%ige Lösung zu geben Bots zu filtern, da diese sowohl mit der IP als auch mit dem USER AGENT variieren.
Mein letzter Gedanke war Ajax. Sprich: Beim ersten Aufruf eine Session setzen und zeitgleich via Ajax prüfen ob die Index innerhalb von 3 Sekunden nochmal aufgerufen wurde (Was ja für einen Bot sprechen könnte)
Soweit so gut, funzt auch.
Aber das gelbe vom Ei ist das nicht, da 3 Sekunden für Jacascript schon hart an der Grenze sind. Ich möchte Bots ja nicht sperren. Aber zumindest möchte ich wissen, obs Googlebots sind oder nicht (wie das geht weiß ich)
Alle anderen Bots möchte ich nur teilweise Zugriff erlauben. Da aber mit meiner jetztigen Lösung kein Bot eine Chance hat (Um meine Seite auszulesen braucht ein Bot weniger Sekunden) stehe ich jetzt etwas auf dem Schlauch.
Kurz um. Ich suche nach der fliegenden Wollmilchsau.
Einer Möglichkeit, die Bots zuverlässig beim ersten Aufruf erkennt und ich dann mit diesen Werten weiter arbeiten kann.
Gibt es sowas?
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 20.08.2013 19:21
Titel
|
|
|
Verifizierung über die E-Mail Adresse.
|
|
|
|
|
Anzeige
|
|
|
Azraeldark
Threadersteller
Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Di 20.08.2013 21:33
Titel
|
|
|
Da hast du mich falsch verstanden
Wenn sich jemand angemeldet oder per email verifiziert hat, brauche ich ja keinen Filter mehr
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
Verfasst Di 20.08.2013 21:51
Titel
|
|
|
Verstehe das Problem nicht. In welchem Kontext soll ein Bot erkannt werden?
|
|
|
|
|
Azraeldark
Threadersteller
Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Mi 21.08.2013 07:58
Titel
|
|
|
Ich möchte einfach wissen. wer oder was sich auf meiner Seite herumtreibt.
Man lönnte es auch anders hrum machen. Und zwar die Menschen filtern.
Hintergrund:
In fast jedem Forum gibt es ja die Möglichkeit auch Online Gäste zu sehen. (Also nicht angemeldet)
In meinem Forum soll dass das selbe sein, zumal ich meinen Gästen in bestimmten Bereichen sogar ein paar Rechte zuteilen möcte.
Andererseits möchte ich aber auch wissen wann und wo ein Bot auf meiner Seite war.
Mein neuer Ansatz ist jetzt der, dass ich erstmal die IP auf der DB speichere, bzw. wenn schon vorhanden lediglich den Timestamp beim neuaufruf der Seite prüfe. Wenn die Prüfung ergibt, dass die IP vor zB.2 Sekunden gespeichert wurde, kann man wahrscheinlich von einem Bot ausgehen. Richtig oder? Ein Mensch würde wahrscheinlich , auch wenn der die Seite schon kennt und zu einem bestimmten Bereich gehen möchte, sicher sogar beim schnellen klicken wenigstens 3 Sekunden brauchen.
Ist der Ansatz brauchbar oder gibt es da bessere Lösungen?
|
|
|
|
|
qualidat
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mi 21.08.2013 08:18
Titel
|
|
|
Du kannst ja mal versuchen, (per Javbascript und Timer) die Mausbewegungen zu tracken und beim Seitenwechsel per POST mitzusenden. Sind die extrem geradlinig oder garnicht vorhanden, ists wohl ein Bot.
Alternativ dazu könnte man versuchen die Bildschirmauflösung zu ermitteln. Ich weiss nicht, was das Ergebnis bei einem Bot ist, evtl. Garnichts - musst du mal testen.
|
|
|
|
|
Azraeldark
Threadersteller
Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Mi 21.08.2013 08:29
Titel
|
|
|
Ja das hatte ich auch schon versucht. Ist aber nicht das gelbe vom Ei. Bildschirmauflösung ist aber eine gute Idee.
Dennoch wollte ich iwie von JS weg bei der Ermittlung.
Ich werds jetzt aber mit der groben Kelle probieren und eben 10 Sekunden nehmen. Dann ist eben auch ein Gast solange ein Bot, bis er eben tatsächlich mal irgendwo 10 Sekunden verweilt.
|
|
|
|
|
qualidat
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mi 21.08.2013 08:44
Titel
|
|
|
Azraeldark hat geschrieben: | Dennoch wollte ich iwie von JS weg bei der Ermittlung. |
Warum? Da PHP serverseitig läuft, kannst du ohne Interaktion lediglich das Zeitverhalten erkennen. Der Benutzer agiert aber hauptsächlich lokal und da gibts nichts anderes als JS ...
|
|
|
|
|
|
|
|
Ähnliche Themen |
Webseite vor unerwünschten Bots schützen
Zeichen erkennen
JavaScript erkennen
VLC - Bildformate erkennen
Wie Schriftarten auf Webseiten erkennen?
{php} farbe aus bild erkennen
|
|