Apresentando uma nova experiência de console para AWS WAF
Agora você pode usar a experiência atualizada para acessar a AWS WAF funcionalidade em qualquer lugar do console. Para obter mais detalhes, consulte Trabalhando com o console.
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á.
Usando transformações de texto em AWS WAF
Esta seção explica como fornecer transformações para AWS WAF serem aplicadas antes de inspecionar a solicitação.
Em declarações que buscam padrões ou definem restrições, você pode fornecer transformações para AWS WAF serem aplicadas antes de inspecionar a solicitação. A transformação reformata uma solicitação da Web para eliminar algumas das formatações incomuns que os invasores usam em uma tentativa de contornar o AWS WAF.
Quando você usa isso com a seleção do componente de solicitação de corpo JSON, o AWS WAF aplica suas transformações após analisar e extrair os elementos a serem inspecionados do JSON. Para saber mais, consulte Corpo JSON.
Se você fornecer mais de uma transformação, também definirá a ordem em que o AWS WAF deve aplicá-las.
WCUs: cada transformação de texto é de 10 WCUs.
A documentação do AWS WAF console e da API também fornece orientação para essas configurações nos seguintes locais:
-
Criador de regras no console: Transformação de texto. Essa opção está disponível quando você usa componentes de solicitação.
-
Conteúdo da instrução da API:
TextTransformations
Opções para transformações de texto
Cada listagem de transformação mostra as especificações do console e da API seguidas pela descrição.
- Base64 decode –
BASE64_DECODE -
AWS WAF decodifica uma Base64-encoded string.
- Base64 decode extension –
BASE64_DECODE_EXT -
AWS WAF decodifica uma Base64-encoded string, mas usa uma implementação tolerante que ignora caracteres que não são válidos.
- Command line –
CMD_LINE -
Esta opção mitiga situações em que os atacantes podem estar injetando um comando de linha de comando do sistema operacional e estão usando formatação incomum para disfarçar todo o comando ou parte dele.
Use essa opção para executar as seguintes transformações:
-
Excluir os seguintes caracteres:
\ " ' ^ -
Excluir espaços antes os seguintes caracteres:
/ ( -
Substituir os seguintes caracteres por um espaço:
, ; -
Substituir vários espaços por um espaço
-
Converter as letras maiúsculas,
A-Z, em minúsculas,a-z
-
- Command line Unix –
CMD_LINE_UNIX -
Essa opção atenua situações em que os invasores podem estar injetando um comando de linha de comando do sistema operacional Unix ou Linux e usando uma formatação incomum para disfarçar parte ou todo o comando.
Use essa opção para executar as seguintes transformações:
-
Excluir os seguintes caracteres:
\ " ' -
Substitua os seguintes caracteres por um espaço: tab
\t(ASCII 9), nova linha\n(ASCII 10), carriage return (ASCII 13), tab vertical\r(ASCII 11) e formfeed\v(ASCII 12)\f -
Substituir vários espaços por um espaço
-
Remova os espaços à esquerda e à direita
-
Converter as letras maiúsculas,
A-Z, em minúsculas,a-z
-
- Command line Windows –
CMD_LINE_WIN -
Essa opção atenua situações em que os invasores podem estar injetando uma linha de PowerShell comando ou comando do sistema operacional Windows e usando uma formatação incomum para disfarçar parte ou todo o comando.
Use essa opção para executar as seguintes transformações:
-
Excluir os seguintes caracteres:
" ' ^ ` -
Exclua sequências de continuação de linha circunflexo, um cursor seguido por uma nova linha
\nou por um retorno de carro e uma nova linha, como uma única unidade\r\n -
Substitua os seguintes caracteres por um espaço: tab
\t(ASCII 9), nova linha\n(ASCII 10), carriage return (ASCII 13), tab vertical\r(ASCII 11) e formfeed\v(ASCII 12)\f -
Substituir vários espaços por um espaço
-
Remova os espaços à esquerda e à direita
-
Converter as letras maiúsculas,
A-Z, em minúsculas,a-z -
Substitua barras invertidas consecutivas por uma única barra invertida. As barras invertidas únicas são preservadas, de modo que os caminhos do Windows, como caminhos UNC
c:\windows\system32\cmd.exee caminhos UNC, permaneçam intactos.
-
- Compress whitespace –
COMPRESS_WHITE_SPACE -
AWS WAF comprime o espaço em branco substituindo vários espaços por um espaço e substituindo os seguintes caracteres por um caractere de espaço (ASCII 32):
-
Quebra de página (ASCII 12)
-
Tabulação (ASCII 9)
-
Nova linha (ASCII 10)
-
Retorno de carro (ASCII 13)
-
Tabulação vertical (ASCII 11)
-
Non-breaking espaço (ASCII 160)
-
- CSS decode –
CSS_DECODE -
AWS WAF decodifica caracteres que foram codificados usando as regras de escape do CSS 2.x.
syndata.html#charactersEssa função utiliza até dois bytes no processo de decodificação e, portanto, pode ajudar a descobrir caracteres ASCII codificados com CSS que normalmente não seriam codificados. Ela também é útil para combater a evasão, que é uma combinação de barra invertida e caracteres não hexadecimais. Por exemplo,ja\vascriptparajavascript. - Escape sequences decode –
ESCAPE_SEQ_DECODE -
AWS WAF decodifica as seguintes sequências de escape ANSI C:
\a,,\b,\f,\n,\r,,\t\v\\\?,\xHH(hexadecimal)\'\", (octal).\0OOOAs codificações que não são válidas permanecem na saída. - Hex decode –
HEX_DECODE -
AWS WAF decodifica uma sequência de caracteres hexadecimais em um binário.
- HTML entity decode –
HTML_ENTITY_DECODE -
AWS WAF substitui os caracteres representados em formato hexadecimal
&#xhhhh;ou decimal pelos caracteres correspondentes.&#nnnn;AWS WAF substitui os seguintes HTML-encoded caracteres por caracteres não codificados. Essa lista usa codificação HTML em minúsculas, mas o tratamento não diferencia maiúsculas de minúsculas, por exemplo,
&QuOt;e"são tratados da mesma forma.HTML-encoded personagem
substituído por…
""&&<<>> ou espaço incondicional, decimal 160

\n, decimal 10	\t, decimal 9{ou{{|,|ou||}ou}}!!##$$&percent;ou%%'\(())*ou**++,,..//::;;==??˜ou˜~−-[ou[[\\\]ou]]&hat;^_ou&underbar;_`ou`` - JS decode –
JS_DECODE -
AWS WAF decodifica sequências de JavaScript escape. Se um código
\uHHHHestiver no intervalo de código ASCII de largura total deFF01-FF5E, o byte maior será utilizado para detectar e ajustar o byte menor. Caso contrário, somente o byte menor será utilizado, e o byte maior será zerado, causando uma possível perda de informações. - JS decode extended –
JS_DECODE_EXT -
AWS WAF decodifica sequências de JavaScript escape como
JS_DECODE, mas usa uma implementação tolerante para que os caminhos dos arquivos do Microsoft Windows não sejam alterados.JS_DECODE_EXTdifere doJS_DECODEseguinte:-
Decodifique os escapes
\\,,\/\', e\"removendo a barra invertida e mantendo o caractere subsequente. -
Preserve os escapes de um único caractere
\a\b,\f,\n,,\r\t, e\vmantendo a barra invertida e o caractere subsequente. -
Preserve qualquer outra sequência de
\Cescape não reconhecida (por exemplo,\dou\w) mantendo a barra invertida e o caractere subsequente, para que os caminhos de arquivo do Windows, como\defaulte,\windowsnão sejam alterados.
-
- Lowercase –
LOWERCASE -
AWS WAF converte letras maiúsculas () em minúsculas (a-zA-Z).
- MD5 –
MD5 -
AWS WAF calcula um hash MD5 a partir dos dados na entrada. O hash calculado está em um formato binário bruto.
- None –
NONE -
AWS WAF inspeciona a solicitação da web conforme recebida, sem nenhuma transformação de texto.
- Normalize path –
NORMALIZE_PATH -
AWS WAF normaliza a string de entrada removendo várias barras, autorreferências de diretório e referências anteriores de diretório que não estão no início da entrada.
- Normalize path Windows –
NORMALIZE_PATH_WIN -
AWS WAF converte caracteres de barra invertida em barras dianteiras e, em seguida, processa a string resultante usando a transformação.
NORMALIZE_PATH - Remove comments characters –
REMOVE_COMMENTS_CHAR -
AWS WAF remove caracteres de comentários comuns da entrada: /*, */, -- e #.
- Remove nulls –
REMOVE_NULLS -
AWS WAF remove todos os
NULLbytes da entrada. - Remove whitespace –
REMOVE_WHITESPACE -
AWS WAF remove todos os caracteres de espaço em branco da entrada.
- Replace comments –
REPLACE_COMMENTS -
AWS WAF substitui cada ocorrência de um C-style comentário (/*... */) por um único espaço. Ele não comprime várias ocorrências consecutivas. Substitui comentários sem término por um espaço (ASCII 0x20). Isso não altera o encerramento independente de um comentário (*/).
- Replace nulls –
REPLACE_NULLS -
AWS WAF substitui cada
NULLbyte na entrada pelo caractere de espaço (ASCII 0x20). - SHA256 –
SHA256 -
AWS WAF calcula um SHA-256 hash a partir dos dados na entrada. O hash calculado está em um formato binário bruto.
- SQL hex decode –
SQL_HEX_DECODE -
AWS WAF decodifica dados hexadecimais do SQL. Por exemplo, AWS WAF decodifica (
0x414243) para (ABC). - Trim –
TRIM -
AWS WAF remove os espaços em branco dos lados esquerdo e direito da entrada.
- Trim left –
TRIM_LEFT -
AWS WAF remove os espaços em branco do lado esquerdo da entrada.
- Trim right –
TRIM_RIGHT -
AWS WAF remove os espaços em branco do lado direito da entrada.
- Uppercase –
UPPERCASE -
AWS WAF converte todas as letras minúsculas (a-z) em maiúsculas (). A-Z
- URL decode –
URL_DECODE -
AWS WAF decodifica um URL-encoded valor.
- URL decode Unicode –
URL_DECODE_UNI -
Tipo
URL_DECODE, mas com suporte para Microsoft-specific%ucodificação. Se o código estiver no intervalo de código ASCII de largura total deFF01-FF5E, o byte maior será utilizado para detectar e ajustar o byte menor. Caso contrário, somente o byte menor será utilizado, e o byte maior será zerado. - UTF8 to Unicode –
UTF8_TO_UNICODE -
AWS WAF converte todas as sequências de UTF-8 caracteres em Unicode. Isso ajuda a normalizar a entrada e a minimizar falsos positivos e falso-negativos para idiomas diferentes do inglês.