26 pontos por GN⁺ 2025-07-01 | Ainda não há comentários. | Compartilhar no WhatsApp
  • Os web bots evoluíram de requisições simples com clientes HTTP até a automação de navegadores reais, e em resposta a isso as técnicas de detecção de bots também ficaram continuamente mais sofisticadas
  • Tecnologias como reputação de IP, impressões digitais de TCP/TLS/ambiente do navegador e análise comportamental baseada em JavaScript são usadas na detecção de bots
  • Técnicas de evasão de bots, como navegadores headless, proxies e adulteração de User-Agent, evoluem, mas os algoritmos de detecção também avançam junto, mantendo o jogo de “gato e rato” entre os dois lados
  • Mais recentemente, a combinação com análises comportamentais avançadas usando modelos de IA baseados em dados de comportamento tornou a detecção de bots ainda mais complexa
  • Sistemas de defesa em múltiplas camadas, como CAPTCHA, detecção de proxy, Proof-of-Work e autenticação baseada em comportamento, estão se tornando comuns

Introdução: a evolução dos web bots e das tecnologias de detecção

  • Os web bots vão desde crawlers simples e scripts de automação até programas sofisticados que se comportam como usuários reais
  • Há bots úteis, como mecanismos de busca e bots de arquivamento, mas também muitos usos problemáticos, como spam e scraping ilegal
  • Os operadores de sites lutam contra bots desde os primórdios, e as técnicas de detecção e evasão se sofisticaram ao mesmo tempo

O bot mais simples: cliente HTTP

  • A forma mais básica de bot é enviar requisições a um site com clientes HTTP simples como curl e wget
  • Todo cliente HTTP se expõe pelo cabeçalho User-Agent, então os sites conseguem detectá-lo e bloqueá-lo com facilidade
  • Mesmo que o User-Agent seja falsificado para parecer um navegador, navegadores incluem cabeçalhos adicionais (idioma, codificação etc.), então, sem uma camuflagem perfeita, ele ainda será detectado

Reputação de IP e proxies

  • O servidor detecta bots usando o endereço IP. Em especial, faixas de IP de nuvem e datacenter tendem a ser tratadas como tráfego de bot/automação, com baixa confiança
  • Operar sem proxy leva a bloqueio rapidamente, então é preciso contornar o IP com proxies residenciais/móveis, o que gera custo
  • Os sites verificam ativamente reputação de IP, abertura de portas de proxy (como 1080), faixa de IP e padrões de acesso
  • Para contornar bloqueios de IP, usam-se rotating proxies e proxies móveis

Impressão digital de TCP (TCP Fingerprinting)

  • Ao estabelecer uma conexão TCP antes da requisição HTTP, a forma como os pacotes TCP são montados varia conforme o sistema operacional, e isso pode ser analisado para identificar o SO
  • Quando o User-Agent e o SO real (impressão digital TCP) não coincidem, o tráfego tende a ser considerado bot ou tráfego disfarçado
  • Servidores proxy também podem afetar a impressão digital TCP, então ao escolher um proxy é preciso considerar se o SO corresponde

Impressão digital de TLS (TLS Fingerprinting)

  • No processo de handshake TLS, os métodos de criptografia suportados, versões e extensões variam conforme navegador e sistema operacional
  • Pela impressão digital TLS, é possível inferir navegador, sistema operacional e tipo de biblioteca, e cruzar isso com o User-Agent

Detecção com JavaScript

  • Antes de responder, ou após o carregamento da página, o servidor usa JavaScript para coletar mais informações sobre o ambiente e o comportamento do cliente
  • Se o bot não executa JavaScript, ele é detectado imediatamente, e por isso os bots respondem usando ferramentas de automação de navegador como Selenium, Puppeteer e Playwright
  • O cenário está evoluindo de simples requisições HTTP para automação de navegador

Navegadores headless e detecção

  • O modo headless (como o Chrome sem janela) é essencial no desenvolvimento de bots, mas diferenças como navigator.webdriver, lista vazia de plugins e outras características exclusivas permitem sua detecção
  • É possível mascarar isso corrigindo várias propriedades, mas é preciso tratar dezenas de pistas, e novos pontos de detecção continuam surgindo
  • O modo New Headless, introduzido a partir de 2023, usa o mesmo engine do Chrome real, tornando a detecção mais difícil

Detecção de frameworks de orquestração e IPC

  • Frameworks de automação como Selenium e Playwright expõem particularidades em flags e opções próprias, versões do navegador e configuração do ambiente
  • Exemplo: flags como --disable-ipc-flooding-protection servem como indício para identificar ambiente de bot
  • Algumas funções JS (por exemplo, window.history.pushState) podem ser chamadas em excesso para induzir um estado de IPC flood e permitir detecção

Detecção de proxy: sofisticação via JS

  • Latency (medição de latência): compara-se a latência total medida por WebSocket etc. com a latência TCP para verificar a presença de proxy
  • WebRTC Leak: usa-se o WebRTC do navegador para obter o IP real do cliente e compará-lo com o IP da requisição HTTP; se não coincidirem, há suspeita de proxy/bot
  • DNS Leak: em JavaScript, faz-se uma requisição a um subdomínio arbitrário → a localização/IP do servidor DNS permite detectar padrões anormais (como país inconsistente)
  • Timezones: compara-se o fuso horário do navegador com a localização do IP para detectar uso de proxy ou disfarce

Captcha e autenticação

  • Captcha é uma autenticação separada com o objetivo de detectar/bloquear bots, composta por problemas que humanos conseguem resolver (reconhecimento de caracteres, cliques etc.)
  • Recentemente, surgiram captchas baseados em Proof-of-Work (imposição de trabalho computacional) e captchas baseados em comportamento (clique simples combinado com análise comportamental)
  • A maioria dos bots contorna captchas usando serviços externos baratos de resolução de captcha

Análise comportamental simples/avançada

  • A análise comportamental examina a ineficiência e a diversidade típicas do comportamento humano, como movimentos do mouse, padrões de digitação, posição e velocidade de clique
    • Exemplos: movimento curvo do mouse, atraso no clique, intervalo entre teclas, eventos de orientation/motion em dispositivos móveis etc.
    • Bots se revelam facilmente por movimento em linha reta, digitação constante/rápida e velocidade de reação irrealista
  • A análise comportamental avançada coleta e treina com grandes volumes de dados de comportamento humano e de bots, identificando até padrões sutis com IA/machine learning
    • Ex.: classificação baseada em dados compostos, como trajetória do movimento do mouse, pequenas diferenças de tempo entre keystrokes e padrões de navegação na página

Conclusão e implicações

  • Web bots vs. tecnologias de detecção é uma disputa de evolução e reação contínuas, na qual técnicas variadas são usadas em conjunto, de impressões digitais estáticas e análise comportamental até detecção baseada em IA
  • Apesar das várias técnicas de evasão e disfarce, os operadores de serviços respondem com sistemas de detecção em múltiplas camadas, análise comportamental em tempo real e modelos de IA, e precisam de atualizações contínuas
  • Desenvolvedores de bots têm limites para montar um ambiente de camuflagem perfeito, e entender as tendências mais recentes de detecção e as formas de resposta é essencial

Ainda não há comentários.

Ainda não há comentários.