Antidetect Browsers: Por que Multi-Account Funciona
Entenda como os antidetect browsers funcionam, a importância da consistência nos perfis e como eles evitam a detecção em plataformas online. Descubra as técnicas de fingerprinting e como os antidetect browsers as contornam.
MundiX News·19 de maio de 2026·15 min de leitura·👁 7 views
Os antidetect browsers parecem algo saído das sombras da internet. E muitas vezes é. Eles são usados para arbitragem, SMM, testes, parsing, trabalho com várias contas e, às vezes, para esquemas descarados. Mas a ideia em si é mais interessante do que as páginas de destino de tais serviços.
Um navegador há muito deixou de ser apenas uma janela para um site. Para um site, é um sensor. Ele fornece a versão do mecanismo, a lista de recursos, as características de renderização, o idioma, o fuso horário, o tamanho da tela, o comportamento do WebGL, Canvas, AudioContext, WebRTC, cabeçalhos HTTP, impressão digital TLS, armazenamento, cookies, histórico da sessão, sinais indiretos de hardware e outros dados, que já analisei no artigo sobre Fingerprinting. Parte dos dados é necessária para o funcionamento normal da web. Parte para rastreamento.
Um antidetect browser tenta fingir que há outra pessoa com outro dispositivo na frente do site. Não um navegador com vinte contas, mas vinte navegadores separados, cada um com sua própria pequena biografia.
O site nos reconhece não apenas por meio de cookies. Cookies há muito se tornaram algo muito óbvio. Eles podem ser excluídos, bloqueados, isolados por contêineres. Portanto, sites e sistemas anti-fraude olham mais amplamente.
FingerprintJS descreve a impressão digital do navegador como um identificador que é coletado a partir dos atributos do navegador e do dispositivo. Ao contrário de cookies e localStorage, essa impressão digital pode sobreviver ao modo de navegação privada e à limpeza de dados do navegador, porque o site coleta os mesmos sinais novamente na próxima visita.
O exemplo mais simples é navigator.userAgent. O navegador diz: sou Chrome no Windows. Costumava haver muito disso. Agora, pouco.
O site geralmente pergunta:
navigator.userAgent
navigator.language
navigator.hardwareConcurrency
navigator.deviceMemory
screen.width
screen.height
Intl.DateTimeFormat().resolvedOptions().timeZone
Esta é a camada mais simples. Em seguida, vêm os sinais que são mais difíceis de falsificar com precisão.
Canvas fingerprinting força o navegador a desenhar texto ou uma figura oculta, então o site lê os pixels de volta. As microdiferenças dependem de fontes, suavização, sistema operacional, placa de vídeo, driver e implementação gráfica no navegador. A análise do Fingerprint.com atribui Canvas, WebGL, dispositivos de mídia, TLS, fontes e áudio às principais técnicas de browser fingerprinting.
WebGL faz algo semelhante, mas através da pilha gráfica. O site pode obter o renderizador, fornecedor, lista de extensões, precisão de cálculo, comportamento de shaders. AudioContext fornece outro canal: o navegador executa um audiograph, na saída há pequenas diferenças numéricas. Eles podem ser hash.
Um parâmetro não prova nada. Vinte parâmetros já dão uma forma. Cinquenta parâmetros dão quase um passaporte.
Por que o multi-account é detectado
Vamos pegar um usuário comum. Ele cria cinco contas na mesma plataforma. Cookies diferentes. E-mails diferentes. Proxies diferentes.
Mas o navegador é o mesmo.
Todas as contas têm pelo menos os seguintes dados em comum: Canvas, WebGL, AudioContext, um conjunto de fontes, fuso horário, tamanho estranho da janela, comportamento Intl, Math, Error.stack, permissões da API. No nível da rede, a mesma impressão digital TLS é visível. Os cabeçalhos HTTP estão na mesma ordem. O comportamento das guias e do mouse é semelhante.
O sistema anti-fraude definitivamente não dirá que todas essas contas são a mesma pessoa. Basta dizer: “essas contas estão suspeitamente conectadas”, diminuirá sua classificação de fraude. E então a plataforma pode reduzir a cobertura, enviar para verificação, solicitar um telefone, passaporte, selfie, cartão bancário, passar pelo captcha. Ou simplesmente banir um monte de contas.
A partir deste momento, surge a compreensão de por que exatamente um antidetect browser é necessário - ele é necessário não para tornar o usuário invisível. Ele cria vários ambientes plausíveis. Cada ambiente tem sua própria impressão digital, seu próprio armazenamento, sua própria história, seus próprios cookies, seus próprios parâmetros do navegador. A ideia é simples: se o site cola contas com sinais correspondentes, você precisa remover as correspondências.
Mas você precisa remover as correspondências corretamente. Afinal, se você aleatorizar tudo, o navegador começará a parecer pior do que o normal e, assim, só será detectado.
Por que a substituição simples quebra
Digamos que mudemos o User-Agent para macOS Safari.
Problema: o restante do navegador ainda é Chrome no Windows.
O site vê Safari na string UA, mas o WebGL retorna Direct3D via ANGLE. As fontes são semelhantes às do Windows. O comportamento das barras de rolagem é semelhante ao do Windows.
navigator.platform diz uma coisa, as capacidades de mídia sugerem outra, TLS se parece com Chromium, os cabeçalhos se parecem com Chromium. Não é um MacBook. É um mutante.
CreepJS é bom porque pega essas inconsistências. O autor do projeto escreve que o objetivo do CreepJS é mostrar os pontos fracos e vazamentos de privacidade em extensões e navegadores anti-fingerprinting modernos.
Se você abrir este site em um antidetect browser e em um navegador normal, notará quantas linhas diferentes mudaram. E o mais importante, todos eles mantêm a consistência, o que inspira mais confiança no sistema anti-fraude.
Se o perfil diz “Windows 10 + Chrome”, então devem estar próximos:
Fontes do Windows e lógica de renderização do Windows;
Renderizador WebGL plausível;
Um conjunto normal de MIME/tipos e codecs;
Idioma, região, fuso horário, geografia de IP;
Tamanhos de tela e fator de escala do dispositivo;
Comportamento de permissões, dispositivos de mídia, bateria, toque;
Cabeçalhos HTTP e impressão digital TLS semelhantes ao navegador selecionado.
Para entender o suficiente: o site olha para o gráfico de sinais, o antidetect tenta fazer com que esse gráfico se pareça com um dispositivo normal.
Onde isso “realmente funciona”
Funciona onde a anti-fraude é mais fraca do que o modelo de perfil.
Muitos sistemas não podem realizar análises pesadas em cada usuário. Eles precisam tomar uma decisão rapidamente: permitir a entrada, mostrar um captcha, solicitar 2FA, bloquear, enviar para verificação manual. Eles têm um orçamento para CPU, latência, falsos positivos. Você não pode banir todos os usuários com um sistema não padrão, porque pessoas normais também podem ser estranhas.
Alguém tem um laptop antigo no Linux. Alguém tem Firefox com configurações de privacidade e um proxy corporativo. Alguém tem um navegador em uma máquina virtual com fontes quebradas.
O antidetect vive nesta zona cinzenta. Ele não precisa ser perfeito. Basta que ele se enquadre na faixa de “semelhante a um usuário real, sem contradições fortes, sem conexão óbvia com outros perfis”.
A W3C em seu documento sobre fingerprinting divide diretamente as medidas de proteção em reduzir a superfície da impressão digital, aumentar o conjunto de anonimato e a detectabilidade do fingerprinting. A ideia do conjunto de anonimato é especialmente importante aqui: quanto mais usuários se parecem ou são semelhantes o suficiente, mais difícil é destacar uma pessoa específica.
O Tor Browser segue exatamente esse caminho. Ele tenta fazer com que os usuários se pareçam. Mas também escrevi sobre isso no artigo sobre o navegador Tor.
O antidetect geralmente segue outro caminho. Ele não tenta tornar todos iguais. Ele faz muitos perfis diferentes. Cada perfil deve se parecer com um dispositivo separado e plausível.
Isolamento de perfil - metade do trabalho
Simplificando, um antidetect browser consiste em duas partes: a substituição da impressão digital e o isolamento do estado.
O isolamento é mais fácil de entender. Cada perfil tem seus próprios cookies, localStorage, IndexedDB, cache, service workers, histórico, permissões, logins salvos. Uma conta não deve puxar acidentalmente os dados de outra.
O Chrome normal também sabe sobre perfis. O Firefox sabe sobre contêineres. Mas os antidetect browsers tornam isso uma função central: um perfil é um ambiente de trabalho separado que pode ser iniciado, fechado, transferido, sincronizado, vinculado a um proxy, comentado, compartilhado dentro da equipe.
Para multi-account, isso é crítico. Sem isolamento, você pode perfeitamente falsificar o WebGL e ainda revelar a conexão por meio de armazenamento ou service worker. Um cookie compartilhado extra e toda a camuflagem cuidadosa se transforma em decoração.
Há um ponto desagradável aqui. Quanto mais “vida” houver no perfil, mais natural ele é. Um perfil vazio com histórico zero, cookies novos e a primeira entrada via IP suspeito parece pior do que um perfil que tem uma sessão estável e comportamento previsível. A anti-fraude adora história. Portanto, o multi-account raramente é mantido apenas na técnica do navegador. Quase sempre há aquecimento, padrões comportamentais, limites de ações, reputação de IP, rastreamento de pagamentos.
Eles geralmente não gostam de falar sobre isso nas descrições de publicidade de antidetects. Eles vendem o botão “criar perfil”. Na realidade, o botão cria apenas uma camada superficial.
Substituição de API: onde o navegador começa a mentir
A maneira mais óbvia é ensinar o navegador a mentir por meio da API JavaScript.
O site pergunta navigator.hardwareConcurrency e recebe não o número real de threads da CPU, mas o número do perfil. O site lê Intl.DateTimeFormat().resolvedOptions().timeZone e vê o fuso horário que corresponde ao proxy. O site desenha uma imagem oculta via Canvas e, na saída, recebe uma impressão digital, não do dispositivo real, mas do resultado preparado com antecedência.
Parece uma ótima opção, mas o site pode verificar não apenas a resposta. Ele pode verificar o comportamento do navegador em torno dessa resposta.
Aqui está a pegadinha.
A API real do navegador tem uma “assinatura”. As propriedades estão nos lugares esperados. Eles têm descritores normais. Os erros dão um stack trace familiar. Os valores coincidem entre a página principal, iframe e worker onde devem coincidir. Canvas se comporta de forma estável. WebGL não discute com a plataforma. O fuso horário não entra em conflito com o idioma, IP e localidade.
Um antidetect ruim geralmente quebra não em um grande furo, mas em pequenas costuras.
Na página principal, ele mostra um número de threads de CPU, e no worker, outro. No navigator, o valor foi substituído, e na API vizinha eles esqueceram. A função parece retornar o resultado correto, mas seu toString() não se parece com uma função nativa. A propriedade existe, mas seu descritor é diferente do Chrome normal. Canvas dá um novo ruído toda vez, embora o navegador real, com a mesma imagem, geralmente retorne o mesmo resultado.
O site não precisa conhecer o dispositivo real. Basta ver que há um ambiente montado à sua frente.
CreepJS é útil precisamente por isso. Ele mostra não apenas os próprios valores, mas também as contradições entre eles. Não apenas “qual é o seu Canvas”, mas “este Canvas se parece com o resto do sistema”. Não apenas “qual é o seu navegador”, mas “ele se comporta como este navegador em diferentes contextos”.
Portanto, a substituição normal deve ser profunda e consistente.
Se o antidetect alterar o fuso horário, ele deve pensar sobre o idioma, região, IP, formato de data e comportamento Intl. Se ele alterar o Canvas, o resultado deve ser estável dentro do perfil. Se ele alterar o WebGL, ele não deve entrar em conflito com o sistema operacional e o navegador. Se ele alterar as propriedades do navegador, os mesmos valores devem aparecer com precisão em iframes, workers e outros lugares onde o site pode olhar.
Aqui surge o principal conflito: quanto mais o navegador esconde a realidade, maior o risco de quebrar o site normal.
O antidetect tem que equilibrar. Se não mudar nada, os perfis serão colados. Se mudar muito grosseiramente, o site verá um ambiente artificial. Um bom perfil está entre esses extremos: ele difere o suficiente de outros perfis, mas permanece semelhante a um navegador normal de uma pessoa normal.
Por que a camada de rede interfere
Muitos pensam: colocou um proxy - recebeu outra identidade. Não.
IP é apenas uma camada. Ele deve corresponder aos outros sinais. Se o perfil diz “Paris”, o fuso horário é Moscou, o idioma do navegador é russo, o DNS segue uma rota estranha, o WebRTC mostra endereços locais e a impressão digital TLS se assemelha a um cliente automatizado, o quadro é ruim.
A impressão digital TLS é particularmente desagradável. O JavaScript pode nem chegar lá. O servidor já vê ClientHello: um conjunto de conjuntos de cifras, extensões, a ordem das extensões, ALPN, grupos suportados. Diferentes navegadores e versões têm esses conjuntos diferentes. Se Chrome estiver escrito no topo, e o TLS se assemelhar a uma biblioteca ou cliente modificado, este é um sinal barulhento.
Fingerprint.com inclui diretamente a impressão digital TLS na lista de técnicas comuns, juntamente com Canvas, WebGL, fontes e áudio.
É por isso que o antidetect no nível da extensão é mais fraco do que o navegador com alterações abaixo da pilha. A extensão pode alterar a camada JavaScript. Ele quase não controla a pilha de rede, TLS, a ordem dos sinais de baixo nível, o comportamento do mecanismo. A montagem do navegador tem mais oportunidades, mas também mais maneiras de quebrar.
Detecção de antidetect: eles não procuram mentiras, mas costuras
Um bom sistema anti-fraude não precisa conhecer a GPU real do usuário. Ele procura costuras.
Uma costura é um lugar onde dois sinais não se encaixam bem.
Por exemplo:
O navegador declara uma plataforma, e a pilha gráfica se assemelha a outra;
O fuso horário entra em conflito com a geografia do IP;
Idioma e localidade não correspondem ao teclado, fontes e comportamento Intl;
Canvas é estável, mas WebGL parece artificial;
O perfil é novo todos os dias, mas as ações são muito confiantes;
A camada JS se parece com o Chrome, a camada TLS não;
No thread principal, um valor, no worker, outro;
O iframe vê menos substituição do que a página principal.
No estudo Detecting Anti-fingerprinting Browsers, os autores avaliaram navegadores anti-fingerprinting comerciais, clandestinos e de pesquisa. Na anotação, é dito diretamente: essas ferramentas podem contornar com sucesso o browser fingerprinting, mas os pesquisadores mostram maneiras de detectá-las e analisar onde elas falham.
Funciona - porque a web é muito diversificada, e a anti-fraude é limitada por recursos e o risco de falsos positivos.
É detectado - porque a consistência ideal entre JS, gráficos, sistema operacional, rede e comportamento é muito difícil.
Quando três contas “diferentes” de repente se tornam um navegador em chapéus diferentes
Por que um antidetect não pode ser substituído por um navegador privado normal
O modo de navegação privada limpa o estado local após a sessão. Ele não torna o dispositivo diferente.
O Firefox Resist Fingerprinting reduz a exclusividade e limita a coleta de dados. A Mozilla adverte que isso pode quebrar sites, porque os sites realmente usam parte dessas APIs para funcionalidade.
O Tor Browser reduz o fingerprinting através da padronização do comportamento. É bom para privacidade, mas não é adequado para o modelo “muitas contas diferentes com dispositivos diferentes”. Se vinte contas acessarem o mesmo Tor Browser através da rede Tor, este é um padrão forte separado.
O antidetect resolve uma tarefa diferente: não se esconder na multidão de navegadores idênticos, mas separar as contas em diferentes perfis plausíveis. Para a plataforma, isso deve parecer usuários diferentes, dispositivos diferentes, histórias diferentes.
É por isso que no antidetect não é “anonimato” que é importante, mas a conectividade da lenda. IP, idioma, hardware, sistema operacional, navegador, fuso horário, comportamento, cookies, histórico - tudo deve fazer parte de uma imagem.
Pensamento final
O antidetect coleta sua própria impressão digital para cada perfil. Não aleatório, mas conectado: como se fosse uma pessoa separada com um dispositivo separado, navegador e histórico.
É por isso que o multi-account pode viver por muito tempo: o perfil parece plausível e não está bem conectado a outros perfis.
Mas não há invisibilidade aqui. A anti-fraude forte procura não um campo suspeito, mas inconsistências entre as camadas: o navegador diz uma coisa, o WebGL sugere outra, o fuso horário discute com o IP, o Canvas se comporta de forma muito artificial.
Obrigado a todos por lerem o artigo até o fim! Ficarei feliz em vê-lo no meu canal do Telegram, onde continuo a analisar tópicos relacionados à segurança cibernética: higiene digital, privacidade, deanonymization, anti-fraude, OSINT, esquemas de ataque reais e tudo o que ajuda a entender melhor as ameaças ao seu redor.
🛡️⚡
Pare de pesquisar. Comece a hackear.
O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.
Sem cartão para começar · Planos a partir de R$49/mês
Os antidetect browsers parecem algo saído das sombras da internet. E muitas vezes é. Eles são usados para arbitragem, SMM, testes, parsing, trabalho com várias contas e, às vezes, para esquemas descarados. Mas a ideia em si é mais interessante do que as páginas de destino de tais serviços.
Um navegador há muito deixou de ser apenas uma janela para um site. Para um site, é um sensor. Ele fornece a versão do mecanismo, a lista de recursos, as características de renderização, o idioma, o fuso horário, o tamanho da tela, o comportamento do WebGL, Canvas, AudioContext, WebRTC, cabeçalhos HTTP, impressão digital TLS, armazenamento, cookies, histórico da sessão, sinais indiretos de hardware e outros dados, que já analisei no artigo sobre Fingerprinting. Parte dos dados é necessária para o funcionamento normal da web. Parte para rastreamento.
Um antidetect browser tenta fingir que há outra pessoa com outro dispositivo na frente do site. Não um navegador com vinte contas, mas vinte navegadores separados, cada um com sua própria pequena biografia.
O site nos reconhece não apenas por meio de cookies. Cookies há muito se tornaram algo muito óbvio. Eles podem ser excluídos, bloqueados, isolados por contêineres. Portanto, sites e sistemas anti-fraude olham mais amplamente.
FingerprintJS descreve a impressão digital do navegador como um identificador que é coletado a partir dos atributos do navegador e do dispositivo. Ao contrário de cookies e localStorage, essa impressão digital pode sobreviver ao modo de navegação privada e à limpeza de dados do navegador, porque o site coleta os mesmos sinais novamente na próxima visita.
O exemplo mais simples é navigator.userAgent. O navegador diz: sou Chrome no Windows. Costumava haver muito disso. Agora, pouco.
O site geralmente pergunta:
navigator.userAgent
navigator.language
navigator.hardwareConcurrency
navigator.deviceMemory
screen.width
screen.height
Intl.DateTimeFormat().resolvedOptions().timeZone
Esta é a camada mais simples. Em seguida, vêm os sinais que são mais difíceis de falsificar com precisão.
Canvas fingerprinting força o navegador a desenhar texto ou uma figura oculta, então o site lê os pixels de volta. As microdiferenças dependem de fontes, suavização, sistema operacional, placa de vídeo, driver e implementação gráfica no navegador. A análise do Fingerprint.com atribui Canvas, WebGL, dispositivos de mídia, TLS, fontes e áudio às principais técnicas de browser fingerprinting.
WebGL faz algo semelhante, mas através da pilha gráfica. O site pode obter o renderizador, fornecedor, lista de extensões, precisão de cálculo, comportamento de shaders. AudioContext fornece outro canal: o navegador executa um audiograph, na saída há pequenas diferenças numéricas. Eles podem ser hash.
Um parâmetro não prova nada. Vinte parâmetros já dão uma forma. Cinquenta parâmetros dão quase um passaporte.
Por que o multi-account é detectado
Vamos pegar um usuário comum. Ele cria cinco contas na mesma plataforma. Cookies diferentes. E-mails diferentes. Proxies diferentes.
Mas o navegador é o mesmo.
Todas as contas têm pelo menos os seguintes dados em comum: Canvas, WebGL, AudioContext, um conjunto de fontes, fuso horário, tamanho estranho da janela, comportamento Intl, Math, Error.stack, permissões da API. No nível da rede, a mesma impressão digital TLS é visível. Os cabeçalhos HTTP estão na mesma ordem. O comportamento das guias e do mouse é semelhante.
O sistema anti-fraude definitivamente não dirá que todas essas contas são a mesma pessoa. Basta dizer: “essas contas estão suspeitamente conectadas”, diminuirá sua classificação de fraude. E então a plataforma pode reduzir a cobertura, enviar para verificação, solicitar um telefone, passaporte, selfie, cartão bancário, passar pelo captcha. Ou simplesmente banir um monte de contas.
A partir deste momento, surge a compreensão de por que exatamente um antidetect browser é necessário - ele é necessário não para tornar o usuário invisível. Ele cria vários ambientes plausíveis. Cada ambiente tem sua própria impressão digital, seu próprio armazenamento, sua própria história, seus próprios cookies, seus próprios parâmetros do navegador. A ideia é simples: se o site cola contas com sinais correspondentes, você precisa remover as correspondências.
Mas você precisa remover as correspondências corretamente. Afinal, se você aleatorizar tudo, o navegador começará a parecer pior do que o normal e, assim, só será detectado.
Por que a substituição simples quebra
Digamos que mudemos o User-Agent para macOS Safari.
Problema: o restante do navegador ainda é Chrome no Windows.
O site vê Safari na string UA, mas o WebGL retorna Direct3D via ANGLE. As fontes são semelhantes às do Windows. O comportamento das barras de rolagem é semelhante ao do Windows.
navigator.platform diz uma coisa, as capacidades de mídia sugerem outra, TLS se parece com Chromium, os cabeçalhos se parecem com Chromium. Não é um MacBook. É um mutante.
CreepJS é bom porque pega essas inconsistências. O autor do projeto escreve que o objetivo do CreepJS é mostrar os pontos fracos e vazamentos de privacidade em extensões e navegadores anti-fingerprinting modernos.
Se você abrir este site em um antidetect browser e em um navegador normal, notará quantas linhas diferentes mudaram. E o mais importante, todos eles mantêm a consistência, o que inspira mais confiança no sistema anti-fraude.
Se o perfil diz “Windows 10 + Chrome”, então devem estar próximos:
Fontes do Windows e lógica de renderização do Windows;
Renderizador WebGL plausível;
Um conjunto normal de MIME/tipos e codecs;
Idioma, região, fuso horário, geografia de IP;
Tamanhos de tela e fator de escala do dispositivo;
Comportamento de permissões, dispositivos de mídia, bateria, toque;
Cabeçalhos HTTP e impressão digital TLS semelhantes ao navegador selecionado.
Para entender o suficiente: o site olha para o gráfico de sinais, o antidetect tenta fazer com que esse gráfico se pareça com um dispositivo normal.
Onde isso “realmente funciona”
Funciona onde a anti-fraude é mais fraca do que o modelo de perfil.
Muitos sistemas não podem realizar análises pesadas em cada usuário. Eles precisam tomar uma decisão rapidamente: permitir a entrada, mostrar um captcha, solicitar 2FA, bloquear, enviar para verificação manual. Eles têm um orçamento para CPU, latência, falsos positivos. Você não pode banir todos os usuários com um sistema não padrão, porque pessoas normais também podem ser estranhas.
Alguém tem um laptop antigo no Linux. Alguém tem Firefox com configurações de privacidade e um proxy corporativo. Alguém tem um navegador em uma máquina virtual com fontes quebradas.
O antidetect vive nesta zona cinzenta. Ele não precisa ser perfeito. Basta que ele se enquadre na faixa de “semelhante a um usuário real, sem contradições fortes, sem conexão óbvia com outros perfis”.
A W3C em seu documento sobre fingerprinting divide diretamente as medidas de proteção em reduzir a superfície da impressão digital, aumentar o conjunto de anonimato e a detectabilidade do fingerprinting. A ideia do conjunto de anonimato é especialmente importante aqui: quanto mais usuários se parecem ou são semelhantes o suficiente, mais difícil é destacar uma pessoa específica.
O Tor Browser segue exatamente esse caminho. Ele tenta fazer com que os usuários se pareçam. Mas também escrevi sobre isso no artigo sobre o navegador Tor.
O antidetect geralmente segue outro caminho. Ele não tenta tornar todos iguais. Ele faz muitos perfis diferentes. Cada perfil deve se parecer com um dispositivo separado e plausível.
Isolamento de perfil - metade do trabalho
Simplificando, um antidetect browser consiste em duas partes: a substituição da impressão digital e o isolamento do estado.
O isolamento é mais fácil de entender. Cada perfil tem seus próprios cookies, localStorage, IndexedDB, cache, service workers, histórico, permissões, logins salvos. Uma conta não deve puxar acidentalmente os dados de outra.
O Chrome normal também sabe sobre perfis. O Firefox sabe sobre contêineres. Mas os antidetect browsers tornam isso uma função central: um perfil é um ambiente de trabalho separado que pode ser iniciado, fechado, transferido, sincronizado, vinculado a um proxy, comentado, compartilhado dentro da equipe.
Para multi-account, isso é crítico. Sem isolamento, você pode perfeitamente falsificar o WebGL e ainda revelar a conexão por meio de armazenamento ou service worker. Um cookie compartilhado extra e toda a camuflagem cuidadosa se transforma em decoração.
Há um ponto desagradável aqui. Quanto mais “vida” houver no perfil, mais natural ele é. Um perfil vazio com histórico zero, cookies novos e a primeira entrada via IP suspeito parece pior do que um perfil que tem uma sessão estável e comportamento previsível. A anti-fraude adora história. Portanto, o multi-account raramente é mantido apenas na técnica do navegador. Quase sempre há aquecimento, padrões comportamentais, limites de ações, reputação de IP, rastreamento de pagamentos.
Eles geralmente não gostam de falar sobre isso nas descrições de publicidade de antidetects. Eles vendem o botão “criar perfil”. Na realidade, o botão cria apenas uma camada superficial.
Substituição de API: onde o navegador começa a mentir
A maneira mais óbvia é ensinar o navegador a mentir por meio da API JavaScript.
O site pergunta navigator.hardwareConcurrency e recebe não o número real de threads da CPU, mas o número do perfil. O site lê Intl.DateTimeFormat().resolvedOptions().timeZone e vê o fuso horário que corresponde ao proxy. O site desenha uma imagem oculta via Canvas e, na saída, recebe uma impressão digital, não do dispositivo real, mas do resultado preparado com antecedência.
Parece uma ótima opção, mas o site pode verificar não apenas a resposta. Ele pode verificar o comportamento do navegador em torno dessa resposta.
Aqui está a pegadinha.
A API real do navegador tem uma “assinatura”. As propriedades estão nos lugares esperados. Eles têm descritores normais. Os erros dão um stack trace familiar. Os valores coincidem entre a página principal, iframe e worker onde devem coincidir. Canvas se comporta de forma estável. WebGL não discute com a plataforma. O fuso horário não entra em conflito com o idioma, IP e localidade.
Um antidetect ruim geralmente quebra não em um grande furo, mas em pequenas costuras.
Na página principal, ele mostra um número de threads de CPU, e no worker, outro. No navigator, o valor foi substituído, e na API vizinha eles esqueceram. A função parece retornar o resultado correto, mas seu toString() não se parece com uma função nativa. A propriedade existe, mas seu descritor é diferente do Chrome normal. Canvas dá um novo ruído toda vez, embora o navegador real, com a mesma imagem, geralmente retorne o mesmo resultado.
O site não precisa conhecer o dispositivo real. Basta ver que há um ambiente montado à sua frente.
CreepJS é útil precisamente por isso. Ele mostra não apenas os próprios valores, mas também as contradições entre eles. Não apenas “qual é o seu Canvas”, mas “este Canvas se parece com o resto do sistema”. Não apenas “qual é o seu navegador”, mas “ele se comporta como este navegador em diferentes contextos”.
Portanto, a substituição normal deve ser profunda e consistente.
Se o antidetect alterar o fuso horário, ele deve pensar sobre o idioma, região, IP, formato de data e comportamento Intl. Se ele alterar o Canvas, o resultado deve ser estável dentro do perfil. Se ele alterar o WebGL, ele não deve entrar em conflito com o sistema operacional e o navegador. Se ele alterar as propriedades do navegador, os mesmos valores devem aparecer com precisão em iframes, workers e outros lugares onde o site pode olhar.
Aqui surge o principal conflito: quanto mais o navegador esconde a realidade, maior o risco de quebrar o site normal.
O antidetect tem que equilibrar. Se não mudar nada, os perfis serão colados. Se mudar muito grosseiramente, o site verá um ambiente artificial. Um bom perfil está entre esses extremos: ele difere o suficiente de outros perfis, mas permanece semelhante a um navegador normal de uma pessoa normal.
Por que a camada de rede interfere
Muitos pensam: colocou um proxy - recebeu outra identidade. Não.
IP é apenas uma camada. Ele deve corresponder aos outros sinais. Se o perfil diz “Paris”, o fuso horário é Moscou, o idioma do navegador é russo, o DNS segue uma rota estranha, o WebRTC mostra endereços locais e a impressão digital TLS se assemelha a um cliente automatizado, o quadro é ruim.
A impressão digital TLS é particularmente desagradável. O JavaScript pode nem chegar lá. O servidor já vê ClientHello: um conjunto de conjuntos de cifras, extensões, a ordem das extensões, ALPN, grupos suportados. Diferentes navegadores e versões têm esses conjuntos diferentes. Se Chrome estiver escrito no topo, e o TLS se assemelhar a uma biblioteca ou cliente modificado, este é um sinal barulhento.
Fingerprint.com inclui diretamente a impressão digital TLS na lista de técnicas comuns, juntamente com Canvas, WebGL, fontes e áudio.
É por isso que o antidetect no nível da extensão é mais fraco do que o navegador com alterações abaixo da pilha. A extensão pode alterar a camada JavaScript. Ele quase não controla a pilha de rede, TLS, a ordem dos sinais de baixo nível, o comportamento do mecanismo. A montagem do navegador tem mais oportunidades, mas também mais maneiras de quebrar.
Detecção de antidetect: eles não procuram mentiras, mas costuras
Um bom sistema anti-fraude não precisa conhecer a GPU real do usuário. Ele procura costuras.
Uma costura é um lugar onde dois sinais não se encaixam bem.
Por exemplo:
O navegador declara uma plataforma, e a pilha gráfica se assemelha a outra;
O fuso horário entra em conflito com a geografia do IP;
Idioma e localidade não correspondem ao teclado, fontes e comportamento Intl;
Canvas é estável, mas WebGL parece artificial;
O perfil é novo todos os dias, mas as ações são muito confiantes;
A camada JS se parece com o Chrome, a camada TLS não;
No thread principal, um valor, no worker, outro;
O iframe vê menos substituição do que a página principal.
No estudo Detecting Anti-fingerprinting Browsers, os autores avaliaram navegadores anti-fingerprinting comerciais, clandestinos e de pesquisa. Na anotação, é dito diretamente: essas ferramentas podem contornar com sucesso o browser fingerprinting, mas os pesquisadores mostram maneiras de detectá-las e analisar onde elas falham.
Funciona - porque a web é muito diversificada, e a anti-fraude é limitada por recursos e o risco de falsos positivos.
É detectado - porque a consistência ideal entre JS, gráficos, sistema operacional, rede e comportamento é muito difícil.
Quando três contas “diferentes” de repente se tornam um navegador em chapéus diferentes
Por que um antidetect não pode ser substituído por um navegador privado normal
O modo de navegação privada limpa o estado local após a sessão. Ele não torna o dispositivo diferente.
O Firefox Resist Fingerprinting reduz a exclusividade e limita a coleta de dados. A Mozilla adverte que isso pode quebrar sites, porque os sites realmente usam parte dessas APIs para funcionalidade.
O Tor Browser reduz o fingerprinting através da padronização do comportamento. É bom para privacidade, mas não é adequado para o modelo “muitas contas diferentes com dispositivos diferentes”. Se vinte contas acessarem o mesmo Tor Browser através da rede Tor, este é um padrão forte separado.
O antidetect resolve uma tarefa diferente: não se esconder na multidão de navegadores idênticos, mas separar as contas em diferentes perfis plausíveis. Para a plataforma, isso deve parecer usuários diferentes, dispositivos diferentes, histórias diferentes.
É por isso que no antidetect não é “anonimato” que é importante, mas a conectividade da lenda. IP, idioma, hardware, sistema operacional, navegador, fuso horário, comportamento, cookies, histórico - tudo deve fazer parte de uma imagem.
Pensamento final
O antidetect coleta sua própria impressão digital para cada perfil. Não aleatório, mas conectado: como se fosse uma pessoa separada com um dispositivo separado, navegador e histórico.
É por isso que o multi-account pode viver por muito tempo: o perfil parece plausível e não está bem conectado a outros perfis.
Mas não há invisibilidade aqui. A anti-fraude forte procura não um campo suspeito, mas inconsistências entre as camadas: o navegador diz uma coisa, o WebGL sugere outra, o fuso horário discute com o IP, o Canvas se comporta de forma muito artificial.
Obrigado a todos por lerem o artigo até o fim! Ficarei feliz em vê-lo no meu canal do Telegram, onde continuo a analisar tópicos relacionados à segurança cibernética: higiene digital, privacidade, deanonymization, anti-fraude, OSINT, esquemas de ataque reais e tudo o que ajuda a entender melhor as ameaças ao seu redor.
📤 Compartilhar & Baixar
📩 Newsletter MundiX
Receba novidades de cibersegurança + um checklist de pentest grátis. Sem spam.
Ao assinar você concorda em receber e-mails. Cancele quando quiser.