Gästebuch zugespammt, Lösung?

maxk

Aktives Mitglied
Thread Starter
Dabei seit
11.08.2005
Beiträge
206
Reaktionspunkte
17
Hallo!

Ich habe für einen Freund eine Homepage für sein Gasthaus gemacht. Es hat einen eher ländlichen Charakter und so auch die Homepage.

Seit kurzem wird das Gästebuch regelmäßig von Bots zugespammt, da ich keinen Schutz vor automatisierten Agenten eingebaut habe.

Als Lösung wäre das Abtippen eines Codes auf einem Bild möglich, wie man es oft findet, siehe Wikipedia/CAPTCHA. Die Zielgruppe des Gasthauses, also auch die Besucher der Homepage, sind jedoch eher Leute, die wenig Erfahrung im Umgang mit dem Internet haben. Und genau diese will ich mit eigentümlichen Codes nicht abschrecken.

Jetzt kommt mein Anliegen: Gibt es vernünftige Alternativen zu CAPTCHA? Wie kann ich die beiden Konzepte Bedienbarkeit und Sicherheit vereinen?

Danke für Vorschläge, Markus
 
Man könnte noch die Beiträge von Hand freigeben. Solange es nicht zu viele werden geht das denke ich auch ganz gut.!
 
Aus dem gleichen Problem heraus, habe ich bei meinem Gästebuch die Textfelder anders benannt und die Seite auch nicht als gaestebuch oder guestbook abgespeichert.
Das hält schon mal einige Bots ab.
Dann habe ich alle Textfelder per PHP eingeschränkt, so dass im Feld E-Mailadresse eine E-Mailadresse rein muss, in allen anderen Feldern aber keine rein DARF.
Bots machen ja willkürlich überall irgendwelche Adressen rein, damit es dann auch akzeptiert wird.

Nachdem ich in einer Nacht mal 800 Spams im GB hatte, habe ich damit seither absolute Ruhe. :)
 
Da hänge ich mich gleich dazu. Hab das Problem auch!
Derzeitige Lösung für mich: Alle Felder sind Pflichtfelder, nach dem abschicken bekomme ich ein eMail (Filterregel!). Dann lasse ich es für 24 (oder 12, je nach Einstellung) Stunden anzeigen und wenn ich es bis dahin nicht bestätigt habe, wird es automatisch gelöscht.

Bekomme schon wegen der Pflichtfelder keine SPAM eMails mehr, die paar, die alle Felder befüllen. Sortiere ich erst später aus.

HP
 
Ja das Problem ist wirklich schlimm, bei uns hat es sehr viel gebracht als wir damals gesagt haben das "bestimmte Wörter" nicht im Kommentar sein dürfen... zB. http:// dafür gibts das Feld: Homepage ....
Seit kurzem haben wir wieder ein paar mehr die wir aussortieren... mal schauen, wenn es schlimmer wird, muss mein Schatz wieder "ran"...
 
  • Gefällt mir
Reaktionen: maxk
Also eine manuelle Freigabe halte ich für völlig sinnlos, ob du am Ende 1000 Spams offline bearbeiten musst, oder online löschen, kommt aufs Gleiche raus.

Wie gesagt, Bots verfahren in der Regel nach dem gleichen Muster. Sie lesen den Quellcode.
Nenne das input-Feld für Hompage um, also statt "url" "email", dann liest der Bot "email" und trägt eine Emailadresse ein, das verbietest du aber z. B. mit

PHP:
if(
(ereg("([a-zA-Z0-9\.\_\-]+)@([a-zA-Z0-9\.\-]+\.[A-Za-z][A-Za-z]+)$", $email))
){$fehler=3;}
else {}
umgekehrt dann das gleiche für das Mailadressenfeld, dass dann nicht "email" heißen darf.

Der normale Besucher bekommt davon dann natürlich nichts mit.
Du kannst dann die sichtbaren Bezeichungen "Homepage" (und den Inhalt "http://") und "E-Mail" z. B. durch Unicode-Zeichen codieren, dann lesen das Bots auch nicht.
 
  • Gefällt mir
Reaktionen: maxk
@Nanos

Mit solchen Dingen "verschreckt" man doch auch manchen Benutzer, bzw. wenn ich da "tausende" Tests machen muss, bzw. Codes identifizieren muss, ist die Lust einen Gästebucheintrag zu hinterlassen auch bei 0.
 
dem stimme ich zu @BlueAngel,
jedoch habe ich aktuell keine andere, funktionierende Lösung.
 
