Como o AWS WAF lida com inspeções de corpo em solicitações HTTP?

Última atualização: 2022-07-26

Como o AWS WAF lida com inspeções de corpo em solicitações HTTP?

Resolução

O AWS WAF inspeciona os primeiros 8 KB (8.192 bytes) do corpo da solicitação. Esse é um limite de serviço rígido e não pode ser alterado.

Por exemplo:

  • Se o corpo tiver 5.000 bytes: todo o conteúdo do corpo poderá ser inspecionado pelo AWS WAF.
  • Se o corpo tiver 8.500 bytes: o conteúdo dos bytes de 1 a 8.192 bytes será inspecionado pelo AWS WAF. Todo o conteúdo de 8.193 bytes a 8.500 bytes não será inspecionado.

Esse limite é importante ao configurar regras porque o AWS WAF não pode verificar o conteúdo do corpo após 8.192 bytes. Qualquer padrão de injeção de XSS ou SQL de ataque não será detectado após 8.192 bytes.

Para se proteger contra ataques nas porções do corpo não inspecionadas, use uma as seguintes opções:

Conjunto de regras básicas das Regras gerenciadas da AWS

A regra SizeRestrictions_body no Conjunto de regras básicas (CRS) das Regras gerenciadas pela AWS verifica o corpo das solicitação com mais de 8 KB (8.192 bytes). Corpos de solicitações com mais de 8 KB são bloqueados.

Regra de inspeção de corpo personalizada

Ao configurar uma regra de inspeção de corpo personalizada, você pode escolher a ação para lidar com solicitações muito grandes. Essa ação é aplicada quando o corpo da solicitação tem mais de 8.192 bytes.

Por exemplo, você configura uma regra personalizada com um corpo de solicitação que contém ataques de injeção de XSS e o corpo da solicitação tem 9.000 bytes. Você pode escolher entre as seguintes ações para lidar com tamanho excessivo:

  • Continue (Continuar): o AWS WAF inspeciona os bytes de 1 a 8.192 bytes do conteúdo do corpo em busca de ataques de XSS. O conteúdo restante de 8.193 a 9.000 bytes não é inspecionado.
  • Match: (Corresponder) o AWS WAF marca essa solicitação como contendo um ataque de XSS e executa a ação da regra (ALLOW [PERMITIR] ou BLOCK [BLOQUEAR]). Não importa se o corpo da solicitação inclui um padrão de ataque de XSS ou não.
  • Not match: (Não corresponder) o AWS WAF marca essa solicitação como não contendo um ataque de XSS, independentemente do conteúdo do corpo da solicitação.

Ao usar o conjunto de regras básicas gerenciadas pela AWS, solicitações legítimas com um corpo com mais de 8.192 bytes podem ser bloqueadas pela regra SizeRestrictions_Body. Você pode criar uma regra de permissão para permitir explicitamente a solicitação.

Por exemplo, se um cliente tiver uma solicitação legítima do URL “/upload”, você poderá configurar as regras como se segue:

1.    Na ACL da Web, substitua a ação SizeRestrictions por count (contar) do grupo de regras.

2.    Adicione uma regra de correspondência de rótulos à ACL da Web após o Conjunto de regras básicas. Use a seguinte lógica na regra:

Has a label “awswaf:managed:aws:core-rule-set:SizeRestrictions_Body”
AND
    NOT (URL path contains “/upload”)
Action: BLOCK

Usando a configuração anterior, solicitações com o URL "/upload" que tenham um corpo com mais de 8.192 bytes são permitidas. Qualquer solicitação que não seja desse URL será bloqueada.


Este artigo ajudou?


Precisa de ajuda com faturamento ou suporte técnico?