Voltar ao blogue
Engenharia Publicado em 22.09.2026 8 min de leitura

Quem mais está a ler? Scripts de terceiros em páginas de formulários

Uma página de formulário de contacto carrega muitas vezes código de meia dúzia de outras empresas. Parte dele consegue ver o que os visitantes escrevem – e a maior parte nunca foi revista por ninguém da sua equipa.

Quando alguém preenche o seu formulário de contacto, parte do princípio de que a mensagem lhe é enviada a si. Em muitos sítios, porém, a página do formulário executa também scripts de fornecedores de análise, redes de publicidade, fornecedores de chat e tudo o que um gestor de tags foi acumulando ao longo dos anos. Cada um destes scripts é executado com os mesmos direitos que o seu próprio código: pode ler a página, observar os campos de introdução e enviar dados para os seus próprios servidores. Isso não significa que todos o façam. Mas, na página onde os visitantes escrevem o nome, o endereço de e-mail e, por vezes, pormenores sobre a sua saúde, o seu dinheiro ou problemas jurídicos, deve saber quem está a ler.

Os suspeitos do costume

  • As ferramentas de gravação de sessões registam cliques, deslocamentos e, muitas vezes, teclas premidas, para que uma visita possa ser reproduzida mais tarde. Se os campos não forem ocultados, isso pode incluir o que as pessoas escrevem no formulário.
  • Os pixels de publicidade e de análise comunicam visualizações de páginas e conversões a terceiros – na própria página do formulário e, muito frequentemente, na página de agradecimento.
  • Os widgets de chat carregam uma aplicação completa a partir de outro domínio, normalmente em todas as páginas, incluindo a do formulário.
  • Os gestores de tags permitem ao marketing acrescentar scripts sem uma implementação. É prático, mas também significa que pode chegar código à página do formulário sem que ninguém o reveja.
  • Ajudantes mais pequenos – testes A/B, mapas de calor, conteúdos incorporados de redes sociais, tipos de letra, mapas – acrescentam cada um um anfitrião que recebe, pelo menos, o endereço IP do visitante e normalmente o endereço do seu sítio; os scripts entre eles também podem ler o URL completo da página.

Gravação de sessões: um gravador ao lado do campo de introdução

A maioria das ferramentas de gravação oferece definições para ocultar campos de introdução ou excluir áreas inteiras, e algumas ocultam determinados campos por predefinição. Os pontos fracos são as exceções: um campo de mensagem de texto livre que a predefinição não abrange, um formulário construído com componentes que as regras de ocultação não reconhecem, ou uma definição que alguém desativou durante a depuração e nunca voltou a ativar. Uma gravação guardada junto de um terceiro pode então conter exatamente o que o visitante lhe escreveu – algo que este não esperava e que a sua política de privacidade, que nos termos do art. 13.º do RGPD tem de indicar os destinatários ou categorias de destinatários dos dados pessoais, pode nem sequer mencionar.

Pixels e a página de agradecimento

O rastreio de conversões precisa de um sinal de que um formulário foi enviado, e a página de agradecimento é o local óbvio para o disparar. A maioria dos pixels envia o endereço completo da página com cada evento. Se o formulário for submetido por GET, ou se o redirecionamento após o envio acrescentar ao URL valores como ?name=…&email=…, esses valores seguem diretamente para o fornecedor de publicidade ou de análise. Alguns pixels oferecem também funcionalidades que recolhem automaticamente endereços de e-mail ou números de telefone dos formulários para melhorar a correspondência. E, se o pixel disparar antes de o visitante ter respondido ao banner de cookies – ou depois de ter recusado –, o problema deixa de ser apenas técnico.

Como os dados dos formulários saem do sítio sem que ninguém repare
1O visitante escreve
Nome, endereço de e-mail e mensagem entram nos campos do formulário.
2O script de gravação regista
Os campos não ocultados acabam numa gravação num servidor de terceiros.
3Redirecionamento com parâmetros
Após o envio, o sítio redireciona para /thanks?email=…
4O pixel dispara
O evento de conversão envia o URL completo, incluindo o endereço de e-mail, para a rede de publicidade.
5Os dados saíram
Estão agora junto de fornecedores com os quais o visitante nunca decidiu partilhá-los.
Uma cadeia hipotética. Nenhum dos passos é, por si só, invulgar.