Ich lass da einfach kurz ne kurze Rechenaufgabe generieren (*,-,+ mit zahlen von 0-10). Hilft auch und ist nicht ganz so kompliziert wie Captchas, die selbst Menschen nur noch schwer erkennen können...

Gruß,
Ace
 
@Ace gut das es am Rechner einen Taschenrechner gibt *sehr frech grins*
 
Wow, danke für die Anregungen.

Ich bin gerade dabei, das Skript umzuschreiben. Mir ist aufgefallen, dass die Spams immer eine URL im Text enthalten, also ist das Filtern recht einfach.

Ich suche also mittels strpos das Vorkommen von "http", gibt strpos FALSE zurück, ok, sonst verwerfe ich den Eintrag.

Jetzt habe ich aber ein Problem mit strpos. Der Server gibt mir
Code:
Undefined subroutine &main::strpos called at blablablabla/gbook.cgi line 291.
aus.

Was hat das zu bedeuten?
An anderer Stelle im Code verwende ich substr, das funktioniert einwandfrei...

EDIT: Das Problem hat sich erledigt -> falsche Programmiersprache :)
 
Zuletzt bearbeitet:
Hier mal reinschauen lohnt sich sicher auch... (Habe das für`s Kontaktformular benutzt)

Dem Gästebucheintrag schalte ich ehrlich gesagt auch ein Bildchen vor, mit einem Sicherheitscode. M.E. die sicherste Lösung gegen SPAM - und die User kennen das Verfahren mittlerweile von vielen anderen Seiten.
 
Ich bin gerade dabei, das Skript umzuschreiben. Mir ist aufgefallen, dass die Spams immer eine URL im Text enthalten, also ist das Filtern recht einfach.

Ich suche also mittels strpos das Vorkommen von "http", gibt strpos FALSE zurück, ok, sonst verwerfe ich den Eintrag.

Was ist denn wenn dir mal jmd. einen vernünftigen Link da reinsetzen will?

Das ganze Parsen führt m.E. zu nichts, ausser dass man sich selbst total einschränkt.

Hier gibts ein freies Sicherheitscode-Script, dass auch ganz einfach zu verwenden ist.
 
Was ist denn wenn dir mal jmd. einen vernünftigen Link da reinsetzen will?

Das ganze Parsen führt m.E. zu nichts, ausser dass man sich selbst total einschränkt.

Hier gibts ein freies Sicherheitscode-Script, dass auch ganz einfach zu verwenden ist.

Für Links gibts ein eigenes Feld, das ist nicht das Problem.

Zum Thema Captchas hab ich schon was geschrieben -> wirken bei dieser Zielgruppe nur abschreckend

Ich hab das Skript jetzt soweit angepasst, dass es den eingegebenen Text auf "http:" parst, mal schauen, wie gut das wirkt.

Danke an alle!
 
Also wie oben schon beschrieben, hast du die halbe Miete, wenn du die Tags verschlüsselst oder umbenennst und die Eingabe einschränkst. Wenn du willst, dann schicke ich dir mal eine PHP-Vorlage mit dem ganzen Inhalt, das kannst du gerne für dein Gästebuch übernehmen.
Wie gesagt, ich hatte schon zig Spam, jetzt gar keinen mehr. :)
 
Wenn du willst, dann schicke ich dir mal eine PHP-Vorlage mit dem ganzen Inhalt, das kannst du gerne für dein Gästebuch übernehmen.

Ich würde mir deine Umsetzung gerne mal anschauen. Das mit dem Umbenennen der Bezeichnungen werde ich auch noch machen. Ist wirklich eine ausgezeichnete Idee.

Danke nochmals
 
Okay, hab’s dir hier mal angehängt. Hab meine spezifischen Daten rausgenommen und Platzhalter mit Erklärungen eingesetzt, damit du weißt, was für was stehen soll.

Hab die Filter noch erweitert. Z. B. verwenden Spambots häufig willkürliche E-Mailadressen mit der Domain des Gästebuchs, da diese selten gefiltert wereden und genau das habe ich unterbunden, außer tatsächlich existierende Adressen.

Das Formular habe ich ausgelagert und per "<form action...>" eingebunden.
Man könnte es aber auch direkt integrieren.

Wenn du Fragen dazu hast, melde ich.
 

Anhänge

  • gb_schreiben.php.zip
    2 KB · Aufrufe: 66
Zurück
Oben Unten