Lidando com componentes de solicitação da Web de tamanho grande em AWS WAF - AWS WAF, AWS Firewall Manager, e AWS Shield Advanced

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Lidando com componentes de solicitação da Web de tamanho grande em AWS WAF

AWS WAF não suporta a inspeção de conteúdos muito grandes para o corpo, cabeçalhos ou cookies dos componentes da solicitação da web. O serviço host subjacente tem limites de contagem e tamanho para o que ele encaminha AWS WAF para inspeção. Por exemplo, o serviço de hospedagem não envia mais de 200 cabeçalhos para AWS WAF, portanto, para uma solicitação da web com 205 cabeçalhos, não é AWS WAF possível inspecionar os últimos 5 cabeçalhos.

Quando AWS WAF permite que uma solicitação da Web prossiga para seu recurso protegido, toda a solicitação da Web é enviada, incluindo qualquer conteúdo que esteja fora dos limites de contagem e tamanho que AWS WAF pudemos inspecionar.

Limites de tamanho de inspeção de componentes

Os limites de tamanho de inspeção de componentes são os seguintes:

  • Bodye JSON Body — Para Application Load Balancer and AWS AppSync, AWS WAF pode inspecionar os primeiros 8 KB do corpo de uma solicitação. Pois CloudFront, o API Gateway, o Amazon Cognito, o App Runner e o Verified Access, por padrão, AWS WAF podem inspecionar os primeiros 16 KB e você pode aumentar o limite até 64 KB na sua configuração de ACL da web. Para ter mais informações, consulte Gerenciando os limites de tamanho da inspeção corporal.

  • Headers— AWS WAF pode inspecionar no máximo os primeiros 8 KB (8.192 bytes) dos cabeçalhos da solicitação e no máximo os primeiros 200 cabeçalhos. O conteúdo está disponível para inspeção AWS WAF até o primeiro limite atingido.

  • Cookies— AWS WAF pode inspecionar no máximo os primeiros 8 KB (8.192 bytes) dos cookies de solicitação e no máximo os primeiros 200 cookies. O conteúdo está disponível para inspeção AWS WAF até o primeiro limite atingido.

Opções de tratamento de tamanho grande para suas instruções de regras

Ao escrever uma instrução de regra que inspeciona um desses tipos de componentes de solicitação, você especifica como lidar com componentes de tamanho grande. O tratamento de tamanho excessivo diz AWS WAF o que fazer com uma solicitação da Web quando o componente da solicitação que a regra inspeciona está acima dos limites de tamanho.

As opções para o tratamento de tamanhos acima do limitesão as seguintes:

  • Continue— Inspecione o componente da solicitação normalmente de acordo com os critérios de inspeção da regra. AWS WAF inspecionará o conteúdo do componente da solicitação que está dentro dos limites de tamanho.

  • Match— Trate a solicitação da web como se correspondesse à declaração da regra. AWS WAF aplica a ação da regra à solicitação sem avaliá-la de acordo com os critérios de inspeção da regra.

  • No match— Trate a solicitação da web como se não correspondesse à declaração da regra sem avaliá-la de acordo com os critérios de inspeção da regra. AWS WAF continua sua inspeção da solicitação da web usando o resto das regras na ACL da web, como faria com qualquer regra não correspondente.

No AWS WAF console, você precisa escolher uma dessas opções de manuseio. Fora do console, a opção padrão é Continue.

Se você usar a opção Match em uma regra que tenha sua ação definida como Block, a regra bloqueará uma solicitação cujo componente inspecionado seja muito grande. Com qualquer outra configuração, a disposição final da solicitação depende de vários fatores, como a configuração das outras regras em sua web ACL e a configuração de ação padrão da web ACL.

Tratamento de tamanho grande em grupos de regras que você não possui

As limitações de tamanho e contagem de componentes se aplicam a todas as regras que você usa na sua web ACL. Isso inclui todas as regras que você usa, mas não gerencia, em grupos de regras gerenciadas e em grupos de regras que são compartilhados com você por outra conta.

Quando você usa um grupo de regras que você não gerencia, o grupo de regras pode ter uma regra que inspeciona um componente de solicitação limitado, mas que não processa conteúdos de tamanho grande da maneira que você precisa que eles sejam tratados. Para obter informações sobre como as regras AWS gerenciadas gerenciam componentes de grande porte, consulteAWS Lista de grupos de regras de regras gerenciadas. Para obter informações sobre outros grupos de regras, pergunte ao seu provedor de grupos de regras.

