Source: https://bscan.info/pt/blog/webgl-fingerprinting
Language: pt-BR

Qualquer site consegue ler sua placa de vídeo pelo WebGL. Veja o que a sua revela, por que verificadores dizem "WebGL renderer info is spoofed" (as informações do renderizador foram falsificadas) e o que realmente resolve.

# Fingerprinting de WebGL: o que sua GPU conta para todo site

Publicado 30 de setembro de 2026 · Atualizado 31 de outubro de 2026

Qualquer página da web pode perguntar ao seu navegador o nome da sua placa de vídeo. Sem pedido de permissão, sem banner de cookies, só umas poucas linhas de JavaScript. Num notebook Windows típico, a resposta é algo como `ANGLE (NVIDIA, NVIDIA GeForce RTX 3060 (0x00002503) Direct3D11 vs_5_0 ps_5_0, D3D11)`, e o widget nesta página mostra o que o seu responde.

Isso é fingerprinting de WebGL, e é por causa dele que verificadores de fingerprint exibem linhas como “WebGL fingerprinting is present” ou, de forma mais alarmante, “WebGL renderer info is spoofed”. A primeira vale para praticamente todo navegador do planeta. A segunda significa que seu navegador foi pego se contradizendo, quase sempre por causa de uma extensão que você instalou.

**Versão resumida:** o WebGL expõe sua GPU duas vezes: uma como nome (a string do renderizador "desmascarado") e outra como pixels (o jeito como sua GPU desenha uma cena de teste). "WebGL fingerprinting is present" só quer dizer que o WebGL está ligado, o que é normal. "Spoofed" significa que essas duas histórias se contradizem, ou contradizem o resto do seu navegador, e esconder o nome de um jeito malfeito chama mais atenção do que simplesmente não esconder.

## O que um teste de fingerprint WebGL lê do seu navegador

O WebGL é a API do navegador para desenhar gráficos 3D com a sua GPU. É ele que faz funcionar o Google Maps, os jogos no navegador e os configuradores de produto em 3D, e para dar conta desse trabalho ele precisa conversar com hardware de verdade. Um script de fingerprinting o usa de duas formas.

**Ele pergunta.** A extensão `WEBGL_debug_renderer_info` adiciona duas constantes, `UNMASKED_VENDOR_WEBGL` e `UNMASKED_RENDERER_WEBGL`. O nome promete mais do que entrega: a extensão não desmascara nada, só devolve o nome da GPU informado pelo driver em vez de um placeholder como “WebKit WebGL”. Ao lado dela ficam dezenas de valores de capacidade (o tamanho máximo de textura, as extensões suportadas, a precisão dos shaders) que variam entre famílias de GPU e versões de driver. Juntos, são baratos de ler e continuam estáveis por meses.

