Wer liest mit? Drittanbieter-Skripte auf Formularseiten
Eine Seite mit Kontaktformular lädt oft Code von einem halben Dutzend anderer Firmen. Manches davon sieht, was Besucher eintippen – und das meiste hat in Ihrem Team nie jemand geprüft.
Wer Ihr Kontaktformular ausfüllt, geht davon aus, dass die Nachricht bei Ihnen landet. Auf vielen Websites laufen auf der Formularseite aber zusätzlich Skripte von Analyseanbietern, Werbenetzwerken, Chat-Diensten und allem, was sich im Tag Manager über die Jahre angesammelt hat. Jedes dieser Skripte hat dieselben Rechte wie Ihr eigener Code: Es kann die Seite lesen, Eingabefelder beobachten und Daten an eigene Server schicken. Das heißt nicht, dass alle das tun. Aber auf der Seite, auf der Besucher Namen, E-Mail-Adresse und manchmal Details zu Gesundheit, Finanzen oder rechtlichen Problemen eingeben, sollten Sie wissen, wer mitliest.
Die üblichen Verdächtigen
- Session-Replay-Tools zeichnen Klicks, Scrollen und oft auch Tastatureingaben auf, damit sich ein Besuch später abspielen lässt. Sind Felder nicht maskiert, kann das auch umfassen, was jemand ins Formular tippt.
- Werbe- und Analysepixel melden Seitenaufrufe und Conversions an Dritte – auf der Formularseite selbst und sehr häufig auf der Danke-Seite.
- Chat-Widgets laden eine komplette Anwendung von einer fremden Domain, meist auf jeder Seite, also auch auf der mit dem Formular.
- Tag Manager erlauben dem Marketing, Skripte ohne Deployment einzubauen. Praktisch – aber so kann Code auf die Formularseite gelangen, den niemand geprüft hat.
- Kleinere Helfer – A/B-Tests, Heatmaps, Social-Media-Einbettungen, Schriften, Karten – bringen jeweils einen Host ins Spiel, der mindestens die IP-Adresse und meist die Adresse Ihrer Website erhält; Skripte darunter können auch die vollständige Seiten-URL auslesen.
Session Replay: ein Rekorder neben dem Eingabefeld
Die meisten Replay-Tools bieten Einstellungen, um Eingabefelder zu maskieren oder ganze Bereiche auszuschließen, und manche maskieren bestimmte Felder schon standardmäßig. Die Schwachstellen sind die Ausnahmen: ein Freitextfeld für die Nachricht, das die Voreinstellung nicht erfasst, ein Formular aus Komponenten, die die Maskierungsregeln nicht erkennen, oder eine Einstellung, die jemand zur Fehlersuche abgeschaltet und nie wieder eingeschaltet hat. Dann kann eine Aufzeichnung bei einem Drittanbieter genau das enthalten, was der Besucher Ihnen geschrieben hat – womit er nicht gerechnet hat und was Ihre Datenschutzerklärung, die nach Art. 13 DSGVO die Empfänger oder Kategorien von Empfängern personenbezogener Daten nennen muss, womöglich gar nicht erwähnt.
Pixel und die Danke-Seite
Conversion-Tracking braucht ein Signal, dass ein Formular abgeschickt wurde, und die Danke-Seite ist der naheliegende Ort dafür. Die meisten Pixel senden bei jedem Ereignis die vollständige Seitenadresse. Schickt das Formular per GET ab oder hängt die Weiterleitung nach dem Absenden Werte wie ?name=…&email=… an die URL, landen diese Werte direkt beim Werbe- oder Analyseanbieter. Manche Pixel bieten außerdem Funktionen, die E-Mail-Adressen oder Telefonnummern automatisch aus Formularen auslesen, um Nutzer besser zuzuordnen. Und feuert das Pixel, bevor der Besucher den Cookie-Banner beantwortet hat – oder nachdem er abgelehnt hat –, ist das Problem nicht mehr nur ein technisches.
Tag Manager, Einwilligung und Lieferkette
Im Tag Manager geht der Überblick oft verloren. Ein Kampagnen-Tag für eine Messe vor zwei Jahren, der Test eines Heatmap-Tools, ein Pixel für ein Netzwerk, das niemand mehr nutzt – all das lädt womöglich noch immer auf jeder Seite, auch auf der mit dem Formular. Trigger stehen häufig auf „alle Seiten“, und Einwilligungsregeln werden Tag für Tag konfiguriert. Ein einziges Tag mit fehlender Bedingung reicht also, damit ein Skript lädt, bevor der Besucher zugestimmt hat.
Dazu kommt die Lieferkette. Wer ein Skript von einem fremden Host einbindet, vertraut dem, der diesen Host heute und künftig kontrolliert. Ein Anbieter kann ändern, was sein Skript tut, verkauft werden oder Opfer eines Angriffs auf seine Auslieferungsinfrastruktur werden. Der Browser kann ein legitimes Skript nicht von einem manipulierten unterscheiden – eingeschleuster Code auf einer Formularseite kann also jedes Feld lesen und beliebig weiterschicken – nach demselben Muster wie Skimming auf Checkout-Seiten.
Was Sie tun können
- 1Bestandsaufnahme machen. Öffnen Sie jede Formularseite und ihre Danke-Seite mit den Entwicklertools des Browsers, prüfen Sie den Netzwerk-Tab und notieren Sie jeden externen Host. Einmal ohne Einwilligung, einmal nach Zustimmung im Banner.
- 2Entfernen, was niemand braucht. Tags ohne klaren Verantwortlichen und Zweck sind Kandidaten zum Löschen. Begrenzen Sie die Trigger im Tag Manager, sodass auf Formularseiten nur läuft, was dort laufen muss.
- 3Eingaben in Replay-Tools maskieren. Maskieren Sie alle Eingabefelder, nicht nur Passwörter, und schließen Sie den Formularbereich möglichst ganz aus. Sehen Sie sich danach eine Aufzeichnung an, um zu prüfen, was tatsächlich gespeichert wurde.
- 4Conversions ohne personenbezogene Daten senden. Per POST absenden, Formularwerte aus Weiterleitungs-URLs heraushalten und ein neutrales Ereignis wie „contact_form_sent“ auslösen. Schalten Sie das automatische Auslesen von Formularfeldern in Pixeln ab.
- 5Erst nach Einwilligung laden. Skripte, die eine Einwilligung brauchen, dürfen nicht laden, bevor der Besucher zustimmt – und müssen aus bleiben, wenn er ablehnt. Testen Sie beide Wege.
- 6Festnageln und einschränken, wo es geht. Subresource Integrity (ein Hash im Script-Tag) lässt den Browser eine statische Datei ablehnen, die sich verändert hat; für Skripte, die sich planmäßig ändern, etwa Tag Manager, passt das nicht. Eine Content Security Policy legt fest, von welchen Hosts überhaupt Skripte laufen dürfen – starten Sie im Report-only-Modus, um zu sehen, was brechen würde.
- 7Auf Änderungen achten. Ein neuer Skript-Host auf einer Formularseite sollte eine bewusste Entscheidung sein, keine Überraschung. Sorgen Sie dafür, dass Sie benachrichtigt werden, wenn einer auftaucht.
formexposed prüft, welche Tracking-Pixel auf Ihren Formularseiten feuern, ob ein Session-Replay-Tool Formulareingaben aufzeichnen kann und ob das Ablehnen im Cookie-Banner das Tracking wirklich stoppt – passiv, es wird nichts abgeschickt. Der kostenlose Check zeigt die Gesamtstufe, diese Befunde enthält der vollständige Bericht. Mit Monitoring für eine verifizierte Domain meldet formexposed außerdem, wenn ein neuer Skript-Host auf einer Formularseite auftaucht.