Sicherheit
Wie man ein Kontaktformular vor Spam schützt
Honeypot-Felder, Rate-Limiting und Validierung — einfache Techniken, die Spam fernhalten, ohne nervige CAPTCHA-Aufgaben für Nutzer.
Ein Kontaktformular auf einer öffentlichen Website ohne jeden Schutz beginnt früher oder später — meist schneller als erwartet — automatisierten Spam zu empfangen: Bots scannen ständig das Internet nach ungeschützten Formularen und überfluten Ihren Posteingang mit sinnlosen oder betrügerischen Nachrichten, was es ernsthaft erschwert, echte Anfragen echter Kunden zu bemerken.
Wirksame Techniken ohne nerviges CAPTCHA
Honeypot-Feld — ein zusätzliches Formularfeld, das für menschliche Besucher visuell versteckt ist (per CSS), das aber automatisierte Bots, die die Seite nicht wie ein Mensch „sehen“, sondern den rohen Code lesen, trotzdem ausfüllen — und sich damit selbst als Bot verraten, sodass ihre Nachricht still verworfen wird, ohne jede Warnung an den Nutzer.
Rate-Limiting (Begrenzung der Versuche) — begrenzt, wie oft das Formular von derselben E-Mail-Adresse oder IP-Adresse in kurzer Zeit gesendet werden kann, und verhindert, dass Bots den Posteingang mit Hunderten Nachrichten pro Minute überfluten.
Validierung auf Serverebene, nicht nur im Browser — die Prüfung des E-Mail-Formats, der maximalen Eingabelänge jedes Feldes und ähnlicher Regeln muss auf dem Server erfolgen, weil Browservalidierung leicht umgangen wird, indem Anfragen direkt am Formular vorbei gesendet werden.
Warum wir CAPTCHA bewusst vermeiden, wo immer möglich
CAPTCHA (dieser „Ich bin kein Roboter“-Test mit Ampel- und Fahrradbildern) senkt messbar die Zahl echter, legitimer Anfragen, weil es echte Nutzer frustriert und verlangsamt, besonders auf dem Handy, wo präzises Tippen auf kleine Bilder schwerer ist.
Die Kombination aus Honeypot-Feld und Rate-Limiting ist meist völlig ausreichender Spam-Schutz — ohne diesen Preis in Form verlorener echter Anfragen und schlechterer Nutzererfahrung für die Menschen, die Sie tatsächlich kontaktieren sollen.
Verwandtes
Nikola Cerić
Gründer & Geschäftsführer, Manage IT
Mehr als 10 Jahre Erfahrung in der Softwareentwicklung — im eigenen Unternehmen und in großen IT-Firmen des Balkans.