Impressão digital WebAssembly: como o navegador se transforma numa máquina virtual e começa a reconhecer o utilizador


03.05.26

A tecnologia de que quase ninguém fala

Por vezes, as mudanças mais significativas na Internet começam discretamente. Enquanto todos estão ocupados com as guerras em torno do bloqueio do JavaScript e das configurações de privacidade «certas», há já alguns anos que existe no navegador uma ferramenta que expande os limites do possível. Trata-se do WebAssembly (Wasm): uma forma de executar código na Web quase à velocidade nativa.

Chamo ao Wasm o «novo animal» da Web, e não apenas por causa de uma bela metáfora. Com ele, surge um novo leque de possibilidades para os sites, incluindo aquilo de que normalmente não se gosta de falar em voz alta: novas formas de conhecer o utilizador.

Por que é que o JavaScript deixou de ser o principal suspeito

Durante muito tempo, o JavaScript foi um alvo fácil. Dezenas de mecanismos de rastreamento e identificação dependem dele, razão pela qual o Tor Browser bloqueia scripts por predefinição, e o NoScript e extensões semelhantes tornaram-se um símbolo de «privacidade rigorosa».

O problema é que o Wasm altera o equilíbrio. Não elimina o JavaScript, mas torna o navegador visivelmente mais «computacional». As antigas noções de «navegador seguro» começam a ruir, porque parte das medidas entra agora numa área onde as proibições simples não funcionam como estávamos habituados.

O que é o WebAssembly e por que é importante

O WebAssembly é um formato e um ambiente de execução que permite executar no navegador código compilado a partir de C, C++, Rust e outras linguagens. Em termos mais simples, o site obtém acesso a cálculos de nível mais baixo do que o JavaScript típico.

Daí vem a minha formulação favorita: o navegador tem a oportunidade de se tornar um «mini-computador dentro do computador». No extremo, isto traduz-se numa «programa quase normal» na janela de uma aba: carteiras, mensageiros, agentes antifraude complexos. Sim, as comparações com o VirtualBox podem parecer provocadoras. Mas o sentido é simples: o navegador aproxima-se do hardware.

Uma nova impressão digital: quando a velocidade se torna um identificador

O mais interessante começa quando o Wasm é utilizado não por uma questão de conveniência, mas sim para a identificação por impressão digital.

Quando falo de «uma enorme quantidade de impressões digitais» através do WebAssembly, não me refiro aos bons e velhos Canvas ou WebGL, que muitos já aprenderam a manipular. Aqui entra em jogo aquilo que normalmente se percebe como «simplesmente rapidez»: desempenho e o caráter da execução.

O esquema parece quase ridículo devido à sua simplicidade:

  • O JavaScript chama funções do WebAssembly.
  • O WebAssembly chama o JavaScript de volta.
  • Este «ping-pong» repete-se muitas vezes.
  • Mede-se exatamente como e com que rapidez as mesmas operações são executadas.

Em seguida, transforma-se as estatísticas num identificador compacto. Na implementação prática, isto é facilmente compactado, por exemplo, em SHA-256.

Uma precisão assustadora

Se tudo for bem organizado, esta abordagem é capaz de distinguir os utilizadores com uma margem de erro inferior a 1%.

Por isso, a «substituição do user-agent» neste cenário parece uma medida cosmética. Quando o motor e a base de hardware são interpretados através do comportamento dos cálculos, a linha no cabeçalho da solicitação pouco altera.

Na prática, testes semelhantes são capazes de:

  • detectar a utilização de máquinas virtuais,
  • distinguir VPS e hardware de servidor de um PC doméstico,
  • destacar diferenças nos tipos de CPU e na natureza dos cálculos.

Importante: é possível contornar isto. Mas, na maioria das vezes, já não se trata de «instalar a extensão e esquecer», mas sim de compreensão técnica e ajuste preciso dos recursos. Para o utilizador comum, isto é, regra geral, inacessível.

Onde isto já está a ser utilizado

Isto deixa de ser um «experimento» no momento exato em que começam a surgir nomes concretos.

O que vejo já está a fazer parte do arsenal das grandes plataformas antifraude, incluindo:

  • CyberSource
  • PerimeterX

Há também indícios de que a Microsoft esteve entre as primeiras a começar a implementar a identificação por Wasm nos seus recursos, incluindo para filtrar registos que parecem ser automatizados ou que provêm de um ambiente virtualizado.

Por que é que isto se tornará a «melhor» impressão digital

A razão é banal e desagradável:

  • alta precisão,
  • relativa facilidade de execução no navegador,
  • vinculação a características reais do hardware.

Se os sites começarem a recolher em massa essa telemetria, isso tornar-se-á rapidamente um padrão de identificação difícil de ignorar. E não é preciso esperar por «algum dia no futuro»: o Wasm já está há muito tempo nos navegadores e já é utilizado.

O que se conclui disto

Se resumirmos tudo a uma única ideia, ela é a seguinte: a privacidade no navegador depende cada vez menos das opções desativadas e cada vez mais — da forma como o hardware se comporta sob carga.

O WebAssembly foi concebido como um acelerador da Web. Na prática, tornou-se também um acelerador para sistemas antifraude, que precisam de distinguir pessoas de bots e dispositivos reais de ambientes virtualizados.

Por isso, o Wasm-fingerprinting não é mais uma «história de terror», mas um tema que vale a pena compreender, pelo menos a nível dos princípios. Daqui para a frente, irá deparar-se com isto cada vez mais, especialmente em áreas de alto risco: finanças, grandes plataformas, registos e proteção contra abusos.

Ainda não está conosco?

Cadastre-se para acessar todos os recursos do site.

Inscrever-se

Post Relacionado

Ao clicar em "Aceitar", está a concordar que o Detect Expert pode utilizar cookies para ajudar a personalizar o conteúdo.

Pode sempre optar por não participar, seguindo as directrizes da nossa Política de cookies.