Sind auf der Webseite Kontaktformulare eingebaut, entwickeln sie sich manchmal zu wahren Spambot-Magneten. Mit etwas Honig lassen sich Spambots jedoch gut austricksen – und der Spam bleibt draußen.
SPAM-Einsendungen über Kontaktformulare verhindern
Ein Kontaktformular auf der Webseite ist eine super Sache, denn es löst viele Fragen bereits im Vorfeld. Der Webseitenbetreiber weiß automatisch, dass eine E-Mail zur Kontaktaufnahme bevorzugt wird und kennt die richtige E-Mail-Adresse sowie Postanschrift. Der Anfragende schreibt zugleich an die richtige Empfänger-Adresse. Kurz: Die Kontaktaufnahme wird erleichtert.
Das eigene Kontaktformular kann sogar als Kurzübersicht über die angebotenen Leistungen verwendet werden, indem man eine Liste mit „Ich interessiere mich für…“ einfügt. Selbstverständlich nicht als Pflichtfeld! Über den Sinn und Unsinn von Pflichtfeldern kann man einen eigenen Artikel schreiben – hier nur so viel: Pflichtfelder in Kontaktformularen sollten auf das absolute Minimum beschränkt werden.
Die „Überwindung“ Kontakt aufzunehmen, soll potenziellen Kund*innen schließlich erleichtert werden. Nervige Ausfragerei vertreibt sie nur von der eigenen Webseite. Also: Die E-Mail-Adresse zum Antworten und der Datenschutzhinweis sind klare Pflichtfelder, auch den Namen kann man gerne noch als Pflichtfeld einstellen – sonst nix!
SPAM ist die Schattenseite des Formulars
Der einzige Nachteil an (gut gemachten) Kontaktformularen ist, dass sie wahre Spambot-Magnete sind. Und dann ist schnell 200-mal dieselbe E-Mail mit „unwiderstehlichen“ oder eher widerlichen Angeboten im Postfach. Beim massenhaften Löschen wird womöglich auch noch die wichtige Nachricht einer Interessentin übersehen.
Was ist zu tun?
Exkurs: Woher kommt der Begriff „SPAM“?
SPAM steht ursprünglich für „Spiced Ham“ und ist der Eigenname für ein Dosenfleischprodukt. Im Zweiten Weltkrieg war SPAM eines der wenigen Nahrungsmittel, die in den USA trotz Rationierung fast überall erhältlich waren.
Diese Omnipräsenz von SPAM wurde 1970 in einem Sketch der britischen Comedygruppe Monty Python persifliert. Darin kommt ein Bistro vor, auf dessen Speisekarte fast ausschließlich Gerichte mit SPAM stehen. Der Gast hat also faktisch keine Wahl – er muss SPAM bestellen. In dem Sketch wird das Wort SPAM insgesamt 132-mal gesagt, geschrien und sogar gesungen – ziemlich nervig also. Die Verbreitung des Sketches führte schließlich dazu, dass das Wort in den 1990er Jahren zur Bezeichnung der omnipräsenten und störenden Werbe-E-Mails wurde.
Die Lösung von gestern: CAPTCHAs
Allgemein steht CAPTCHA für Completely Automated Public Turing test to tell Computers and Humans Apart – auf Deutsch: vollautomatischer öffentlicher Turing-Test zur Unterscheidung von Computern und Menschen. Ein CAPTCHA stellt idealerweise eine Aufgabe, die für Menschen einfach zu lösen ist, während sie für Computer sehr schwierig sein sollte.
Früher kamen hauptsächlich grafische Captchas zum Einsatz, zum Beispiel ein Text, der durch Bildfilter verzerrt wurde. Computer benötigen ressourcenintensive und aufwendig programmierte Mustererkennungs-Algorithmen, um derartige Bilder zu verarbeiten. Auch kleine Matheaufgaben mit teilweise ausgeschriebenen Zahlen werden gern verwendet. Die Aufgabe „4 mal vier“ ist für Menschen deutlich leichter als für Bots.
Die drei Probleme von CAPTCHAs
- Viele CAPTCHAs sind unter dem Gesichtspunkt der Benutzerfreundlichkeit problematisch. Schließlich erschließt sich der Zweck eines CAPTCHAs Nutzern nicht intuitiv. Und dies kann zu Irritationen über eine vermeintlich sinnlose Funktion sowie zu Nutzungsabbrüchen, Fehlermeldungen und Unzufriedenheit führen.
- Außerdem muss es eine barrierefreie Alternative zu einem grafischen CAPTCHA geben – oder möchten Sie ein Geschäft mit einem blinden oder einem absolut kopfrechenunwilligen Partner ausschließen?
- Als „Sahnehäubchen“ blocken manche vorinstallierten CAPTCHAs die Einsendung von SPAM nicht einmal zuverlässig!
Googles reCAPTCHA
Googles reCAPTCHA bietet grundsätzlich eine gute Lösung. Dabei müssen weder (vermeintlich) einfache Rechenaufgaben gelöst, noch hässliche Buchstaben oder Gegenstände erkannt werden: reCAPTCHA v3 erkennt den menschlichen Nutzer in den meisten Fällen schon an der Mauszeigerbewegung und ‑geschwindigkeit.
Auch die Barrierefreiheit ist gewährleistet – kommt zur zusätzlichen Absicherung ein grafisches CATPCHA zum Einsatz, so bietet Google immer eine akustische Alternative.
Leider wird reCAPTCHA über eine Google-API eingebunden und steht deshalb unter Datenschutzgesichtspunkten in der Kritik. Einige Cookie Management-Programme blockieren den Service sogar komplett. Bis sich die Situation mit dem Privacy Shield klärt (ha ha) kann die Einbindung von reCAPTCHA also nicht mehr uneingeschränkt empfohlen werden.
Es muss also was Neues her: Der Honeypot
Der Honeypot (auf Deutsch: Honigtopf) ist in der IT eine Attrappe, die auf einen Angreifer oder Bot „schmackhaft“ wirkt, ihn aber in eine Falle lockt und gleichzeitig von wirklich lohnenden Zielen ablenkt. Also der Käse in der Mausefalle…
Sie fragen, was das jetzt bedeutet? Das heißt, dass im Kontaktformular ein unsichtbares Feld eingebaut ist, das keine Daten irgendwohin schickt – und das ist auch der Trick dabei! Der Honeypot funktioniert wie ein „umgekehrtes Pflichtfeld“: Wer dieses Feld ausfüllt, fällt durch den Test und kann das Formular nicht abschicken.
Cool – und wie funktioniert das genau?
Der Honeypot wird im Kontaktformular als Textfeld angelegt und mit einem für Bots „schmackhaften“ Label wie „Betreff“ oder „Link“ betitelt. Dann wird eingestellt, dass dieses Feld leer sein muss, damit das Formular abgeschickt werden darf.
Und wie verhindert man, dass normale, echte Menschen dieses Feld ausfüllen?
Ganz einfach: Man „versteckt“ es für den Website-Besucher mit einem einfachen CSS-Befehl (display: none;) Damit ist es auf dem Frontend für den Website-Besucher unsichtbar – er schreibt also auch nichts rein.
Und warum schreibt ein Bot was rein?
Ganz einfach: Ein Spambot liest die Website nicht wie ein Mensch. Man kann sich das wie im Theater oder im Film vorstellen: Der Set-Designer (oder Web-Designer) zeigt seinem Publikum eine schöne „Bühnenkulisse“, das „Frontend“ der Webseite.
Der Bot betrachtet die Theaterbühne aber nicht wie das Publikum, sondern aus der Perspektive des Bühnentechnikers. Er wirft einen Blick hinter die Kulisse und findet dort das auf dem Frontend durch CSS versteckte Honigtöpfchen. Natürlich füllt er es auch aus – dafür wurde er ja programmiert.
Und die Barrierefreiheit? Lustigerweise „sieht“ hier der Blinde mehr: sein Screenreader liest die Webseite nämlich genau so, wie ein Bot es tut und liest dem Benutzer also auch den Honeypot vor.
Deshalb sollte dieser immer einen Hinweis enthalten, dass ein Mensch ihn leer lassen sollte. Bots werden sich an diesen höflichen Hinweis nicht halten – blinde Menschen vermutlich schon.
Zusammenfassung
In einem Kontaktformular verhindert ein Honeypot die Einsendungen von Spambots zuverlässig – ganz ohne Bedenken zu Datenschutz oder Barrierefreiheit. Er nervt oder stört den Webseitenbesucher auch nicht, denn der Anwender merkt ja nichts davon. Und ihn in ein Kontaktformular einzubauen ist auch nicht schwer – also ran an den Honigtopf.
Juliane de Vries ist Programmiererin der Web-Agentur sixhop.net. Als Frau vom Fach sind Ihre Praxis-Tipps Gold wert!
- Telefon: +(0)89-2488-2900
- E-Mail: juli@jdevries.de
- Adresse: Lochhauser Str. 57, 82178 Puchheim