Hvem andre leser med? Tredjepartsskript på skjemasider
En kontaktskjemaside laster ofte kode fra et halvt dusin andre selskaper. Noe av den kan se hva besøkende skriver – og det meste har ingen i teamet ditt noen gang vurdert.
Når noen fyller ut kontaktskjemaet ditt, antar de at meldingen går til deg. På mange nettsteder kjører skjemasiden imidlertid også skript fra analyseleverandører, reklamenettverk, chatteleverandører og alt en taggbehandler har samlet gjennom årene. Hvert av skriptene kjører med samme rettigheter som din egen kode: det kan lese siden, følge inndatafelt og sende opplysninger til egne servere. Det betyr ikke at alle gjør det. Men på siden der besøkende skriver navn, e-postadresse og noen ganger detaljer om helse, penger eller juridiske problemer, bør du vite hvem som leser med.
De vanlige mistenkte
- Verktøy for øktopptak registrerer klikk, rulling og ofte tastetrykk slik at et besøk kan spilles av senere. Hvis feltene ikke maskeres, kan det omfatte det mennesker skriver i skjemaet.
- Reklame- og analysepiksler rapporterer sidevisninger og konverteringer til tredjeparter – på selve skjemasiden og svært ofte på takkesiden.
- Chat-widgeter laster en hel applikasjon fra et annet domene, vanligvis på hver side, inkludert siden med skjemaet.
- Taggbehandlere lar markedsføring legge til skript uten utrulling. Praktisk, men det betyr også at kode kan nå skjemasiden uten at noen vurderer den.
- Mindre hjelpere – A/B-testing, varmekart, sosiale innbygginger, skrifter, kart – legger hver til en vert som mottar minst den besøkendes IP-adresse og vanligvis adressen til nettstedet ditt; skript blant dem kan også lese hele sidens URL.
Øktopptak: en opptaker ved siden av inndatafeltet
De fleste opptaksverktøy tilbyr innstillinger for å maskere inndatafelt eller unnta hele områder, og noen maskerer visse felt som standard. Svakhetene er unntakene: et fritekstmeldingsfelt standarden ikke dekker, et skjema bygget av komponenter maskeringsreglene ikke gjenkjenner, eller en innstilling noen slo av under feilsøking og aldri slo på igjen. Et opptak lagret hos en tredjepart kan da inneholde nøyaktig det den besøkende skrev til deg – noe vedkommende ikke forventet, og som personvernerklæringen din, som etter personvernforordningen art. 13 må navngi mottakerne eller kategoriene av mottakere av personopplysninger, kanskje ikke nevner i det hele tatt.
Piksler og takkesiden
Konverteringssporing trenger et signal om at et skjema ble sendt, og takkesiden er det opplagte stedet å utløse det. De fleste piksler sender hele sideadressen med hver hendelse. Hvis skjemaet sendes via GET, eller omdirigeringen etter sending legger verdier som ?name=…&email=… til URL-en, går disse verdiene rett til reklame- eller analyseleverandøren. Noen piksler tilbyr også funksjoner som automatisk henter e-postadresser eller telefonnumre fra skjemaer for bedre matching. Og hvis pikselen utløses før den besøkende har svart på informasjonskapselbanneret – eller etter avvisning – er problemet ikke lenger bare teknisk.
Taggbehandlere, samtykke og leverandørkjeden
Taggbehandlere er ofte stedet oversikten går tapt. En kampanjetagg for en messe for to år siden, en prøve på et varmekartverktøy, en piksel for et nettverk ingen bruker lenger – alt kan fortsatt lastes på hver side, inkludert skjemaet. Utløsere settes ofte til «alle sider», og samtykkeregler konfigureres tagg for tagg, så én tagg med manglende vilkår er nok til å laste et skript før den besøkende har samtykket.
Så er det leverandørkjeden. Når du bygger inn et skript fra en annen vert, stoler du på den som kontrollerer verten i dag og i fremtiden. En leverandør kan endre hva skriptet gjør, bli solgt eller få leveringsinfrastrukturen kompromittert. Nettleseren kan ikke skille et legitimt skript fra et manipulert, så injisert kode på en skjemaside kan lese hvert felt og sende det hvor som helst – samme mønster som brukes til skimming på betalingssider.
Hva du kan gjøre
- 1Lag en oversikt. Åpne hver skjemaside og takkesiden med nettleserens utviklerverktøy, kontroller Nettverk-fanen og før opp hver ekstern vert. Gjør det én gang uten samtykke og én gang etter å ha godtatt banneret.
- 2Fjern det ingen trenger. Tagger uten tydelig eier og formål er kandidater for sletting. Begrens taggbehandlerens utløsere slik at bare taggene som må kjøre på skjemasider, gjør det.
- 3Masker inndata i opptaksverktøy. Masker alle inndatafelt, ikke bare passord, og unnta hele skjemaområdet hvis du kan. Se deretter på et opptak for å se hva som faktisk ble lagret.
- 4Send konverteringer uten personopplysninger. Send via POST, hold skjemaverdier utenfor omdirigerings-URL-er og utløs en nøytral hendelse som «contact_form_sent». Slå av automatisk innsamling av skjemafelt i piksler.
- 5Last bare etter samtykke. Skript som trenger samtykke, må ikke lastes før den besøkende samtykker – og må forbli av hvis vedkommende avviser. Test begge forløp.
- 6Lås og begrens der det er mulig. Subresource Integrity (en hash på skripttaggen) får nettleseren til å nekte en statisk fil som er endret; det passer ikke for skript som er laget for å endres, som taggbehandlere. En Content Security Policy begrenser hvilke verter som kan kjøre skript – begynn i report-only-modus for å se hva som ville slutte å virke.
- 7Følg med på endringer. En ny skriptvert på en skjemaside bør være en bevisst beslutning, ikke en overraskelse. Sørg for at du varsles når en dukker opp.
formexposed kontrollerer hvilke sporingspiksler som utløses på skjemasidene dine, om et øktopptaksverktøy kan registrere skjemainndata og om avvisning av informasjonskapselbanneret virkelig stopper sporing – passivt, ingenting sendes inn. En gratis kontroll viser samlet nivå; disse funnene finnes i den fullstendige rapporten. Med overvåking av et bekreftet domene varsler formexposed deg også når en ny skriptvert dukker opp på en skjemaside.