Como uso o AWS WAF para bloquear solicitações HTTP que não contêm um cabeçalho User-Agent?

5 minuto de leitura
0

Quero restringir solicitações HTTP que não contenham um User-Agent específico ou contenham um valor de cabeçalho User-Agent específico na solicitação.

Breve descrição

Por padrão, os filtros do AWS WAF não verificam se os parâmetros de solicitação HTTP estão presentes. Para verificar se os parâmetros da solicitação HTTP estão presentes, faça o seguinte:

Bloqueie solicitações que não contenham um cabeçalho User-Agent usando Regras gerenciadas pela AWS.

-ou-

Bloqueie solicitações que não contenham um cabeçalho User-Agent ou bloqueie o tráfego se as solicitações contiverem um User-Agent específico usando regras personalizadas.

Resolução

Bloquear solicitações que não contenham um cabeçalho User-Agent usando Regras gerenciadas pela AWS

Use Regras gerenciadas pela AWS para o AWS WAF bloquear solicitações HTTP que não contenham um cabeçalho User-Agent sem precisar escrever suas próprias regras.

Observação: regras gerenciadas estão sujeitas a alterações de versão e expiração. Para obter mais informações, consulte Práticas recomendadas para lidar com versões gerenciadas de grupos de regras.

As regras a seguir inspecionam solicitações sem o cabeçalho HTTP User-Agent e strings de User-Agent que parecem não ser de um navegador da web:

NoUserAgent_HEADER
Essa regra é do grupo de regras gerenciadas do conjunto de regras principais (CRS). Essa regra inspeciona solicitações sem o cabeçalho HTTP User-Agent.

SignalNonBrowserUserAgent
Essa regra é do grupo de regras de controle de bots do AWS WAF. Essa regra inspeciona strings de User-Agent que não parecem ser de um navegador da Web, incluindo solicitações sem User-Agent.

Para adicionar um grupo de regras gerenciadas da AWS à sua ACL da web

  1. Abra o console do AWS WAF.

  2. No painel de navegação, em AWS WAF, escolha ACLs Web.

  3. Em Região, escolha a região da AWS em que você criou sua ACL Web.
    Observação: selecione Global se sua ACL Web estiver configurada para o Amazon CloudFront.

  4. Selecione sua ACL Web.

  5. Escolha Regras e, em seguida, escolha Adicionar regras. Selecione Adicionar grupos de regras gerenciadas no menu suspenso.

  6. Expanda a seção de grupos de regras gerenciadas pela AWS.

  7. Localize o grupo de regras e ative Adicionar à ACL Web.
    Por exemplo, você pode ativar Adicionar à ACL Web para o Conjunto de regras principais que contém a regra NoUserAgent_HEADER.

  8. (Opcional) Escolha Editar para visualizar e modificar as configurações do grupo de regras.

  9. Escolha Adicionar regras.

  10. Escolha Salvar.

Para editar um grupo existente de regras gerenciadas da AWS em sua ACL Web

  1. Abra o console do AWS WAF.
  2. No painel de navegação, em AWS WAF, escolha ACLs Web.
  3. Em Região, escolha a região da AWS em que você criou sua ACL Web.
    Observação: selecione Global se sua ACL Web estiver configurada para o Amazon CloudFront.
  4. Selecione sua ACL Web.
  5. Escolha Regras e, em seguida, escolha Editar para visualizar e modificar as configurações.
    Observação: para obter informações adicionais sobre edição de configurações, consulte Working with managed rule groups.
  6. Ao terminar a edição, escolha Salvar.

Se você obtiver cenários falsos positivos com grupos de Regras gerenciadas pela AWS, consulte AWS Managed Rules for AWS WAF.

Bloquear solicitações que não contenham um cabeçalho User-Agent usando regras personalizadas

Para bloquear solicitações que não contêm um cabeçalho User-Agent usando uma regra personalizada, faça o seguinte:

  1. Abra o console do AWS WAF.
  2. No painel de navegação, em AWS WAF, escolha ACLs Web.
  3. Em Região, selecione a região da AWS em que você criou sua ACL Web.
    Observação: selecione Global se sua ACL Web estiver configurada para o Amazon CloudFront.
  4. Selecione sua ACL Web.
  5. Escolha Regras e depois escolha Adicionar regras, Adicionar minhas próprias regras e grupos de regras.
  6. Escolha Criador de regras em Tipo de regra.
  7. Em Nome, insira um nome para identificar essa regra.
  8. Em Tipo, escolha Regra regular.
  9. Em Se uma solicitação, escolha não corresponde à declaração (NOT).
  10. Em Declaração, para Inspecionar, escolha Cabeçalho único.
    Em Nome do campo Cabeçalho, insira um nome para o campo. Por exemplo: User-Agent.
    Em Tipo de correspondência, escolha Tamanho maior que.
    Em Tamanho em bytes, insira 0 (zero).
    (Opcional) Escolha uma Transformação de texto ou escolha Nenhuma.
  11. Em Ação, escolha Bloquear.
  12. Escolha Adicionar regra.
  13. (Opcional) Em Definir prioridade da regra, selecione sua regra e mova sua prioridade. As regras são processadas na ordem em que aparecem. Para obter mais informações, consulte Processing order of rules and rule groups in a web ACL.
  14. Escolha Salvar.

Bloquear o tráfego se as solicitações contiverem um User-Agent específico usando regras personalizadas

Para bloquear o tráfego se as solicitações contiverem um User-Agent específico usando uma regra personalizada, faça o seguinte:

  1. Abra o console do AWS WAF.
  2. No painel de navegação, em AWS WAF, escolha ACLs Web.
  3. Em Região, selecione a região da AWS em que você criou sua ACL Web.
    Observação: selecione Global se sua ACL Web estiver configurada para o Amazon CloudFront.
  4. Selecione sua ACL Web.
  5. Escolha Regras e depois escolha Adicionar regras, Adicionar minhas próprias regras e grupos de regras.
  6. Escolha Criador de regras em Tipo de regra.
  7. Em Nome, insira um nome para identificar essa regra.
  8. Em Tipo, escolha Regra regular.
  9. Em Se uma solicitação, escolha corresponde a uma declaração.
  10. Em Declaração, para Inspecionar, escolha Cabeçalho único.
    Em Nome do campo Cabeçalho, insira um nome para o campo. Por exemplo: User-Agent.
    Em Tipo de correspondência, escolha Contém string.
    Em String para correspondência, insira o valor para que seu User-Agent específico bloqueie.
    (Opcional) Escolha uma Transformação de texto ou escolha Nenhuma.
  11. Em Ação, escolha Bloquear.
  12. Escolha Adicionar regra.
  13. (Opcional) Em Definir prioridade da regra, selecione sua regra e mova sua prioridade. As regras são processadas na ordem em que aparecem. Para obter mais informações, consulte Processing order of rules and rule groups in a web ACL.
  14. Escolha Salvar.

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos