Ti presentiamo una nuova esperienza di console per AWS WAF
Ora puoi utilizzare l'esperienza aggiornata per accedere alle AWS WAF funzionalità in qualsiasi punto della console. Per maggiori dettagli, consulta Lavorare con la console.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo delle trasformazioni di testo in AWS WAF
Questa sezione spiega come fornire trasformazioni da applicare prima AWS WAF di esaminare la richiesta.
Nelle dichiarazioni che cercano modelli o stabiliscono vincoli, è possibile fornire trasformazioni da applicare prima di AWS WAF esaminare la richiesta. Una trasformazione riformatta una richiesta Web per eliminare alcune formattazioni insolite utilizzate da utenti malintenzionati nel tentativo di escludere AWS WAF.
Quando lo usi con la selezione del componente JSON body request, AWS WAF applica le tue trasformazioni dopo aver analizzato ed estratto gli elementi da ispezionare dal JSON. Per ulteriori informazioni, consulta Corpo JSON.
Se si forniscono più trasformazioni, si imposta anche l'ordine utilizzato da AWS WAF per applicarle.
WCU: ogni trasformazione di testo è composta da 10 WCU.
La documentazione della AWS WAF console e dell'API fornisce inoltre indicazioni per queste impostazioni nelle seguenti posizioni:
-
Generatore di regole sulla console: trasformazione del testo. Questa opzione è disponibile quando utilizzi componenti di richiesta.
-
Contenuto della dichiarazione API —
TextTransformations
Opzioni per trasformazioni del testo
Ogni elenco di trasformazione mostra le specifiche della console e dell'API seguite dalla descrizione.
- Base64 decode –
BASE64_DECODE -
AWS WAF decodifica una Base64-encoded stringa.
- Base64 decode extension –
BASE64_DECODE_EXT -
AWS WAF decodifica una Base64-encoded stringa, ma utilizza un'implementazione tollerante che ignora i caratteri non validi.
- Command line –
CMD_LINE -
Questa opzione attenua le situazioni in cui gli aggressori potrebbero iniettare un comando da riga di comando del sistema operativo e utilizzare una formattazione insolita per mascherare parte o tutto il comando.
Utilizza questa opzione per eseguire le seguenti trasformazioni:
-
Eliminare i seguenti caratteri:
\ " ' ^ -
Eliminare gli spazi prima dei seguenti caratteri:
/ ( -
Sostituire i seguenti caratteri con uno spazio:
, ; -
Sostituire più spazi con uno spazio
-
Convertire lettere maiuscole,
A-Z, in minuscole,a-z
-
- Command line Unix –
CMD_LINE_UNIX -
Questa opzione attenua le situazioni in cui gli aggressori potrebbero iniettare un comando da riga di comando del sistema operativo Unix o Linux e utilizzare una formattazione insolita per mascherare parte o tutto il comando.
Utilizza questa opzione per eseguire le seguenti trasformazioni:
-
Eliminare i seguenti caratteri:
\ " ' -
Sostituisci i seguenti caratteri con uno spazio: tab
\t(ASCII 9), newline (ASCII 10), carriage return\n(ASCII 13), tab verticale (ASCII 11) e\rformfeed (ASCII 12)\v\f -
Sostituire più spazi con uno spazio
-
Rimuovi gli spazi iniziali e finali
-
Convertire lettere maiuscole,
A-Z, in minuscole,a-z
-
- Command line Windows –
CMD_LINE_WIN -
Questa opzione attenua le situazioni in cui gli aggressori potrebbero iniettare una riga di comando o un comando del sistema operativo Windows e utilizzare una formattazione insolita per mascherare parte o tutto il PowerShell comando.
Utilizza questa opzione per eseguire le seguenti trasformazioni:
-
Eliminare i seguenti caratteri:
" ' ^ ` -
Elimina le sequenze di continuazione della riga con accento circonflesso, un accento circonflesso seguito da una nuova riga o da un ritorno a capo e una nuova riga, come una singola unità
\n\r\n -
Sostituisci i seguenti caratteri con uno spazio: tab
\t(ASCII 9), newline (ASCII 10), carriage return\n(ASCII 13), vertical tab (ASCII 11) e\rformfeed (ASCII 12)\v\f -
Sostituire più spazi con uno spazio
-
Rimuovi gli spazi iniziali e finali
-
Convertire lettere maiuscole,
A-Z, in minuscole,a-z -
Sostituisci le barre rovesciate consecutive con una singola barra rovesciata. Le barre rovesciate singole vengono mantenute, quindi i percorsi Windows come
c:\windows\system32\cmd.exee i percorsi UNC rimangono intatti.
-
- Compress whitespace –
COMPRESS_WHITE_SPACE -
AWS WAF comprime gli spazi bianchi sostituendo più spazi con uno spazio e sostituendo i seguenti caratteri con uno spazio (ASCII 32):
-
Formfeed (ASCII 12)
-
Scheda (ASCII 9)
-
Nuova riga (ASCII 10)
-
Ritorno al carrello (ASCII 13)
-
Scheda verticale (ASCII 11)
-
Non-breaking spazio (ASCII 160)
-
- CSS decode –
CSS_DECODE -
AWS WAF decodifica i caratteri codificati utilizzando le regole di escape CSS 2.x.
syndata.html#charactersQuesta funzione utilizza fino a due byte nel processo di decodifica, quindi può aiutare a scoprire caratteri ASCII che sono stati codificati usando la codifica CSS che in genere non verrebbe codificata. È utile anche per contrastare l'evasione, che è una combinazione di una barra rovesciata e caratteri non esadecimali. Ad esempio:ja\vascriptperjavascript. - Escape sequences decode –
ESCAPE_SEQ_DECODE -
AWS WAF decodifica le seguenti sequenze di escape ANSI C:
\a,,,,,,\b,,\f,\n,,\r\t\v,\xHH(esadecimale)\\\?\'\", (ottale).\0OOOLe codifiche non valide rimangono nell'output. - Hex decode –
HEX_DECODE -
AWS WAF decodifica una stringa di caratteri esadecimali in un binario.
- HTML entity decode –
HTML_ENTITY_DECODE -
AWS WAF sostituisce i caratteri rappresentati in formato
&#xhhhh;esadecimale o decimale con i caratteri corrispondenti.&#nnnn;AWS WAF sostituisce i seguenti caratteri con caratteri non codificati. HTML-encoded Questo elenco utilizza la codifica HTML minuscola, ma la gestione non fa distinzione tra maiuscole e minuscole, ad esempio e viene trattata allo stesso modo.
&QuOt;"HTML-encoded carattere
sostituito con...
""&&<<>> o spazio unificatore, decimale 160

\n, decimale 10	\t, decimale 9{o{{|,|o||}o}}!!##$$&percent;o%%'\(())*o**++,,..//::;;==??˜o˜~−-[o[[\\\]o]]&hat;^_o&underbar;_`o`` - JS decode –
JS_DECODE -
AWS WAF decodifica le sequenze di JavaScript escape. Se un
\uHHHHcodice è compreso nell'intervallo di codice ASCII a larghezza completa diFF01-FF5E, viene utilizzato il byte più alto per rilevare e regolare il byte inferiore. In caso contrario, viene utilizzato solo il byte più basso e il byte più alto viene azzerato, causando una possibile perdita di informazioni. - JS decode extended –
JS_DECODE_EXT -
AWS WAF decodifica le sequenze di JavaScript escape come
JS_DECODE, ma utilizza un'implementazione che perdona, in modo che i percorsi dei file di Microsoft Windows non vengano alterati.JS_DECODE_EXTdifferisce da quanto segue:JS_DECODE-
Decodifica gli escape
\\,\/\', e\"rimuovendo la barra rovesciata e mantenendo il carattere successivo. -
Conserva gli escape con un solo carattere
\a,,\b\f\n\r\t, e\vmantenendo sia la barra rovesciata che il carattere successivo. -
Conserva qualsiasi altra sequenza di
\Cescape non riconosciuta (ad esempio\do\w) mantenendo sia la barra rovesciata che il carattere successivo, in modo che i percorsi dei file di Windows come e non vengano alterati.\default\windows
-
- Lowercase –
LOWERCASE -
AWS WAF converte le lettere maiuscole () in minuscole (a-z)A-Z.
- MD5 –
MD5 -
AWS WAF calcola un hash MD5 dai dati in ingresso. L'hash calcolato è in una forma binaria grezza.
- None –
NONE -
AWS WAF ispeziona la richiesta web così come è stata ricevuta, senza alcuna trasformazione di testo.
- Normalize path –
NORMALIZE_PATH -
AWS WAF normalizza la stringa di input rimuovendo più barre, autoreferenze alle directory e riferimenti a ritroso di directory che non si trovano all'inizio dell'input.
- Normalize path Windows –
NORMALIZE_PATH_WIN -
AWS WAF converte i caratteri backslash in barre in avanti e quindi elabora la stringa risultante utilizzando la trasformazione.
NORMALIZE_PATH - Remove comments characters –
REMOVE_COMMENTS_CHAR -
AWS WAF rimuove i caratteri di commento più comuni dall'input: /*, */, -- e #.
- Remove nulls –
REMOVE_NULLS -
AWS WAF rimuove tutti i
NULLbyte dall'input. - Remove whitespace –
REMOVE_WHITESPACE -
AWS WAF rimuove tutti i caratteri di spazio bianco dall'input.
- Replace comments –
REPLACE_COMMENTS -
AWS WAF sostituisce ogni occorrenza di un C-style commento (/*... */) con un singolo spazio. Non comprime più occorrenze consecutive. Sostituisce i commenti non terminati con uno spazio (ASCII 0x20). Non modifica la chiusura autonoma di un commento (*/).
- Replace nulls –
REPLACE_NULLS -
AWS WAF sostituisce ogni
NULLbyte dell'input con il carattere spazio (ASCII 0x20). - SHA256 –
SHA256 -
AWS WAF calcola un SHA-256 hash dai dati in ingresso. L'hash calcolato è in una forma binaria grezza.
- SQL hex decode –
SQL_HEX_DECODE -
AWS WAF decodifica i dati esadecimali SQL. Ad esempio, AWS WAF decodifica da (
0x414243) a (ABC). - Trim –
TRIM -
AWS WAF rimuove gli spazi bianchi dal lato sinistro e destro dell'input.
- Trim left –
TRIM_LEFT -
AWS WAF rimuove gli spazi bianchi dal lato sinistro dell'input.
- Trim right –
TRIM_RIGHT -
AWS WAF rimuove gli spazi bianchi dal lato destro dell'input.
- Uppercase –
UPPERCASE -
AWS WAF converte tutte le lettere minuscole (a-z) in maiuscole (). A-Z
- URL decode –
URL_DECODE -
AWS WAF URL-encoded decodifica un valore.
- URL decode Unicode –
URL_DECODE_UNI -
Ad esempio
URL_DECODE, ma con il supporto per la Microsoft-specific%ucodifica. Se il codice è nell'intervallo di codice ASCII a larghezza intera diFF01-FF5E, allora il byte più alto viene utilizzato per rilevare e regolare il byte più basso. Altrimenti, viene utilizzato solo il byte più basso e il byte più alto viene azzerato. - UTF8 to Unicode –
UTF8_TO_UNICODE -
AWS WAF converte tutte le sequenze di UTF-8 caratteri in Unicode. Questo aiuta a normalizzare l'input e riduce al minimo i falsi positivi e i falsi negativi per le lingue diverse dall'inglese.