Tempo de leitura: 4 minutos

A verificação do cabeçalho Referrer-Policy é essencial para controlar quais informações de origem são compartilhadas quando os usuários navegam de seu site para outros domínios, protegendo a privacidade e prevenindo vazamento de dados sensíveis.

Sem uma política de referência adequada, seu site pode inadvertidamente expor URLs completos (incluindo parâmetros de consulta e identificadores de sessão) a terceiros, comprometendo a segurança dos usuários e potencialmente violando regulamentações de privacidade como GDPR e LGPD.

Entendendo o cabeçalho Referrer-Policy e sua importância para segurança web

O cabeçalho HTTP Referrer-Policy controla quanta informação de referência (a URL da página de origem) é incluída no cabeçalho Referer quando um usuário navega do seu site para outro destino. Esta configuração é fundamental para proteger a privacidade dos usuários e evitar vazamentos de informações sensíveis.

Quando um visitante clica em um link no seu site que o leva para outro domínio, o navegador normalmente envia a URL completa de origem para o site de destino. Isso pode incluir parâmetros de URL, tokens de autenticação ou outras informações sensíveis que não deveriam ser compartilhadas.

Sem uma política adequada, você pode estar expondo dados dos usuários sem perceber, o que representa um risco significativo à segurança e à conformidade com regulamentações de privacidade.

“A implementação correta do Referrer-Policy é uma das medidas mais simples e eficazes que os desenvolvedores podem adotar para proteger a privacidade dos usuários em seus sites.” – OWASP (Open Web Application Security Project)

Como verificar se o cabeçalho Referrer-Policy está configurado no seu site

Existem várias maneiras de verificar se o cabeçalho Referrer-Policy está definido corretamente no seu site. Vamos explorar os métodos mais práticos e acessíveis:

1. Usando as Ferramentas de Desenvolvedor do navegador

Este é o método mais direto e não requer ferramentas externas:

  1. Abra seu site no navegador (Chrome, Firefox, Edge, etc.)
  2. Pressione F12 ou clique com o botão direito e selecione “Inspecionar”
  3. Vá para a aba “Network” (Rede)
  4. Recarregue a página (F5 ou Ctrl+R)
  5. Clique no primeiro item da lista (geralmente o documento HTML principal)
  6. Procure na seção “Headers” (Cabeçalhos) por “Referrer-Policy”

2. Usando ferramentas online de análise de segurança

Existem ferramentas online que podem verificar automaticamente os cabeçalhos de segurança do seu site:

  1. Security Headers – Insira a URL do seu site e receba uma análise completa dos cabeçalhos de segurança
  2. Mozilla Observatory – Ferramenta da Mozilla que avalia vários aspectos de segurança, incluindo cabeçalhos
  3. Qualys SSL Labs – Além de analisar a configuração SSL/TLS, também verifica alguns cabeçalhos de segurança

3. Usando cURL na linha de comando

Se você tem acesso a um terminal, pode usar o comando cURL:

curl -I https://seusite.com

Este comando exibirá todos os cabeçalhos HTTP retornados pelo seu servidor, incluindo o Referrer-Policy se estiver configurado.

Valores possíveis para o cabeçalho Referrer-Policy e qual escolher

O cabeçalho Referrer-Policy pode ter diferentes valores, cada um com implicações específicas para a privacidade e segurança:

  • no-referrer: Não envia informações de referência
  • no-referrer-when-downgrade: Envia a URL completa para destinos com segurança equivalente (HTTPS→HTTPS), mas não envia para destinos menos seguros (HTTPS→HTTP)
  • origin: Envia apenas o domínio de origem, sem o caminho completo
  • origin-when-cross-origin: Envia a URL completa para o mesmo origem, mas apenas o domínio para origens diferentes
  • same-origin: Envia informações de referência apenas para o mesmo domínio
  • strict-origin: Envia apenas o domínio para destinos com segurança equivalente (HTTPS→HTTPS)
  • strict-origin-when-cross-origin: Envia a URL completa para o mesmo domínio, apenas o domínio para origens cruzadas seguras, e nada para destinos menos seguros
  • unsafe-url: Sempre envia a URL completa (não recomendado)

“Para a maioria dos sites, recomendamos ‘strict-origin-when-cross-origin’ como um bom equilíbrio entre segurança e funcionalidade. Este valor protege informações sensíveis em URLs ao navegar para outros sites, mantendo a funcionalidade para análises internas.” – Google Web Fundamentals

Como configurar o cabeçalho Referrer-Policy no seu site

Existem várias maneiras de implementar o cabeçalho Referrer-Policy. Você pode escolher o método que melhor se adapta à sua configuração:

1. Configuração no servidor web

Para Apache (adicione ao arquivo .htaccess ou configuração do servidor):

Header always set Referrer-Policy “strict-origin-when-cross-origin”

Para Nginx (adicione ao bloco de configuração do servidor):

add_header Referrer-Policy “strict-origin-when-cross-origin”;

