O Professional Mode do Bots permite combinar condições em campos de correspondência comuns, como IP, Referer e User-Agent, para filtrar solicitações de acesso. Você pode aplicar ações de monitoramento, slider CAPTCHA ou bloqueio às solicitações que atendem às condições. Este tópico apresenta exemplos dos campos de correspondência comuns do Bots e descreve como configurar as regras correspondentes.
O Professional Mode do Bots está disponível apenas para o plano Enterprise. Quando um usuário de outro plano muda para o Professional Mode, a página exibe orientações para upgrade para o plano Enterprise, impedindo a configuração de correspondência de regras ou a execução de ações. Para utilizar este recurso, faça o upgrade para o plano Enterprise.
Campos de correspondência abordados neste tópico
A tabela a seguir lista os campos de correspondência para os quais este tópico fornece um exemplo de configuração baseado em cenários.
|
Campo de correspondência |
Quando usar |
|
Filtre solicitações com base nas informações de dispositivo e navegador transportadas pelo cabeçalho de solicitação |
|
|
Aplique políticas de proteção exclusivamente a solicitações de arquivos estáticos ou apenas a todas as outras solicitações. |
|
|
Diferencie clientes capazes de executar JavaScript daqueles que não possuem essa capacidade. |
|
|
Identifique um cliente SSL/TLS por meio da impressão digital de seu handshake TLS. |
Este tópico não abrange todos os campos de correspondência. Para obter a lista completa, incluindo campos como IP e Referer, consulte Match fields. Para visualizar os operadores e valores de correspondência utilizáveis em uma condição, consulte Operators and grouping symbols e Match values.
Os exemplos apresentados aqui aplicam ações de bloqueio e lista de permissões. As ações de monitoramento e slider CAPTCHA não são demonstradas.
Os exemplos deste tópico servem apenas como referência. Configure as políticas correspondentes do Bots de acordo com os requisitos reais do seu negócio.
User-Agent
O User-Agent é um campo essencial no cabeçalho de solicitação HTTP que identifica características do dispositivo de acesso, como sistema operacional, tipo e versão do navegador. Configure regras de lista de bloqueios e lista de permissões de User-Agent para controlar as origens de acesso com precisão e reforçar a proteção de segurança dos seus service de aceleração de negócios.
Exemplo de configuração
Crawlers têm raspado recursos do seu negócio recentemente, causando um aumento abrupto nos custos de largura de banda do seu nome de domínio. Análises indicam que o User-Agent das solicitações desses crawlers contém Python-requests, e você deseja bloquear tais solicitações. Configure a regra da seguinte forma:
-
Na seção If requests match..., defina o campo de correspondência como
User-Agent, o operador de correspondência como contains e o valor de correspondência comoPython-requests.
Na seção Then execute..., ative a chave Fake Spider Blocking para bloquear rapidamente os crawlers correspondentes que se passam por crawlers de mecanismos de busca.
Serves static resources
Uma solicitação estática ocorre quando um cliente, como um navegador, requisita ao servidor um recurso já armazenado como arquivo estático, por exemplo, áudio, vídeo ou imagem. Nesse caso, o servidor não precisa processar ou gerar o recurso dinamicamente.
O campo de correspondência Serves Static Resources funciona como uma chave, e não como um valor. A posição ligada (
) aplica as políticas de proteção a seguir às solicitações estáticas, enquanto a posição desligada (
) as aplica às solicitações não estáticas.
Exemplo de configuração
Uma plataforma de e-commerce identificou que diversos bots disfarçados de usuários normais solicitam imagens de product com alta frequência, elevando drasticamente os custos de largura de banda do ESA. A plataforma necessita de uma política de proteção que distinga com precisão o acesso a recursos estáticos feito por usuários legítimos daquele realizado por bots maliciosos. Configure a regra conforme abaixo:
-
Na seção If requests match..., defina o campo de correspondência como Serves Static Resources, o operador de correspondência como equals e coloque a chave na posição ligada (
).
Na seção Then execute..., configure políticas de proteção como Legitimate Bot Management, Bot Characteristic Detection e Bot Behavior Detection. Utilize essas políticas para identificar bots maliciosos entre as solicitações estáticas correspondentes.
JavaScript verified
A detecção de JavaScript injeta um trecho de código JavaScript leve e invisível no cliente acessante, em resposta a uma página HTML ou a uma solicitação de visualização de página. Solicitações provenientes de ferramentas sem suporte a JavaScript são bloqueadas, enquanto aquelas aprovadas na detecção podem prosseguir com outras ações.
O campo de correspondência JavaScript Verified atua como uma chave, e não como um valor. A posição ligada (
) aplica as políticas de proteção seguintes às solicitações que foram aprovadas na detecção de JavaScript, ao passo que a posição desligada (
) as aplica às solicitações que não foram aprovadas na detecção de JavaScript.
Exemplo de configuração
Neste exemplo, presume-se que a detecção de JavaScript já esteja habilitada no seu site para identificar bots. O objetivo é adicionar crawlers de mecanismos de busca aprovados na detecção de JavaScript a uma lista de permissões, evitando que passem novamente pelas verificações de proteção do módulo Bot Management. Configure a regra assim:
-
Na seção If requests match..., defina o campo de correspondência como JavaScript Verified, o operador de correspondência como equals e coloque a chave na posição ligada (
).
Na seção Then execute..., clique em Configure à direita de Legitimate Bot Management e selecione os mecanismos de busca que deseja adicionar à lista de permissões.
JA3 fingerprint
JA3 e JA4 são impressões digitais técnicas usadas para identificar clientes SSL/TLS. O JA3 analisa o pacote Client Hello durante o handshake TLS e gera um hash MD5 como identificador único. Já o JA4 é uma versão aprimorada do JA3, com suporte a múltiplos protocolos e formato de string modular legível, o que aumenta sua resistência a falsificações e sua extensibilidade. Este tópico aborda apenas a configuração de regras para impressões digitais JA3.
Exemplo de configuração
A API de uma plataforma de e-commerce oferece service de consulta de preços e estoque de product. Recentemente, um grande volume de tráfego incomum passou a consumir largura de banda. A análise revelou que atacantes utilizavam crawlers Python disfarçados de navegadores para acessar a API, resultando em vazamento de dados e degradação do desempenho do negócio. Para bloquear esse tráfego, configure uma regra de lista de bloqueios de impressão digital JA3 no ESA Professional Mode que corresponda às impressões digitais de clientes maliciosos conhecidos, como Python-requests e Scrapy.
-
Na seção If requests match..., defina o campo de correspondência como JA3 Fingerprint, o operador de correspondência como is in e os valores de correspondência como as impressões digitais JA3 dos clientes que você deseja bloquear. Neste cenário, os clientes a serem bloqueados são
Python-requestseScrapy. Como a impressão digital JA3 é um hash MD5, insira a impressão digital de cada cliente em vez do nome dele.
Na seção Then execute..., ative a chave Fake Spider Blocking para bloquear rapidamente os crawlers que atendem às condições.