Pular para o conteúdo
Traduzido automaticamente do inglês. Ver original
Glossário · Fingerprinting

Impressão digital do navegador

Uma combinação de características do navegador e do dispositivo que pode identificar um navegador sem cookies.

Definição

Uma impressão digital do navegador é o conjunto de características que um site pode ler de um navegador e seu dispositivo — como versão do navegador, fuso horário, idioma, fontes instaladas, codecs e tamanho da tela — combinadas em um identificador. O MDN descreve o fingerprinting como a identificação de um navegador e, por extensão, de um usuário, ao coletar e combinar esses recursos distintivos.

Diagrama: atributos do navegador combinados em um identificador de impressão digital
Diagrama editorial (ilustração simplificada, não uma captura de tela do produto).

Como funciona

  • Alguns valores chegam passivamente com cada requisição, por exemplo, os cabeçalhos User-Agent e Accept-Language. O W3C chama isso de fingerprinting passivo.
  • Outros são coletados ativamente por JavaScript ou CSS em execução na página: resolução de tela, fuso horário, listas de fontes, saída de renderização Canvas ou WebGL e muito mais.
  • Cada valor isolado é comum; combinados, eles podem restringir um navegador a um pequeno grupo ou a um único dispositivo. Nenhum atributo individual precisa ser único.

Por que isso importa

  • As impressões digitais podem vincular visitas entre sites sem cookies, e o W3C observa que limpar cookies ou usar uma VPN não impede essa correlação.
  • Sites também usam impressões digitais para detecção de fraude e abuso, por exemplo, para identificar muitas contas vindo de um único dispositivo.
  • Para trabalho legítimo com múltiplas contas (agências, QA, contas de clientes separadas), entender as impressões digitais explica por que existem perfis de navegador separados.

Limites e equívocos comuns

  • "O modo anônimo esconde minha impressão digital." Janelas privadas limpam dados armazenados, mas as características do dispositivo que uma página pode ler permanecem praticamente as mesmas.
  • "Uma impressão digital aleatória é a mais segura." Valores inconsistentes — por exemplo, um user agent de dispositivo móvel com uma tela de desktop — podem ser mais distintos do que uma configuração comum e consistente.
  • "O fingerprinting pode ser eliminado." A orientação do W3C afirma que eliminar completamente o fingerprinting por um adversário determinado por meio de meios técnicos amplamente implantados é implausível; as mitigações o reduzem.
Exemplo: Dois laptops com a mesma versão de navegador ainda podem diferir em fuso horário, fontes instaladas e GPU. Um script lendo esses valores mais uma renderização de Canvas pode diferenciá-los mesmo após a limpeza dos cookies.

Nenhum navegador ou proxy pode garantir que as contas não serão restritas. Siga as regras de cada plataforma.

Termos relacionados

  • Canvas fingerprinting — Identificar um dispositivo a partir de pequenas diferenças na forma como ele renderiza um desenho de canvas HTML.
  • Fingerprinting de WebGL — Usando informações gráficas de WebGL e saída de renderização para identificar um dispositivo.
  • User agent (string User-Agent) — A identificação do navegador e do SO que um navegador envia no cabeçalho User-Agent e expõe ao JavaScript.
  • Perfil do navegador — Um conjunto separado de dados do navegador — cookies, histórico, configurações, extensões — mantido separado de outros perfis.