Einen wirksamen und leicht zu implementierenden Spamschutz für Web-Formulare konnte ich gerade erfolgreich an einem eigenen Projekt testen.
Irgendwo im Netz habe ich von der Idee gelesen, einem HTML-Formular ein für den „menschlichen“ Leser nicht sichtbares Feld mitzugeben (per CSS unsichtbar gemacht). Dieses Extrafeld kann dann als Spam-Indikator dienen:
Werden alle Felder (einschließlich des unsichtbaren) ausgefüllt, kann man mit einiger Sicherheit davon ausgehen, dass ein Spam-Bot am Werk ist, der einfach blind das komplette Formular ausfüllt und dann abschickt. Ein Benutzer aus Fleisch und Blut würde das Feld ja nicht sehen und daher auch gar nicht ausfüllen können.
Hört sich simpel an – ist es auch. Und es funktioniert!
Nachdem ein von mir betreutes Gästebuch tagelang mit Spameinträgen zugemüllt wurde, ist jetzt endlich Ruhe im Karton.
Natürlich werden hartnäckigere Spam-Bots den Trick nach einer Weile umgehen, indem sie den Namen des Feldes erkennen und dieses bewusst leer lassen. Für größere und bekanntere Websites mag diese Methode also nicht ohne weiteres ausreichen. Aber dafür habe ich mir schon eine Lösung einfallen lassen…
Mehr dazu demnächst, wenn ich das mal selber getestet habe!