Gestores de tags, consentimento e a cadeia de fornecimento

Os gestores de tags são muitas vezes o sítio onde se perde a visão de conjunto. Uma tag de campanha para uma feira de há dois anos, um teste de uma ferramenta de mapas de calor, um pixel de uma rede que já ninguém utiliza – tudo isso pode continuar a ser carregado em todas as páginas, incluindo a do formulário. Os acionadores estão frequentemente definidos para «todas as páginas», e as regras de consentimento são configuradas tag a tag, pelo que basta uma tag com uma condição em falta para carregar um script antes de o visitante ter dado o seu acordo.

Depois, há a cadeia de fornecimento. Quando incorpora um script de outro anfitrião, confia em quem controla esse anfitrião hoje e no futuro. Um fornecedor pode alterar o que o seu script faz, ser vendido ou ver a sua infraestrutura de distribuição comprometida. O navegador não consegue distinguir um script legítimo de um manipulado, pelo que código injetado numa página de formulário pode ler todos os campos e enviá-los para qualquer lado – o mesmo padrão utilizado para o skimming em páginas de pagamento.

O que pode fazer

  1. 1Faça um inventário. Abra cada página de formulário e a respetiva página de agradecimento com as ferramentas de programador do navegador, verifique o separador Rede e anote todos os anfitriões externos. Faça-o uma vez sem consentimento e outra depois de aceitar o banner.
  2. 2Remova o que ninguém precisa. As tags sem um responsável e uma finalidade claros são candidatas a eliminação. Limite os acionadores do gestor de tags para que só as tags que têm de ser executadas nas páginas de formulários o sejam.
  3. 3Oculte as introduções nas ferramentas de gravação. Oculte todos os campos de introdução, não apenas as palavras-passe, e exclua totalmente a área do formulário, se puder. Depois, veja uma gravação para confirmar o que foi efetivamente guardado.
  4. 4Envie conversões sem dados pessoais. Submeta por POST, mantenha os valores do formulário fora dos URL de redirecionamento e dispare um evento neutro como «contact_form_sent». Desative nos pixels a recolha automática dos campos dos formulários.
  5. 5Carregue apenas após o consentimento. Os scripts que exigem consentimento não podem ser carregados antes de o visitante concordar – e têm de permanecer desativados se ele recusar. Teste ambos os percursos.
  6. 6Fixe e restrinja quando for viável. A Subresource Integrity (um hash na tag do script) faz com que o navegador recuse um ficheiro estático que tenha sido alterado; não se adequa a scripts que mudam por natureza, como os gestores de tags. Uma Content Security Policy limita os anfitriões que podem executar scripts – comece no modo report-only para ver o que deixaria de funcionar.
  7. 7Esteja atento a alterações. Um novo anfitrião de scripts numa página de formulário deve ser uma decisão deliberada, não uma surpresa. Garanta que é notificado quando surgir um.

A formexposed verifica que pixels de rastreio disparam nas suas páginas de formulários, se uma ferramenta de gravação de sessões pode registar o que é introduzido nos formulários e se recusar o banner de cookies trava realmente o rastreio – de forma passiva, nada é submetido. Uma verificação gratuita mostra o nível global; estas constatações constam do relatório completo. Com a monitorização de um domínio verificado, a formexposed alerta-o também quando surge um novo anfitrião de scripts numa página de formulário.

Não constitui aconselhamento jurídico
Este artigo fornece informações gerais sobre a vertente técnica e de proteção de dados dos scripts de terceiros. Não constitui aconselhamento jurídico. Se uma configuração concreta exige consentimento ou tem de ser descrita na sua política de privacidade depende da sua situação – em caso de dúvida, consulte um profissional de proteção de dados.