Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden von Texttransformationen in AWS WAF
In diesem Abschnitt wird erklärt, wie Sie Transformationen für bereitstellen AWS WAF vor der Prüfung des Antrags einen Antrag zu stellen.
In Anweisungen, die nach Mustern suchen oder Beschränkungen festlegen, können Sie Transformationen für angeben AWS WAF vor der Prüfung des Antrags einen Antrag zu stellen. Bei einer Transformation wird eine Webanforderung neu formatiert, um einige der ungewöhnlichen Formatierungen zu beseitigen, mit denen Angreifer versuchen, sie zu umgehen AWS WAF.
Wenn Sie dies zusammen mit der Auswahl der Komponente „JSONBody Request“ verwenden, AWS WAF wendet Ihre Transformationen an, nachdem Sie die zu untersuchenden Elemente analysiert und extrahiert haben. JSON Weitere Informationen finden Sie unter JSONKörper.
Wenn Sie mehr als eine Transformation angeben, legen Sie auch die Reihenfolge für fest AWS WAF um sie anzuwenden.
WCUs— Jede Texttransformation ist WCUs 10.
Das Tool AWS WAF Die Konsole und die API Dokumentation enthalten außerdem Anleitungen zu diesen Einstellungen an den folgenden Stellen:
-
Rule Builder in der Konsole – Text transformation (Texttransformation). Diese Option ist verfügbar, wenn Sie Anforderungskomponenten verwenden.
-
APIInhalt der Erklärung —
TextTransformations
Optionen für Texttransformationen
Jede Transformationsliste zeigt die Konsole und die API Spezifikationen, gefolgt von der Beschreibung.
- Base64 decode –
BASE64_DECODE
-
AWS WAF dekodiert eine Base64-kodierte Zeichenfolge.
- Base64 decode extension –
BASE64_DECODE_EXT
-
AWS WAF dekodiert eine Base64-kodierte Zeichenfolge, verwendet jedoch eine fehlerverzeihende Implementierung, die ungültige Zeichen ignoriert.
- Command line –
CMD_LINE
-
Diese Option entschärft Situationen, in denen Angreifer möglicherweise einen Befehlszeilenbefehl des Betriebssystems eingeben und ungewöhnliche Formatierungen verwenden, um den Befehl ganz oder teilweise zu verschleiern.
Verwenden Sie diese Option, um die folgenden Transformationen durchzuführen:
-
Löschen der folgenden Zeichen:
\ " ' ^
-
Löschen von Leerzeichen vor den folgenden Zeichen:
/ (
-
Ersetzen der folgenden Zeichen durch ein Leerzeichen:
, ;
-
Ersetzen mehrerer Leerzeichen durch ein Leerzeichen
-
Großbuchstaben (
A-Z
) in Kleinbuchstaben (a-z
) umwandeln
-
- Compress whitespace –
COMPRESS_WHITE_SPACE
-
AWS WAF komprimiert Leerzeichen, indem mehrere Leerzeichen durch ein Leerzeichen und die folgenden Zeichen durch ein Leerzeichen (32) ersetzt werden: ASCII
-
Formfeed (12) ASCII
-
Registerkarte (ASCII9)
-
Neue Zeile (ASCII10)
-
Beförderung und Rückgabe (ASCII13)
-
Vertikale Lasche (ASCII11)
-
Sicherer Speicherplatz (ASCII160)
-
- CSS decode –
CSS_DECODE
-
AWS WAF dekodiert Zeichen, die mit CSS 2.x-Escape-Regeln codiert wurden.
syndata.html#characters
Diese Funktion verwendet bei der Dekodierung bis zu zwei Byte, sodass sie dabei helfen kann, ASCII Zeichen aufzudecken, die mit einer CSS Kodierung codiert wurden, die normalerweise nicht codiert werden würde. Sie ist auch nützlich, um eine Umgehung zu verhindern, also eine Kombination aus einem Rückwärtsschrägstrich und nicht-hexadezimalen Zeichen. Beispielsweiseja\vascript
fürjavascript
. - Escape sequences decode –
ESCAPE_SEQ_DECODE
-
AWS WAF dekodiert die folgenden ANSI C-Escape-Sequenzen:
\a
,,,\b
,\f
,,\n
,\r
,,\t
,\v
\\
,\xHH
(hexadezimal)\?
\'
\"
, (oktal).\0OOO
Ungültige Codierungen verbleiben in der Ausgabe. - Hex decode –
HEX_DECODE
-
AWS WAF dekodiert eine Folge von Hexadezimalzeichen in eine Binärdatei.
- HTML entity decode –
HTML_ENTITY_DECODE
-
AWS WAF ersetzt Zeichen, die im Hexadezimalformat
&#xhhhh;
oder Dezimalformat dargestellt werden, durch die entsprechenden Zeichen.&#nnnn;
AWS WAF ersetzt die folgenden HTML -codierten Zeichen durch unkodierte Zeichen. Diese Liste verwendet KleinbuchstabenHTML, aber bei der Behandlung wird beispielsweise
&QuOt;
nicht zwischen Groß- und Kleinschreibung unterschieden und sie werden gleich behandelt."
HTML-codiertes Zeichen
ersetzt durch...
"
"
&
&
<
<
>
>
oder 
geschütztes Leerzeichen, Dezimalzahl 160


\n
, Dezimalzahl 10	
\t
, Dezimalzahl 9{
oder{
{
|
,|
oder|
|
}
oder}
}
!
!
#
#
$
$
&percent;
oder%
%
'
\
(
(
)
)
*
oder*
*
+
+
,
,
.
.
/
/
:
:
;
;
=
=
?
?
˜
oder˜
~
−
-
[
oder[
[
\
\\
]
oder]
]
&hat;
^
_
oder&underbar;
_
`
oder`
`
- JS decode –
JS_DECODE
-
AWS WAF dekodiert JavaScript Escape-Sequenzen. Wenn sich ein
\uHHHH
Code im ASCII Codebereich mit voller Breite von befindetFF01-FF5E
, wird das höhere Byte verwendet, um das niedrigere Byte zu erkennen und anzupassen. Wenn nicht, wird nur das niedrigere Byte verwendet und das höhere Byte wird auf Null gesetzt, was zu einem möglichen Datenverlust führt. - Lowercase –
LOWERCASE
-
AWS WAF wandelt Großbuchstaben (A-Z) in Kleinbuchstaben (a-z) um.
- MD5 –
MD5
-
AWS WAF berechnet einen MD5 Hash aus den Daten in der Eingabe. Der berechnete Hash liegt in einer rohen binären Form vor.
- None –
NONE
-
AWS WAF überprüft die Webanforderung so, wie sie empfangen wurde, ohne Texttransformationen.
- Normalize path –
NORMALIZE_PATH
-
AWS WAF normalisiert die Eingabezeichenfolge, indem mehrere Schrägstriche, Verzeichnis-Selbstverweise und Verzeichnisrückverweise, die nicht am Anfang der Eingabe stehen, entfernt werden.
- Normalize path Windows –
NORMALIZE_PATH_WIN
-
AWS WAF konvertiert Backslash-Zeichen in Schrägstriche und verarbeitet dann die resultierende Zeichenfolge mithilfe der Transformation.
NORMALIZE_PATH
- Remove nulls –
REMOVE_NULLS
-
AWS WAF entfernt alle
NULL
Byte aus der Eingabe. - Replace comments –
REPLACE_COMMENTS
-
AWS WAF ersetzt jedes Vorkommen eines Kommentars im C-Stil (/*... */) durch ein einzelnes Leerzeichen. Mehrere aufeinanderfolgende Vorkommen werden nicht komprimiert. Es ersetzt unterbrochene Kommentare durch ein Leerzeichen (0x20). ASCII Eigenständige Beendigungen von Kommentaren (*/) werdem nicht geändert.
- Replace nulls –
REPLACE_NULLS
-
AWS WAF ersetzt jedes
NULL
Byte in der Eingabe durch das Leerzeichen (ASCII0x20). - SQL hex decode –
SQL_HEX_DECODE
-
AWS WAF dekodiert SQL Hex-Daten. Zum Beispiel AWS WAF dekodiert (
0x414243
) nach (ABC
). - URL decode –
URL_DECODE
-
AWS WAF dekodiert einen URL -codierten Wert.
- URL decode Unicode –
URL_DECODE_UNI
-
Wie
URL_DECODE
, aber mit Unterstützung für Microsoft-spezifische%u
-Kodierung. Wenn sich der Code im ASCII Codebereich mit voller Breite von befindetFF01-FF5E
, wird das höhere Byte verwendet, um das niedrigere Byte zu erkennen und anzupassen. Andernfalls wird nur das niedrigere Byte verwendet und das höhere Byte wird auf Null gesetzt. - UTF8 to Unicode –
UTF8_TO_UNICODE
-
AWS WAF konvertiert alle UTF -8 Zeichenfolgen in Unicode. Dies trägt zur Normalisierung der Eingabe bei und minimiert Falsch-Positives und Falsch-Negatives für nicht-englische Sprachen.