Captcha: Spam verhindern

CAPTCHA: WordPress Formular Spam verhindern oder: Wer ist Eric Jones?

Die Abkürzung CAPTCHA steht für „Completely Automated Public Turing test to tell Computers and Humans Apart“.  Damit lässt sich Spam verhindern, indem festgestellt wird, ob ein Formulareintrag von einem Menschen oder einem Bot stammt. Website-Users werden vor dem Absenden eines Formulars gebeten zu bestätigen, dass sie ein Mensch sind, und/oder ein Bildrätsel zu lösen. Solange die Bilderkennung durch Bots der menschlichen Unterscheidungsfähigkeit noch unterlegen ist, bleibt diese Methode eine der effektivsten Maßnahmen, um Spam zu stoppen. 

Hast du schon einmal Post von einem gewissen „Eric Jones“ bekommen, der dir zu deiner WordPress-Website gratuliert? Und dabei überlegt, ob der Email-Absender wohl ein Mensch oder ein Spam-Bot ist? Dann geht es dir wie vielen anderen. Ich verrate es dir gleich: „Eric Jones“ ist nur einer von unzähligen weiteren Spam-Bots. 

Sollten dir der berüchtigte Eric Jones und andere Spam-Bots irgendwann so sehr auf die Nerven gehen, dass es dir nicht mehr reicht ihre Emails einfach zu ignorieren und du endgültig genug von ihnen hast, sind CAPTCHAS eine gute Lösung. Damit lässt sich ein Großteil der Formular-Einträge durch Spam-Bots verhindern. In diesem Blog-Artikel erkläre ich dir, wie das funktioniert.

 

WordPress Formulare

Zuerst überprüfen wir, welche Formulare auf der Website nötig sind. Kaum eine WordPress-Website kommt ohne Formulare aus, von Newsletter-Anmeldeformularen über Kontaktformulare bis hin zu Registrierungs-Formularen. Bei all diesen Formular-Typen geht es unter anderem darum, dass wir einerseits menschliche Einträge so einfach wie möglich machen und andererseits Spam verhindern wollen.

Ein besonders beliebtes Ziel für Spam sind allerdings die Kommentar-Formulare. Auf diese kann in den meisten Fällen ganz verzichtet werden.

Ich verwende auf den meisten WordPress-Websites das klassische WP-Plugin WPForms. Neben Contact Form 7 ist WPForms eines der am häufigsten verwendeten Formular-Plugins für WordPress. Für beide sind CAPTCHA-Lösungen verfügbar.

WPForms

Mit WPForms können Formulare erstellt und an einer beliebigen Stelle der Website per Shortcode eingeblendet werden. 

Auch in der Gratis-Version WPForms Lite gibt es schon umfangreiche Formularoptionen. Weitere Formularfelder und Funktionen bis hin zur Kreditkarten-Zahlungsabwicklung oder auch Custom Captchas sind in den Premium-Versionen enthalten.

Hier ein Beispiel eines einfachen WPForms Kontaktformulars:

Captcha: Spam verhindern
Captcha: Spam verhindern

Im Bild links / Mitte siehst du die Feld-Option CAPTCHA, die hier noch nicht konfiguriert ist.

WPForms bietet Integrationen der beiden Captcha-Lösungen reCAPTCHA und hCaptcha, die ich weiter unten genauer vorstellen werde. Erst nach der Auswahl der Captcha-Variante in den WPForms-Einstellungen kann das CAPTCHA-Feld in das Formular eingefügt werden.

Captcha: Spam verhindern
Captcha: Spam verhindern

Sowohl für hCaptcha als auch für reCAPTCHA benötigst du einen Account beim jeweiligen Anbieter. In diesem Account werden der Website-Schlüssel (Site Key) und der Geheim-Schlüssel (Secret Key) erstellt, die die Voraussetzung für die Verwendung der CAPTCHA-Anwendungen bilden. Dazu aber später mehr in den Kapiteln reCAPTCHA und hCaptcha.

Contact Form 7

Der Form Builder von  Contact Form 7 ist etwas weniger benutzerfreundlich als WPForms, aber grundsätzlich ebenso einfach zu verwenden. Ein Kontaktformular ist rasch erstellt:

Captcha: Spam verhindern
Captcha: Spam verhindern

Contact Form 7 bietet direkt im Plugin nur die Integration von reCAPTCHA an, die unter dem Punkt „Integration“ konfiguriert werden kann.

Allerdings ist über einen Umweg auch die Verwendung von hCaptcha mit Contact Form 7 möglich! Wie das geht, beschreibe ich am Ende dieses Blog-Artikels unter WP-Plugin hCaptcha.

Spam verhindern mit CAPTCHA

Spam-Bots sind Computerprogramme, die automatisiert zum Beispiel als Dienstleistungsangebote (von häufig nicht existierenden Unternehmen) getarnten Spam generieren und unzählige Formulareinträge erstellen.

