Einfacher WordPress Spamschutz für Contact Form 7 ohne reCAPTCHA

Mit dem Plugin Contact Form 7 Honeypot kannst du einen einfachen WordPress Spamschutz für Contact Form 7 nachrüsten und deine Formulare vor Spambots schützen – ohne nervige Captchas oder externem Laden von JavaScript durch Google’s reCAPTCHA Funktion.

Seit Anbeginn meiner Zeit mit WordPress nutze ich schon Contact Form 7 zur Erstellung von Formularen. Das Plugin hat stets gute Dienste verrichtet und da ich ingesamt nur ein einziges Kontaktformular auf meinem Theme Shop im Einsatz habe, war ein Wechsel zu Gravity Forms oder einem anderen Formular-Plugin für mich nie notwendig.

Spamabwehr für WordPress Formulare

Geändert haben sich im Laufe der Jahre aber die Anti-Spam-Maßnahmen. Ganz am Anfang hatte Contact Form 7 keinen eigenen Spamschutz, es gab aber mehrere Zusatz-Add-ons wie z.B. Really Simple CAPTCHA, um das Plugin mit klassischen Captchas zur Spamabwehr auszustatten.

Die ursprünglichen Captchas waren aus Sicht der Usability und Accessibility schrecklich. Meistens musste der Nutzer bestimmte Buchstabenketten erkennen, welche durch verzerrte Texte und Hintergrundmuster möglichst schwer zu lesen waren.

Abhilfe schaffte erst Google’s reCAPTCHA v2, mit dem in den meisten Fällen nur noch eine einfache Checkbox bestätigt werden musste, welche für Spambots aber ein Problem darstellte. Später trat mit Invisible reCaptcha das Captcha sogar vollständig in den Hintergrund.

Contact Form 7 integrierte reCAPTCHA mit Version 4.3, sodass keine zusätzlichen Plugins mehr benötigt wurden. Aufgrund der komfortablen Implementierung und verbesserten Usability hatte ich das Verfahren lange Jahre als Spamabwehr im Einsatz.

Google reCAPTCHA und der Datenschutz

Aufgrund der DSGVO rückt der Datenschutz momentan wieder stärker in den Fokus. Da mir der Schutz der persönlichen Daten meiner Besucher und Kunden durchaus wichtig ist, versuche ich, meine Websites Schritt-für-Schritt zu verbessern, erst einmal unabhängig davon, ob es für die DSGVO auch rechtlich erforderlich ist.

Getreu dem Motto der Datensparsamkeit halte ich es aber für sinnvoll, alternative Lösungen zu nutzen, wenn diese zur Verfügung stehen. Vor Kurzem habe ich ja bereits schon Google Fonts aus allen meinen Themes entfernt. Alle Schriftarten werden nun lokal eingebunden und nicht mehr extern von Google’s Font API geladen.

Google’s reCAPTCHA ist im Grunde das Gleiche. Statt Fonts wird etwas JavaScript von Google’s Servern geladen, welches für den Spamschutz des Formulars zuständig ist. Auch hier erhält Google die IP-Adressen von Website-Besuchern.

Es war deshalb Zeit, auf eine alternative Lösung umzustellen.

Contact Form 7 Honeypot

Contact Form 7 Honeypot ist eine einfache Erweiterung für CF7, welche das Plugin mit einer Anti-Spam-Funktionalität nachrüstet. Das Add-on steht im offiziellen WordPress-Plugin-Verzeichnis zum Download bereit und ist auf über 200.000 Websites aktiv.

Honeypot for Contact Form 7 fügt CF7-Formularen eine nicht-aufdringliche Honeypot-Anti-Spam-Funktion hinzu.

By WPExperts

(118)
Last Updated: 2 Wochen ago
400.000+ Active Installs
Compatible up to: 6.6.2

Für mich war es zum einen wichtig, eine Lösung ohne komplizierte Captchas zu finden, welche aus Usability-Sicht nur ein Rückschritt von reCAPTCHA gewesen wären. Zum anderen muss der Spamschutz natürlich auch zuverlässig funktionieren und möglichst alle Spambots abwehren.

Funktionsweise von Honeypot

Die Spamabwehr mit Honeypot klang daher nach der idealen Lösung. Die Plugin-Beschreibung auf WordPress.org liefert eine sehr schöne Erklärung der Funktionsweise, welche ich deshalb an dieser Stelle nur zitieren möchte:

Das Prinzip eines Honeypot ist einfach – Bots sind dumm. Während mancher Spam von Hand erzeugt wird, kommt die grosse Mehrheit von Bots, die auf eine spezielle (grossflächige) Art geschrieben sind um Spam über die meisten bekannten Formular-Typen zu versenden. Auf diese Art füllen sie blind Felder aus, unabhängig davon ob sie zwingend sind oder nicht. So fängt ein Honeypot den Bot – er führt ein zusätzliche Feld ein, das das Formular ungültig macht, wenn es ausgefüllt ist.

Quelle: WordPress.org

WordPress Spamschutz für Contact Form 7 konfigurieren

Das Plugin funktioniert sehr einfach.

Nach der Installation steht in Contact Form 7 ein neuer Button bereit, um ein Honeypot-Feld einzufügen. Im Frontend wird das Feld mit CSS ausgeblendet. Spambots tappen in die Falle und füllen das Feld fälschlicherweise aus, wodurch der Bot erkannt und die Anfrage verworfen wird.

Contact Form 7 Honeypot

Bei der Generierung des Honeypot-Felds wird empfohlen, eine andere Bezeichnung als den standardmäßigen Namen „honeypot“ zu verwenden, um Bots das Erkennen der Falle zu erschweren. Ein typischer Text wie E-Mail, Vorname oder Website ist besser.

Honeypot-Feld Generator

Im Support-Forum des Plugins wird unter anderem auch empfohlen, notfalls einfach zwei Honeypot-Felder einzubauen, um den Bots das Leben noch schwerer zu machen.

Wie zuverlässig schützt das Plugin vor Spam?

Im Endeffekt arbeitet Contact Form 7 Honeypot nur mit Hidden Fields. Das Plugin verspricht daher erst gar nicht, wirklich jeden Spam abhalten zu können. Google’s reCAPTCHA Verfahren wird bei sehr intelligenten Spambots wahrscheinlich einen noch besseren Schutz bieten.

Für meine eigene Website scheint der Schutzlevel aber ausreichend zu sein. Während ohne Spamschutz recht schnell der erste Spam eintrudelt, hat die Umstellung auf Honeypot zu keinem erhöhten Spam-Aufkommen geführt. Zumindest bist jetzt nicht 🙂

Spambots passen sich ständig an und womöglich funktioniert das Plugin nicht auf ewig. Bis dahin ist es jedoch eine sehr gute Alternative zu Captchas.