mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 15:19 Benutzername: Passwort: Auto-Login

Thema: PHP Bots erkennen vom 20.08.2013


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PHP Bots erkennen
Seite: 1, 2, 3  Weiter
Autor Nachricht
Azraeldark
Threadersteller

Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Di 20.08.2013 17:55
Titel

PHP Bots erkennen

Antworten mit Zitat Zum Seitenanfang

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?
  View user's profile Private Nachricht senden
m
Moderator

Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Di 20.08.2013 19:21
Titel

Antworten mit Zitat Zum Seitenanfang

Verifizierung über die E-Mail Adresse.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Azraeldark
Threadersteller

Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Di 20.08.2013 21:33
Titel

Antworten mit Zitat Zum Seitenanfang

Da hast du mich falsch verstanden Lächel

Wenn sich jemand angemeldet oder per email verifiziert hat, brauche ich ja keinen Filter mehr
  View user's profile Private Nachricht senden
pantonine

Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
Verfasst Di 20.08.2013 21:51
Titel

Antworten mit Zitat Zum Seitenanfang

Verstehe das Problem nicht. In welchem Kontext soll ein Bot erkannt werden?
  View user's profile Private Nachricht senden
Azraeldark
Threadersteller

Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Mi 21.08.2013 07:58
Titel

Antworten mit Zitat Zum Seitenanfang

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?
  View user's profile Private Nachricht senden
qualidat

Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht: Männlich
Verfasst Mi 21.08.2013 08:18
Titel

Antworten mit Zitat Zum Seitenanfang

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.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Azraeldark
Threadersteller

Dabei seit: 20.08.2013
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Mi 21.08.2013 08:29
Titel

Antworten mit Zitat Zum Seitenanfang

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. Lächel
  View user's profile Private Nachricht senden
qualidat

Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht: Männlich
Verfasst Mi 21.08.2013 08:44
Titel

Antworten mit Zitat Zum Seitenanfang

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 ...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ä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
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2, 3  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.