**Ele observa.** O script desenha uma pequena cena fora da tela, lê os pixels de volta com `readPixels` e calcula um hash deles. GPUs e drivers diferentes arredondam cores, suavizam bordas e calculam a matemática dos shaders de maneiras ligeiramente diferentes, então o hash também muda. É a mesma ideia do [fingerprinting de canvas](https://bscan.info/pt/blog/canvasHash), só que uma camada mais perto do hardware.

As pessoas imaginam esse nome como algo vago, tipo “gráficos Intel”. A string real parece uma ficha técnica:

O que uma única string entrega

ANGLE (NVIDIA, NVIDIA GeForce RTX 3060 (0x00002503) Direct3D11 vs\_5\_0 ps\_5\_0, D3D11)

-   ANGLE: a camada que transforma WebGL em chamadas de Direct3D, Metal ou OpenGL. O Chrome desenha através dela em todo SO de desktop, o Firefox só no Windows; este formato exato é o do Chrome.
-   Fabricante da GPU
-   O chip gráfico exato, que também dá uma pista de quanto a máquina custou
-   ID de dispositivo PCI: diferencia variantes do chip vendidas com o mesmo nome
-   Direct3D: só existe no Windows

O que o Chrome retorna para UNMASKED\_RENDERER\_WEBGL, sem pedir permissão. A API gráfica costuma entregar o sistema operacional sozinha.

O Direct3D só existe no Windows e o Metal só em hardware da Apple, então, na maioria das máquinas, a string da GPU resolve sozinha a questão do sistema operacional, diga o seu User-Agent o que disser. É a mesma verificação cruzada que destrinchamos em [Um navegador, cinco alegações de SO](https://bscan.info/pt/blog/platform-spoofing).

## Quão único é um fingerprint de WebGL?

Sozinho, menos do que você talvez tema. Milhões de pessoas têm uma RTX 3060, e todo MacBook com M2 informa a mesma string. O WebGL coloca você numa gaveta de hardware, e um fingerprint se constrói empilhando gavetas. Uma RTX 3060 é comum. Uma RTX 3060 numa tela 1440p, no fuso horário de Amsterdã, com holandês e inglês configurados como idiomas, já é uma multidão bem pequena.

O valor dele para os rastreadores é a persistência: você pode trocar de navegador e apagar todos os cookies, e sua GPU continua a mesma. Pesquisadores foram além. O estudo [DrawnApart](https://arxiv.org/abs/2201.09956), de 2022, cronometrou pequenas cargas de trabalho nas unidades de execução de uma GPU e conseguiu distinguir máquinas com hardware idêntico e strings de renderizador idênticas.

## “WebGL fingerprinting is present” não é um alerta

Quando um verificador diz que o fingerprinting de WebGL está presente (“WebGL fingerprinting is present”), isso significa uma coisa só: o WebGL está ligado e pode ser lido. Esse é o estado normal de todo navegador popular, em todo desktop e em todo celular. Não é sinal de que algo esteja errado, e o WebGL não é algo de que você precise se proteger: o custo para a privacidade é o fingerprint, e o fingerprint é o assunto do resto desta página.

A solução tentadora é desligar o WebGL. Não faça isso. Desligá-lo troca uma GPU que você divide com milhões de pessoas por uma característica que quase ninguém tem, e ainda quebra todo site que desenha com a GPU. Um navegador que recusa uma API padrão também é o tipo de esquisitice que [rende CAPTCHAs extras](https://bscan.info/pt/blog/captcha-everywhere).

## Por que um verificador diz “WebGL renderer info is spoofed”

A frase aparece com mais frequência na ferramenta de diagnóstico do Cloudflare Turnstile, numa verificação chamada “Graphics Information Appears Fake”, que as pessoas costumam encontrar depois que um desafio fica em loop em vez de deixá-las passar. Ninguém consegue ver sua GPU diretamente, então um verificador não tem como provar que hardware você tem. O que ele pode fazer é comparar as alegações entre si, e valores falsificados raramente sobrevivem a isso. Estes são os testes. O widget nesta página executa os quatro primeiros:

-   **A API gráfica não combina com o SO.** Uma string de renderizador com Metal no meio, enviada por um navegador cujo User-Agent diz Windows.
-   **Fornecedor e renderizador discordam.** O campo de fornecedor (vendor) ainda diz NVIDIA porque o spoof só reescreveu o renderizador.
-   **As funções do WebGL foram sobrescritas.** Para mudar o que `getParameter` retorna, uma extensão precisa substituí-la, e uma função nativa substituída de forma ingênua deixa de reportar `[native code]`. Sobrescritas mais bem escondidas exigem verificações mais sutis. É a mesma armadilha que pega ferramentas de automação no nosso [teste de detecção de bots](https://bscan.info/pt/blog/bot-detection).
-   **Os pixels mudam entre uma leitura e outra.** Na prática, uma GPU real devolve pixels idênticos quando desenha a mesma cena duas vezes. Algumas extensões antifingerprinting injetam ruído aleatório novo a cada leitura, então dois desenhos dão dois hashes. Essa instabilidade é mais rara do que qualquer GPU do mercado.
-   **O nome não bate com os pixels.** Empresas antifraude podem comparar sua saída de renderização com o que dispositivos conhecidos produzem. Diga que tem uma RTX 3060 enquanto desenha como uma GPU integrada da Intel e o hash de renderização denuncia você. Um único navegador não consegue fazer essa verificação, então o widget a deixa de fora.

Alterne entre as configurações para ver quais indícios cada uma dispara:

O que um verificador de spoof vê

Renderizador informado `ANGLE (Apple, ANGLE Metal Renderer: Apple M2, Unspecified Version)`

-   ![marcada](https://bscan.info/BadIcon.svg)
    
    API gráfica combina com o SO
    
    Metal num User-Agent de Windows
    
-   ![marcada](https://bscan.info/BadIcon.svg)
    
    Fornecedor bate com o renderizador
    
    o fornecedor ainda diz NVIDIA
    
-   ![marcada](https://bscan.info/BadIcon.svg)
    
    Funções do WebGL são nativas
    
    getParameter foi substituída
    
-   ![aprovada](https://bscan.info/GoodIcon.svg)
    
    Mesmo desenho, mesmos pixels
    
    dois desenhos, um só hash
    

Trocar o nome dispara três verificações de uma vez: o novo nome pertence a outro SO, o campo de fornecedor foi esquecido e a própria troca é uma função sobrescrita.

Nas duas configurações falsificadas, a GPU está ótima; todas as marcações vêm da própria falsificação. Se você recebeu o aviso de “spoofed” sem nunca ter tentado falsificar nada, confira sua lista de extensões atrás de algum “defender” de WebGL ou de canvas. Esse é o culpado de sempre, e a ferramenta de diagnóstico da Cloudflare cita um com todas as letras: WebGL Fingerprint Defender.

## Quando o aviso é alarme falso

Nem toda marcação significa que alguém mexeu no seu navegador. Algumas configurações bem comuns também disparam os verificadores:

-   **Área de trabalho remota e máquinas virtuais.** Se a aceleração por hardware estiver indisponível, o navegador pode usar um renderizador por software, como o llvmpipe, ou perder o WebGL por completo. Sessões remotas também podem usar uma GPU física, então o nome do renderizador, sozinho, não detecta o tipo de sessão. Nossa [comparação de navegadores em área de trabalho remota](https://bscan.info/pt/blog/can-websites-detect-remote-desktop) mostra quais leituras podem mudar e o que essas mudanças não comprovam.
-   **Notebooks com GPU híbrida.** Um notebook com placa integrada e dedicada pode informar GPUs diferentes dependendo das configurações de energia ou de qual delas foi atribuída ao navegador.
-   **Navegadores que protegem você de propósito.** O Safari informa uma “Apple GPU” genérica para todo site. O Firefox reduz o nome do renderizador a uma família ampla. O Brave dá a todos os usuários o mesmo nome genérico de GPU e acrescenta pequenas variações por site a outras saídas do WebGL, técnica que ele chama de farbling. Bons verificadores colocam esses casos numa lista de permissões. Os preguiçosos marcam mesmo assim.

A diferença entre esses casos e um spoof é a consistência. O Safari dizendo “Apple GPU” num dispositivo Apple é uma resposta compartilhada e honesta. Um navegador no Windows alegando ter uma GPU da Apple é uma contradição.

## Como mudar ou bloquear seu fingerprint de WebGL

1.  **Deixe o WebGL ligado.** Desativá-lo torna você mais raro, não mais seguro, e quebra sites de verdade.
2.  **Remova extensões que falsificam o WebGL.** Trocadores de nome e injetores de ruído criam exatamente as contradições que os verificadores procuram. Se o widget acima marcar funções sobrescritas ou pixels instáveis, a culpada costuma ser uma extensão.
3.  **Se você precisa de outra identidade, mude cada parte dela.** Gerenciar várias contas para verificação de anúncios, e-commerce ou redes sociais significa que cada perfil precisa de uma GPU que combine com seu sistema operacional, de um fornecedor que combine com seu renderizador e de pixels que combinem com sua GPU. Isso é difícil de falsificar em JavaScript, e é por isso que os navegadores anti-detecção fazem esse trabalho dentro do engine. O [Incogniton](https://www.incogniton.com/?utm_source=bscanInfo&utm_medium=Website&utm_campaign=WebglFingerprintingBlog) dá a cada perfil uma identidade WebGL consistente no nível do navegador, sem nenhuma função sobrescrita para um verificador encontrar.

Depois, rode o [scan completo do navegador](https://bscan.info/pt) para ver como sua GPU se encaixa em todo o resto que seu navegador informa, do fuso horário às fontes.

[Rodar o scan completo do navegador](https://bscan.info/pt)

## Continue lendo

[

![Sites Veem Seu Endereço MAC? O Que Usam no Lugar](https://bscan.info/macAddressCover.svg)

Sites Veem Seu Endereço MAC? O Que Usam no Lugar

](https://bscan.info/pt/blog/mac-address)[

![Pontuação do reCAPTCHA muito baixa? O que significa e como subir](https://bscan.info/recaptchaScoreCover.svg)

Pontuação do reCAPTCHA muito baixa? O que significa e como subir

](https://bscan.info/pt/blog/recaptcha-score)[

![Como os Sites Detectam Sua VPN (e Como Testar a Sua)](https://bscan.info/vpnDetectionCover.svg)

Como os Sites Detectam Sua VPN (e Como Testar a Sua)

](https://bscan.info/pt/blog/vpn-detection)

---
This is the page's server-rendered documentation. Interactive browser tests, file processing and permission prompts require the HTML page; Markdown does not contain live measurements or process files.
