Fast jede Unternehmenswebsite hat Formulare: Kontakt, Rückruf, Newsletter, Angebotsanfrage, Kundenkonto, Meldestellen. Viele davon schicken nach dem Absenden eine automatische E-Mail an die eingetragene Adresse: „Guten Tag Frau Muster, vielen Dank für Ihre Nachricht. Wir melden uns in Kürze.“ Das ist höflich und gibt der Person die Gewissheit, dass ihre Anfrage angekommen ist.
Genau diese Bestätigungsmail lässt sich missbrauchen. Beim Webformular-Missbrauch, im Englischen oft Form Hijacking genannt, trägt ein Angreifer nicht seine eigene Adresse ein, sondern die eines Opfers. In das Namensfeld schreibt er keinen Namen, sondern einen Werbetext oder einen Link auf eine betrügerische Seite. Die Website setzt diesen Text brav in die Anrede ein und verschickt die Nachricht. Beim Opfer kommt eine E-Mail an, die tatsächlich von Ihrer Domain stammt, alle technischen Prüfungen besteht und mitten im Text die Botschaft des Angreifers enthält.
Warum Angreifer fremde Formulare nutzen
Wer Spam oder Phishing verschicken will, hat ein Zustellproblem. Eigene Server landen schnell auf Sperrlisten, gefälschte Absender fallen bei SPF, DKIM und DMARC durch. Eine seriöse Unternehmensdomain mit sauber eingerichtetem Versand hat dagegen einen guten Ruf bei den Postfachanbietern. Ihre Nachrichten kommen im Posteingang an.
Für den Angreifer ist Ihr Formular deshalb ein kostenloser Versanddienst mit geliehenem Vertrauen. Der Empfänger sieht einen bekannten Absender und liest eher weiter. Ein Skript kann das Formular tausendfach mit wechselnden Zieladressen absenden. Jede einzelne Nachricht sieht aus wie eine normale Bestätigung.
Der Schaden liegt bei Ihnen:
- Ruf der Domain. Markieren Empfänger die Nachrichten als Spam, steigt die Spamrate Ihrer Domain. Google empfiehlt in seinen Richtlinien für E-Mail-Absender, die Spamrate unter 0,1 Prozent zu halten, und bezeichnet 0,3 Prozent oder mehr als dringend zu vermeiden.
- Zustellung der echten Mails. Leidet der Ruf, landen auch Rechnungen, Bestellbestätigungen und Antworten an echte Kunden im Spamordner. Das betrifft oft den gesamten Versand der Domain, nicht nur das Formular.
- Vertrauen. Wer eine Phishing-Mail mit Ihrem Namen im Absender erhält, verbindet den Betrug mit Ihrem Unternehmen, auch wenn Sie selbst Opfer sind.
- Verfälschte Daten. Die Anfragen landen in CRM und Newsletter-Liste und sehen in den Auswertungen aus wie Interessenten. Ähnliche Effekte beschreiben wir in Bot-Traffic im Onlineshop.
Welche Formulare betroffen sind
Anfällig ist jedes Formular, das zwei Bedingungen erfüllt: Es schickt eine E-Mail an eine Adresse, die der Absender frei eintragen kann, und diese E-Mail enthält Text, den der Absender selbst geschrieben hat. Typische Kandidaten:
- Kontakt- und Anfrageformulare mit automatischer Eingangsbestätigung
- Newsletter-Anmeldungen, deren Bestätigungsmail den eingetragenen Namen enthält
- Registrierungen für Kundenkonten, Downloads oder Veranstaltungen
- Funktionen wie „Seite an einen Freund senden“ oder „Merkliste per E-Mail“
- Melde- und Beschwerdeformulare, die eine Kopie an den Absender schicken
Oft hat niemand diese Mails bewusst gestaltet. Sie sind eine Standardeinstellung des Formular-Plugins, des Shopsystems oder des Marketingwerkzeugs, und kaum jemand sieht sie je wieder an.
So prüfen wir ein Formular
Die Prüfung dauert pro Formular wenige Minuten und braucht keine Spezialwerkzeuge, nur eine eigene Testadresse. Wir gehen dabei immer in derselben Reihenfolge vor:
- Bestandsaufnahme. Alle Formulare der Website auflisten, auch solche auf Unterseiten, in Pop-ups und in Kundenkonten. Für jedes notieren, ob es eine Mail an die eingetragene Adresse verschickt.
- Testeintrag. Im Namensfeld statt eines Namens einen längeren Satz eintragen, gefolgt von der Webadresse der eigenen Website, dazu die eigene Testadresse. Danach dasselbe mit mehreren hundert Zeichen wiederholen.
- Ergebnis lesen. Kommt die Bestätigung an? Steht der Satz mit Adresse darin? Ist die Adresse im Mailprogramm anklickbar? Wurde der lange Text vollständig übernommen?
- Server statt Browser prüfen. Eine Längenbegrenzung im HTML-Formular hält ein Skript nicht auf, weil es die Daten direkt an den Server schickt. Ob die Prüfung auch auf dem Server greift, zeigt erst ein Test, der das Formular umgeht. Das erledigt die Entwicklung oder der Dienstleister des Formulars.
- Wiederholung testen. Das Formular mehrmals kurz hintereinander absenden und beobachten, ob irgendwann eine Grenze greift.
Erscheint der eingetragene Satz samt Link in der Bestätigung, ist das Formular missbrauchbar. Fehlt eine Grenze für wiederholte Einsendungen, lässt es sich zudem in großem Umfang einsetzen.
Was die Bestätigungsmail enthalten darf
Die wirksamste Maßnahme ist zugleich die einfachste: Die Mail an eine nicht bestätigte Adresse enthält keinen Text, den der Absender eingegeben hat. Wer keinen Namen in die Anrede setzt, gibt dem Angreifer keinen Platz für seine Botschaft. Eine neutrale Formulierung wie „Guten Tag, vielen Dank für Ihre Anfrage“ verliert für echte Kunden kaum etwas.
| Anfällig | Abgesichert | |
|---|---|---|
| Anrede | Eingetragener Name wird übernommen | Neutrale Anrede ohne Eingaben |
| Inhalt | Kopie der gesamten Nachricht | Nur Eingangsbestätigung |
| Namensfeld | Beliebige Länge, Links erlaubt | Begrenzte Länge, keine Webadressen |
| Prüfung | Nur im Browser | Zusätzlich auf dem Server |
| Wiederholte Einsendungen | Unbegrenzt | Begrenzt pro Absender und Zeitraum |
| Newsletter | Sofort eingetragen | Erst nach Bestätigung per Link |
Grafik verwenden? Gern, mit Quelle Wundrig und Link auf diesen Beitrag. Hinweise
Darüber hinaus helfen einige Regeln, die sich in jedem Formularsystem umsetzen lassen:
- Felder nach ihrem Zweck prüfen. Ein Namensfeld braucht keine 500 Zeichen und keine Webadressen. Die Prüfung gehört auf den Server, denn Prüfungen im Browser lassen sich umgehen, wie auch OWASP betont.
- Keine Kopie der Nachricht. Eine vollständige Kopie der Anfrage an die eingetragene Adresse ist die bequemste Vorlage für Missbrauch. Wer eine Kopie anbieten will, schickt sie erst, nachdem die Adresse bestätigt wurde.
- Bestätigung vor Aufnahme. Newsletter und Kundenkonten werden erst aktiv, wenn die Person einen Link in der ersten Mail angeklickt hat. Diese erste Mail bleibt kurz und enthält keine Eingaben.
- Einsendungen begrenzen. Mehr als eine Handvoll Einsendungen pro Absender in kurzer Zeit ist selten echt. Ein unsichtbarer Bot-Schutz oder eine Prüfaufgabe ergänzen das.
- Versand beobachten. Die Spamrate und den Ruf der Domain regelmäßig ansehen, etwa in Googles Postmaster Tools, und einen sprunghaften Anstieg der Formularmails als Warnsignal behandeln.
Wenn der Missbrauch bereits läuft
Häufig fällt das Problem erst auf, wenn Bounces das Postfach füllen oder sich Empfänger beschweren. Dann gilt eine einfache Reihenfolge: Zuerst die automatische Bestätigung abschalten oder auf einen neutralen Text ohne Eingaben umstellen. Danach die Einsendungen begrenzen und den Bot-Schutz aktivieren. Anschließend die Versandprotokolle sichern, die gefälschten Einträge aus CRM und Verteilern entfernen und den Ruf der Domain in den folgenden Wochen beobachten. Wie Sie mit Hinweisen von außen umgehen, wenn jemand Sie auf das Problem aufmerksam macht, beschreiben wir in Gemeldete Sicherheitslücke: Wie Unternehmen richtig reagieren.
In den Onlineshops, die wir als Shopify-Agentur betreuen, prüfen wir jedes neue Formular und jede App, die Mails an Kunden verschickt, nach dem obigen Ablauf. Wie Skripte und Maschinen öffentliche Websites lesen und nutzen, untersuchen wir außerdem in unserem Research Lab.
Fazit
Ein Webformular wird zum Spamversender, sobald es Eingaben eines Fremden an eine frei wählbare Adresse schickt. Der Angreifer braucht dafür weder Zugang zu Ihren Systemen noch eine Sicherheitslücke im engeren Sinn, nur eine freundliche Bestätigungsmail. Prüfen Sie jedes Formular mit einem Testeintrag, entfernen Sie Eingaben aus Mails an unbestätigte Adressen, begrenzen Sie Felder und Einsendungen auf dem Server und behalten Sie den Ruf Ihrer Domain im Blick. Das ist wenig Aufwand im Vergleich zu einer Domain, deren echte Mails nicht mehr ankommen.
Häufige Fragen
Was ist Form Hijacking?
So heißt der Missbrauch eines Webformulars, bei dem ein Angreifer eine fremde E-Mail-Adresse und einen eigenen Text oder Link einträgt. Die Website verschickt daraufhin eine Bestätigungsmail mit dieser Botschaft an das Opfer. Der Spam kommt so von einer seriösen Domain und erreicht eher den Posteingang.
Wie erkenne ich, ob mein Kontaktformular missbraucht wird?
Typische Anzeichen sind viele Bounces, Beschwerden von Empfängern, die nie Kontakt mit Ihnen hatten, und Anfragen mit Links oder Werbetext im Namensfeld. Auch ein plötzlicher Anstieg der Formulareinsendungen oder eine steigende Spamrate der Domain deutet darauf hin. Ein Testeintrag mit einer eigenen Adresse zeigt, ob das Formular anfällig ist.
Reicht ein Captcha gegen Formular-Spam?
Ein Bot-Schutz erschwert automatische Einsendungen, verhindert aber nicht, dass ein Formular Fremdtext an fremde Adressen verschickt. Wirksamer ist es, in Mails an unbestätigte Adressen keine Eingaben zu übernehmen und Felder auf dem Server zu prüfen. Captcha und Begrenzung der Einsendungen sind eine sinnvolle Ergänzung dazu.