2. Configuração via meta tag HTML

Adicione a seguinte meta tag na seção do seu HTML:

3. Configuração via cabeçalho HTTP em linguagens de programação

Em PHP:

header(“Referrer-Policy: strict-origin-when-cross-origin”);

Em Node.js (Express):

app.use((req, res, next) => {
res.setHeader(‘Referrer-Policy’, ‘strict-origin-when-cross-origin’);
next();
});

Testando se sua configuração de Referrer-Policy está funcionando

Após implementar o cabeçalho, é importante verificar se ele está funcionando corretamente:

  1. Use as ferramentas mencionadas anteriormente para verificar se o cabeçalho está presente
  2. Crie uma página de teste com links para outros domínios
  3. Use as ferramentas de desenvolvedor para monitorar o cabeçalho Referer enviado quando você clica nesses links
  4. Verifique se o comportamento corresponde à política que você configurou

Integrando Referrer-Policy com outras medidas de segurança

O Referrer-Policy é apenas um dos vários cabeçalhos de segurança que você deve implementar. Para uma proteção completa, considere também:

  • Content-Security-Policy (CSP): Controla quais recursos podem ser carregados
  • X-Content-Type-Options: Previne MIME sniffing
  • X-Frame-Options: Protege contra clickjacking
  • Strict-Transport-Security (HSTS): Força conexões HTTPS
  • X-XSS-Protection: Adiciona uma camada extra de proteção contra XSS

Implementar todos esses cabeçalhos proporciona uma defesa em profundidade para seu site.

Considerações especiais para diferentes tipos de sites

A política ideal pode variar dependendo do tipo de site:

Para sites de e-commerce

Use “strict-origin-when-cross-origin” para proteger informações de sessão e parâmetros de URL que podem conter dados sensíveis do cliente ou referências a produtos visualizados.

Para sites de conteúdo/blogs

Você pode usar “no-referrer-when-downgrade” se rastrear a origem das visitas for importante para suas métricas, mas ainda quiser proteger os usuários ao navegar para sites HTTP.

Para aplicações web com áreas seguras

Considere usar “same-origin” para páginas que contêm informações sensíveis, garantindo que nenhuma informação de referência seja vazada para domínios externos.

Verificar e configurar corretamente o cabeçalho Referrer-Policy é um passo fundamental para proteger a privacidade dos usuários e fortalecer a segurança do seu site. Ao implementar esta medida, você não apenas melhora a postura de segurança do seu site, mas também demonstra compromisso com as melhores práticas de desenvolvimento web.

Você conseguiu implementar o cabeçalho Referrer-Policy no seu site? Quais desafios encontrou durante o processo de configuração?

Avatar de Rafael P.

Perguntas Frequentes

O que é o cabeçalho Referrer-Policy?

O cabeçalho Referrer-Policy é uma diretiva HTTP que controla quais informações de referência são enviadas quando um usuário navega de uma página para outra. Ele permite que os desenvolvedores especifiquem se e como as URLs de origem devem ser enviadas para outros sites, ajudando a proteger a privacidade do usuário.

Por que a verificação do cabeçalho Referrer-Policy é importante?

A verificação do cabeçalho Referrer-Policy é crucial para garantir que informações sensíveis, como parâmetros de consulta e identificadores de sessão, não sejam inadvertidamente expostas a terceiros. Isso ajuda a proteger a privacidade dos usuários e a evitar potenciais violações de segurança e regulamentações de proteção de dados.

Quais são as opções disponíveis para configurar o cabeçalho Referrer-Policy?

As opções para configurar o cabeçalho Referrer-Policy incluem ‘no-referrer’, ‘no-referrer-when-downgrade’, ‘same-origin’, ‘origin’, ‘strict-origin’, entre outras. Cada opção tem um comportamento diferente em relação ao envio de informações de referência, permitindo que os desenvolvedores escolham a que melhor se adapta às suas necessidades de segurança e privacidade.

Como posso verificar se o cabeçalho Referrer-Policy está configurado corretamente no meu site?

Você pode verificar se o cabeçalho Referrer-Policy está configurado corretamente utilizando ferramentas de desenvolvimento do navegador, como o Google Chrome Developer Tools. Na aba ‘Network’, você pode inspecionar as requisições e verificar os cabeçalhos HTTP enviados. Também é possível usar ferramentas online que analisam a segurança do site.

Quais são as consequências de não configurar o cabeçalho Referrer-Policy?

Não configurar o cabeçalho Referrer-Policy pode resultar na exposição inadvertida de URLs completas para terceiros, o que pode comprometer a segurança dos usuários e levar ao vazamento de dados sensíveis. Além disso, pode haver implicações legais se essas informações expostas violarem regulamentações de proteção de dados, como a GDPR.

O caminho até aqui

Início » Checklist » Segurança e Configurações Técnicas Essenciais » O cabeçalho Referrer-Policy está definido?

Somente membros podem interagir com o conteúdo.