Guias

Filtre tráfego de bots usando ASN e dados de rede

A maioria dos visitantes reais se conecta a partir de redes residenciais ou móveis. A maior parte do tráfego automatizado se conecta a partir de data centers e provedores de hospedagem em nuvem. Essa diferença aparece claramente nos campos asn e org de uma consulta de IP.

Obtendo dados de rede

GET /v1/ip?ip=203.0.113.99
{
  "status": "ok",
  "ip": "203.0.113.99",
  "version": 4,
  "found": true,
  "country": "United States",
  "country_code": "US",
  "region": "Virginia",
  "city": "Ashburn",
  "postcode": "20147",
  "lat": 39.0438,
  "lon": -77.4874,
  "timezone": "America/New_York",
  "asn": 16509,
  "org": "Example Cloud Hosting"
}

Criando um filtro simples

Mantenha uma lista curta de padrões de nomes de organizações ou de números de ASN específicos que você associa a hospedagem em nuvem e a plataformas de automação conhecidas, com base no seu próprio histórico de tráfego, e marque o tráfego dessas redes para uma análise extra, como um desafio CAPTCHA ou uma pontuação de confiança menor, em vez de bloqueá-lo de imediato. Existem usos legítimos de faixas de IP de nuvem, incluindo VPNs corporativas e infraestrutura de operadoras móveis, então esse sinal funciona melhor combinado com sinais comportamentais do que usado sozinho.

Um segundo sinal: país divergente

Combinar a verificação de ASN com o campo country_code revela um padrão diferente. Uma conta que afirma estar sediada em um país, mas entra consistentemente a partir de um endereço de data center registrado em outro, é um sinal mais forte em conjunto do que qualquer um dos fatos isoladamente. Nenhum dos campos prova algo sozinho, já que clientes reais viajam e usam VPNs por motivos totalmente comuns, mas a combinação merece um peso maior em um sistema de pontuação do que qualquer uma das verificações feita isoladamente.

Onde isso entra em uma requisição

Faça a verificação de ASN no ponto em que o tráfego chega pela primeira vez à sua aplicação, como um formulário de cadastro ou uma tentativa de login, e não depois do fato, para que o sinal possa realmente influenciar o que acontece a seguir. Armazene o resultado em cache pela duração da sessão, já que o ASN de um endereço não muda no meio de uma sessão.

Lidando com visitantes recorrentes

Um visitante que foi pontuado uma vez durante o cadastro e volta mais tarde do mesmo endereço de rede não precisa de uma nova consulta a cada vez, já que os campos asn e org de um determinado endereço permanecem estáveis entre sessões. Armazene a classificação em cache associada ao próprio endereço, e não apenas à sessão, para que um endereço residencial reconhecidamente seguro também não seja reavaliado em cada visita futura.

Um erro que vale a pena evitar

Bloquear de imediato todas as requisições de um ASN reconhecido de hospedagem ou nuvem, em vez de pontuá-las, exclui uma fatia real de tráfego legítimo junto com o tráfego automatizado que você de fato queria impedir. Saídas de VPNs corporativas, algumas operadoras móveis e navegadores focados em privacidade passam por infraestruturas que podem aparecer da mesma forma que um provedor de hospedagem. Use os campos de ASN e org como uma entrada em uma decisão de pontuação ou de desafio, e não como uma regra de bloqueio automático por si sós.

Quanto custa

Uma consulta por nova sessão, armazenada em cache em seguida, significa uma requisição por visitante, e não uma por cada requisição que ele fizer. Em um site com um volume significativo de cadastros ou logins, isso fica dentro das 2.500 requisições gratuitas por dia incluídas em cada chave para tráfego moderado, e passa para o crédito pré-pago ou para uma chave Unlimited quando o volume ultrapassa esse limite.

A origem da rede é um sinal entre vários, não um veredito por si só, mas é um sinal barato de adicionar a um fluxo de cadastro ou login. A documentação da consulta IPv4 e a documentação da consulta IPv6 descrevem todos os campos que o endpoint retorna.