Um sistema anti-bot é um software na frente de um site que estima, para cada requisição, a probabilidade de ela vir de automação em vez de uma pessoa, e age com base nessa estimativa — deixando passar, desacelerando, desafiando ou bloqueando. A estimativa não é feita a partir de um único fato. É uma pontuação montada a partir de quatro camadas: de onde vem a requisição (IP), como a conexão foi feita (impressões digitais TLS e HTTP), o que o navegador revela sobre si mesmo (impressão digital JavaScript) e o que o visitante faz ao longo do tempo (comportamento). Entender as camadas explica as duas coisas que os usuários de proxy acham mais confusas: por que um IP residencial “perfeito” ainda é desafiado, e por que a mesma configuração funciona em um site e falha em outro.
Os fornecedores e os produtos
A maioria dos sites protegidos usa um de um punhado de produtos: Cloudflare Bot Management (e seu desafio Turnstile), DataDome, Akamai Bot Manager, HUMAN (anteriormente PerimeterX), Imperva (Incapsula), Kasada e AWS WAF Bot Control. Eles diferem em ênfase e em quão agressivos são seus padrões, mas são construídos sobre as mesmas quatro camadas, e as camadas são o assunto deste artigo. Tudo abaixo se aplica a todos eles em alguma proporção.
Camada 1: Reputação de IP
A primeira e mais barata verificação. Antes mesmo de a requisição ser analisada, o IP é consultado:
- ASN e tipo — é uma empresa de hospedagem (datacenter), um ISP de consumo (residencial) ou uma operadora móvel? ASNs de hospedagem começam com uma penalidade na maioria dos sites; o raciocínio é abordado em Residencial vs datacenter vs móvel.
- Inteligência de ameaças — o IP está em listas de abuso, é conhecido como saída de VPN/proxy ou foi visto atacando outros clientes do mesmo fornecedor? Os fornecedores combinam sinais de toda a sua base de clientes, então um IP queimado em um site protegido por DataDome é suspeito em todos eles.
- Velocidade — quantas requisições este IP fez a este site recentemente e a quantos caminhos diferentes? Um contador por IP é o sinal de bot mais antigo que existe e ainda é um dos mais eficazes.
- Geografia — o país corresponde ao público do site? Corresponde ao idioma e fuso horário que o navegador reportará mais tarde?
Esta é a única camada que um proxy controla diretamente. Um IP residencial ou móvel sem histórico no alvo passa por ela. Mas passar pela camada 1 apenas significa que a requisição prossegue para as camadas 2–4 com uma pontuação neutra, não uma boa.
Camada 2: Impressões digitais de rede (TLS, HTTP/2, TCP)
Antes de qualquer conteúdo de página ser servido, o servidor já viu como a conexão foi aberta, e a maneira como foi aberta identifica o software cliente:
- Impressão digital TLS (JA3/JA4) — o ClientHello revela a biblioteca TLS: Chrome, Firefox, OpenSSL-em-Python, Go. Explicado em Impressão digital TLS.
- Impressão digital HTTP/2 — os valores do quadro SETTINGS, tamanho inicial da janela, quadros de prioridade e a ordem dos cabeçalhos e pseudo-cabeçalhos. Navegadores têm padrões característicos e estáveis; bibliotecas HTTP têm padrões diferentes. A pesquisa da Akamai tornou essa técnica famosa.
- Impressão digital TCP/IP — tamanho da janela, TTL, opções; distingue sistemas operacionais, e um User-Agent “Windows” com uma pilha TCP Linux é uma incompatibilidade.
A lógica de pontuação aqui é consistência: a identidade no nível de rede corresponde ao que os cabeçalhos HTTP afirmam? Um proxy não toca nessas impressões digitais — ele as encaminha — então um script atrás de um IP residencial é identificado como script nesta camada, independentemente da qualidade do IP. É aqui que a maioria das perguntas “por que meu proxy limpo está bloqueado?” são respondidas.
Camada 3: Impressão digital do navegador e desafios JavaScript
Se a requisição chegar ao ponto de servir HTML, o JavaScript do fornecedor é executado no navegador do visitante e reporta de volta. Dois tipos de coisas acontecem.
Impressão digital
O script coleta as mesmas propriedades que um navegador antidetecção é construído para controlar: hashes de canvas e WebGL, fontes, dimensões de tela e janela, concorrência de hardware, fuso horário, idiomas, contexto de áudio, IPs visíveis via WebRTC, listas de plugins e dezenas de sinais menores. Ele também sonda por artefatos de automação: navigator.webdriver definido como true, objetos específicos do Chrome ausentes ou inconsistentes, peculiaridades de modo headless na renderização, um número incomum de certas APIs sendo sobrescritas (um sinal de plugins furtivos corrigindo o navegador). E verifica consistência: a plataforma reportada pelo JavaScript corresponde ao SO da impressão digital TCP? O fuso horário corresponde ao país do IP? Veja o que um navegador antidetecção controla.
Desafios
Os fornecedores também emitem tarefas de prova de trabalho ou prova de humanidade. O Turnstile da Cloudflare e o intersticial “verificando seu navegador” executam uma carga de trabalho JavaScript cujo resultado deve ser postado de volta; um cliente que não consegue executar JavaScript de forma alguma — toda biblioteca HTTP simples — simplesmente falha e nunca vê a página. CAPTCHAs visíveis são o último recurso, mostrados quando a pontuação é ruim, mas não ruim o suficiente para bloquear completamente. Passar em um desafio normalmente produz um cookie ou token válido por um período; automação que limpa cookies a cada requisição enfrenta o desafio toda vez, o que por si só é um sinal.
Camada 4: Comportamento
Ao longo de uma sessão — e entre sessões que o fornecedor pode vincular por impressão digital ou IP — o sistema observa o que o visitante faz:
- Padrões de requisição: páginas por minuto, se imagens e scripts referenciados por uma página são buscados (os navegadores humanos os buscam; scrapers ingênuos não), se a navegação segue links ou vai direto para URLs profundas, se os mesmos caminhos são acessados na mesma ordem a cada sessão.
- Tempo: intervalos uniformes entre requisições são semelhantes a máquinas; humanos são irregulares e imprevisíveis.
- Interação: movimento do mouse, rolagem, eventos de teclado — sua presença e sua forma (caminhos reais de mouse curvam e ultrapassam; os programados são linhas retas ou arcos perfeitos).
- Formato da sessão: um login seguido imediatamente por uma ação em massa; um checkout sem navegação; criação de conta a partir de uma impressão digital que criou cinco contas ontem.
O comportamento é o motivo pelo qual uma configuração tecnicamente perfeita — navegador real, proxy correspondente, impressão digital limpa — ainda pode ser pega se agir como uma máquina. É também a camada onde a reputação acumulada vive: uma identidade que se comportou normalmente por semanas ganha tolerância que uma nova não tem. É isso que “aquecimento” significa na prática.
Como as camadas se combinam: a pontuação
Cada camada contribui com evidências; o produto as combina em uma pontuação de bot (a Cloudflare expõe a deles como 1–99; outros a mantêm interna) e o proprietário do site configura limites: acima de X, permitir; entre X e Y, desafiar; abaixo de Y, bloquear ou servir um chamariz. Duas propriedades desse design importam para quem usa proxies:
- As camadas devem concordar. A pontuação não é a soma de marcas boas independentes; contradições são pesadas fortemente. Um IP residencial (bom) mais uma impressão digital TLS Python (ruim) mais um User-Agent Chrome (contradição) pontua pior do que um IP de datacenter com um UA honesto
python-requests, porque o segundo é pelo menos coerente. - Nada é verificado isoladamente. Passar na reputação de IP compra sua entrada para a próxima verificação, não uma aprovação. Cada afirmação que você faz — por IP, por handshake, por cabeçalho, por JavaScript, por comportamento — é examinada contra todas as outras.
O que isso significa para a escolha de proxy
| Camada | O que decide | Um proxy pode corrigir? |
|---|---|---|
| 1. Reputação de IP | Tipo de IP, histórico, velocidade, geo | Sim — este é o trabalho do proxy |
| 2. Impressões digitais de rede | Seu cliente HTTP / navegador | Não — encaminhadas inalteradas |
| 3. Impressão digital do navegador / desafio JS | Seu navegador e sua configuração | Não — mas geo/fuso horário devem corresponder ao proxy |
| 4. Comportamento | Sua lógica de automação e ritmo | Não — embora a rotação afete a velocidade por IP |
Então: escolha o tipo de proxy que a política da camada 1 do alvo exige (datacenter onde tolerado, residencial ou móvel onde não), e então gaste seu esforço nas camadas 2–4, que nenhum proxy toca. Na prática, isso significa um navegador real ou personificado para alvos protegidos, consistência de impressão digital por identidade, geo/fuso horário correspondentes ao IP e ritmo com formato humano. A estratégia de rotação interage com a velocidade da camada 1 e o formato da sessão da camada 4 ao mesmo tempo — veja escolhendo um intervalo de rotação.
Como descobrir qual camada está bloqueando você
- Bloqueado instantaneamente, sem HTML, mesmo de um navegador real no mesmo IP → camada 1: o IP ou ASN é o problema. Mude o tipo de proxy ou provedor.
- Navegador passa, script no mesmo IP não → camada 2: impressão digital TLS/HTTP. Mude para um navegador real ou um cliente personificador.
- Intersticial que nunca resolve, ou um CAPTCHA a cada visita → camada 3: desafio JavaScript falhando ou impressão digital inconsistente. Verifique flags de automação, WebRTC, fuso horário vs IP.
- Funciona por um tempo, depois degrada; ou contas morrem após ações → camada 4: comportamento ou velocidade. Desacelere, varie padrões, aqueça identidades.
Os fornecedores retornam respostas distintas (uma página 403 da Cloudflare, os cabeçalhos x-datadome da DataDome e endpoint de CAPTCHA, o cookie _abck da Akamai), então identificar qual produto um site usa geralmente é uma questão de olhar cabeçalhos e cookies — e saber qual produto informa quais camadas ele enfatiza.
Perguntas frequentes
O que é uma pontuação de bot?
Uma estimativa por requisição, produzida combinando reputação de IP, impressões digitais de rede e navegador, e sinais comportamentais, de quão provável é que a requisição seja automatizada. Os proprietários de sites definem limites nela para permitir, desafiar ou bloquear.
Por que um proxy residencial ainda recebe um CAPTCHA?
Porque a reputação de IP é apenas uma das quatro camadas. Se a impressão digital TLS/HTTP diz “script”, o navegador falha ou não tem o desafio JavaScript, ou o comportamento é semelhante a máquina, a pontuação é ruim independentemente do IP.
Os sistemas anti-bot compartilham dados entre sites?
Dentro de um fornecedor, sim: um IP ou impressão digital sinalizado no site de um cliente aumenta seu risco nos sites de outros clientes. É por isso que um pool de proxies muito usado contra um alvo protegido por Cloudflare pode ter desempenho ruim em alvos não relacionados protegidos por Cloudflare.
Bibliotecas HTTP simples podem passar em desafios JavaScript?
Não. Desafios exigem executar JavaScript em um ambiente semelhante a navegador. As opções são um navegador automatizado real, ou um serviço de solução que executa o desafio para você e retorna o cookie/token resultante — o que por si só tem custo e risco de detecção.
Qual é a diferença entre um desafio e um CAPTCHA?
Um desafio é frequentemente invisível — uma carga de trabalho JavaScript ou atestado que o navegador completa automaticamente. Um CAPTCHA é um quebra-cabeça visível para o humano, mostrado quando a pontuação é ruim o suficiente para que o sistema queira prova explícita.
É possível ser completamente indetectável?
Não como garantia. A detecção é probabilística e os fornecedores atualizam constantemente. O que é alcançável é consistência em todas as quatro camadas mais comportamento com formato humano, o que mantém a pontuação na faixa “permitir” na maioria das vezes. Qualquer um que prometa indetectabilidade apenas com o proxy está vendendo apenas a camada 1.