Diretrizes para gerenciar componentes de tamanho grande em sua web ACL

A maneira como você lida com componentes de tamanho grande na sua web ACL pode depender de vários fatores, como o tamanho esperado do conteúdo do componente da solicitação, o tratamento padrão da solicitação da sua web ACL e como outras regras na sua web ACL correspondem e tratam as solicitações.

As diretrizes gerais para gerenciar componentes de tamanho grande de solicitações da web são as seguintes:

  • Se você precisar permitir algumas solicitações com conteúdo de componente de tamanho grande, se possível, adicione regras para permitir explicitamente somente essas solicitações. Priorize essas regras para que elas sejam executadas antes de qualquer outra regra na web ACL que inspecione os mesmos tipos de componentes. Com essa abordagem, você não poderá usá-la AWS WAF para inspecionar todo o conteúdo dos componentes de tamanho grande que você permite passar para seu recurso protegido.

  • Para todas as outras solicitações, você pode impedir a passagem de bytes adicionais bloqueando as solicitações que ultrapassam o limite:

    • Suas regras e grupos de regras:Nas regras que inspecionam componentes com limites de tamanho, configure o tratamento de tamanho grande para bloquear solicitações que ultrapassem o limite. Por exemplo, se sua regra bloquear solicitações com conteúdo de cabeçalho específico, defina o tratamento de tamanho grande para corresponder às solicitações com conteúdo de cabeçalho grande. Como alternativa, se sua web ACL bloquear solicitações por padrão e sua regra permitir conteúdos de cabeçalho específicos, configure o tratamento de tamanho grande da regra para não corresponder a nenhuma solicitação com conteúdo de cabeçalho de tamanho grande.

    • Grupos de regras que você não gerencia:Para evitar que grupos de regras que você não gerencia permitam componentes de solicitação de tamanho grande, você pode adicionar uma regra separada que inspecione o tipo de componente da solicitação e bloqueie as solicitações que ultrapassam os limites. Priorize a regra em sua web ACL para que ela seja executada antes dos grupos de regras. Por exemplo, você pode bloquear solicitações com conteúdo do corpo grande antes que qualquer uma das regras de inspeção do corpo seja executada na web ACL. O procedimento a seguir descreve como adicionar esse tipo de regra.

Para adicionar uma regra que bloqueie conteúdos grandes
  1. Ao criar ou editar sua web ACL, nas configurações de regras, escolha Adicionar regras, Adicionar minhas próprias regras e grupos de regras, Criador de regras e Editor visual de regras. Para obter orientação sobre como criar ou editar uma web ACL, consulte Trabalho com :web ACLs.

  2. Insira um nome para sua regra e deixe a configuração Tipo em Regra normal.

  3. Altere as seguintes configurações de correspondência de seus padrões:

    1. Em Instrução, para Inspecionar, abra a lista suspensa e escolha o componente de solicitação da web de que você precisa, seja Corpo, Cabeçalhos ou Cookies.

    2. Para Tipo de correspondência, escolha Tamanho maior que.

    3. Em Tamanho, digite um número que seja pelo menos o tamanho mínimo para o tipo de componente. Para cabeçalhos e cookies, digite8192. Em Application Load Balancer ou AWS AppSync web ACLs, para corpos, digite. 8192 Para corpos em CloudFront API Gateway, Amazon Cognito, App Runner ou Verified Access web ACLs, se você estiver usando o limite padrão de tamanho corporal, digite. 16384 Caso contrário, digite o limite de tamanho do corpo que você definiu para sua ACL da web.

    4. Para Tratamento de tamanhos grandes, selecione Corresponder.

  4. Em Ação, selecione Bloquear.

  5. Escolha Adicionar regra.

  6. Depois de adicionar a regra, na página Definir prioridade da regra, mova-a acima de qualquer regra ou grupo de regras em sua web ACL que inspecione o mesmo tipo de componente. Isso lhe dá uma configuração de prioridade numérica mais baixa, o que faz com que AWS WAF seja avaliado primeiro. Para ter mais informações, consulte Ordem de processamento de regras e grupos de regras em uma web ACL.