Durch CAPTCHAs lässt sich diese Art von Spam wenigstens teilweise verhindern. Ein typischer CAPTCHA-Test zeigt Bilder oder verzerrte Buchstaben und kann von den meisten Menschen problemlos gelöst werden, während Bilderkennungs-Software damit noch Schwierigkeiten hat. So gelingt es, mittels CAPTCHA herauszufinden, ob ein Formulareintrag von Mensch oder Maschine stammt.

Captcha: Spam verhindern

reCAPTCHA

reCAPTCHA, die klassische CAPTCHA-Lösung von Google, ist die aktuell noch am häufigsten eingesetzte Methode, um Formular-Spam zu verhindern. 

So gut wie alle Formular-Plugins bieten reCAPTCHA-Integrationen an, während Alternativen dazu teilweise noch etwas aufwendiger einzubauen sind. WPForms weist allerdings in einem Blog-Beitrag auch schon auf relativ einfache alternative Möglichkeiten hin, wie hier auf Englisch nachzulesen: Best reCAPTCHA Alternatives

Andererseits nutzt Google seinen Technologievorsprung auch dafür, reCAPTCHA benutzerfreundlicher zu machen, indem es neben der klassischen Variante reCAPTCHA v2 mit dem Bildrätsel die neuere Version reCAPTCHA v3 entwickelt hat, die unsichtbar ohne Bildauswahl im Hintergrund läuft und Website-Nutzer:innen überhaupt erst dann angezeigt wird, wenn Google „verdächtiges“ (also auf Bots hinweisendes) Verhalten feststellt.

Für eine bessere Vergleichbarkeit der reCAPTCHA-Lösungen beschreibe ich hier das Erstellen der Site Keys für reCAPTCHA v2 (Bildrätsel). Dafür ist ein Google-Account nötig. Nach dem Einloggen  auf https://www.google.com/recaptcha wird die eigene Domain hinzugefügt und ein Site Key und ein Secret Key erstellt. 

Captcha: Spam verhindern
Captcha: Spam verhindern

Die erstellten Keys sind nach der Erstellung unter „reCAPTCHA-Schlüssel“ zu finden und können dort kopiert und in WordPress übertragen werden.

hCaptcha

Mit hCaptcha steht eine Alternative zu Googles reCAPTCHA zur Verfügung, die im Vergleich weniger Nutzerdaten sammelt und insgesamt transparentere Informationen zur Datenverwendung anbietet.

Für das Erstellen des CAPTCHAs wird zuerst ein hCaptcha-Account erstellt. Ist dieser angelegt, wird mit „New Site“ die eigene Domain / Anwendung hinzugefügt und ein Site Key erstellt, der nach dem Abspeichern in der Sites-Liste zu finden ist. In den Account-Settings findet sich hingegen der Secret Key, der ebenfalls für den späteren Eintrag in WordPress benötigt wird. Und das ist auch schon alles! 

Captcha: Spam verhindern
Captcha: Spam verhindern

WP-Plugin hCaptcha

Es gibt verschiedene Möglichkeiten, wie Captchas zu einem Formular hinzugefügt werden können: a) Custom Code, b) über das jeweilige Formular-Plugin (falls dieses eine Integration anbietet, wie weiter oben in diesem Blog-Artikel beschrieben) bzw. c) im Fall von hCaptcha über das WP-Plugin hCaptcha. Falls du zum Beispiel Contact Form 7 verwendest, das keine hCaptcha-Integration anbietet, kannst du mittels dieses Plugins nicht nur reCAPTCHA, sondern auch hCaptcha hinzufügen!

Das WP-Plugin hCaptcha unterstützt zahlreiche Formulartypen, andere Plugins wie WooCommerce bzw. Themes. Falls du verschiedene Formulare auf deiner Website verwendest, also z.B. WooCommerce-Formulare und zusätzlich WPForms oder Contact Form 7 für die Newsletter-Anmeldung, ist dieses Plugin sehr praktisch, da du damit hCaptcha zentral zu allen Formularen hinzufügen kannst, und zwar unabhängig davon, ob das jeweilige Plugin eine hCaptcha-Integration anbietet oder (noch) nicht 

Captcha: Spam verhindern

Fazit

Eine der bewährtesten Methoden, um Formular-Spam durch Bots zu verhindern, ist derzeit der Einsatz von CAPTCHA-Lösungen von reCAPTCHA oder hCaptcha. Ganz nach dem Motto: Captcha, gotcha, Eric!

PS: Dieser Blog-Beitrag enthält Affiliate-Links zur Plattform ShareASale. Das bedeutet, dass ADAWEB beim Kauf einer WPForms Lizenz eine Provision erhält.

ADAWEB ist als WordPress-Agentur auf die technische und kreative Umsetzung individueller Websites spezialisiert. Informiere dich unverbindlich über unsere Leistungen und Preise.

Wir freuen uns auf deine Anfrage.

Über die Autorin*