Arbeiten mit Zeichenfolgen-Übereinstimmungsbedingungen - AWS WAFAWS Firewall Manager, und AWS Shield Advanced

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.

Arbeiten mit Zeichenfolgen-Übereinstimmungsbedingungen

Anmerkung

Dies ist die AWS WAF klassische Dokumentation. Sie sollten diese Version nur verwenden, wenn Sie AWS WAF Ressourcen wie Regeln und Web-ACLs AWS WAF vor November 2019 erstellt und diese noch nicht auf die neueste Version migriert haben. Informationen zum Migrieren Ihrer Ressourcen finden Sie unter Migrieren Sie Ihre AWS WAF Classic-Ressourcen zu AWS WAF.

Die neueste Version von AWS WAF finden Sie unter. AWS WAF

Wenn Sie Webanforderungen basierend auf darin enthaltenen Zeichenfolgen zulassen oder blockieren möchten, erstellen Sie eine oder mehrere Zeichenfolgen-Übereinstimmungsbedingungen. Eine Bedingung für die Übereinstimmung mit einer Zeichenfolge identifiziert die Zeichenfolge, nach der Sie suchen möchten, und den Teil der Webanforderungen, wie z. B. einen angegebenen Header oder die Abfragezeichenfolge, den AWS WAF Classic nach der Zeichenfolge durchsuchen soll. Im weiteren Verlauf des Prozesses können Sie beim Erstellen einer Web-ACL angeben, ob Anforderungen, die die Zeichenfolge enthalten, zugelassen oder blockiert werden sollen.

Erstellen einer Zeichenfolgen-Übereinstimmungsbedingung

Wenn Sie Bedingungen für den Abgleich von Zeichenfolgen erstellen, geben Sie Filter an, die die Zeichenfolge, nach der Sie suchen möchten, und den Teil der Webanfragen identifizieren, den AWS WAF Classic nach dieser Zeichenfolge durchsuchen soll, z. B. den URI oder die Abfragezeichenfolge. Sie können einer Zeichenfolgen-Übereinstimmungsbedingung mehrere Filter hinzufügen oder eine separate Bedingung für jeden Filter erstellen. So wirkt sich jede Konfiguration auf das Verhalten von AWS WAF Classic aus:

  • Ein Filter pro Übereinstimmungsbedingung für Zeichenfolgen — Wenn Sie einer Regel die separaten Bedingungen für den Abgleich von Zeichenfolgen hinzufügen und die Regel einer Web-ACL hinzufügen, müssen Webanfragen alle Bedingungen erfüllen, damit AWS WAF Classic Anfragen auf der Grundlage der Bedingungen zulässt oder blockiert.

    Angenommen Sie erstellen zwei Bedingungen. Eine Bedingung stimmt mit Webanforderungen überein, die den Wert BadBot im User-Agent-Header enthalten. Die andere stimmt mit Webanforderungen überein, die den Wert BadParameter in Abfragezeichenfolgen enthalten. Wenn Sie beide Bedingungen zu derselben Regel hinzufügen und die Regel zu einer Web-ACL hinzufügen, erlaubt oder blockiert AWS WAF Classic Anfragen nur, wenn sie beide Werte enthalten.

  • Mehr als ein Filter pro Übereinstimmungsbedingung für eine Zeichenfolge — Wenn Sie einer Regel eine Bedingung für die Übereinstimmung mit Zeichenfolgen hinzufügen, die mehrere Filter enthält, und die Regel einer Web-ACL hinzufügen, muss eine Webanforderung nur einem der Filter in der Bedingung für die Übereinstimmung mit Zeichenfolgen entsprechen, damit AWS WAF Classic die Anfrage auf der Grundlage einer Bedingung zulässt oder blockiert.

    Angenommen, Sie erstellen eine Bedingung statt zwei, und die eine Bedingung enthält dieselben zwei Filter wie im vorherigen Beispiel. AWS WAF Classic erlaubt oder blockiert Anfragen, wenn sie entweder BadBot im User-Agent Header oder BadParameter in der Abfragezeichenfolge enthalten sind.

Anmerkung

Wenn Sie einer Regel eine Bedingung für die Übereinstimmung mit Zeichenfolgen hinzufügen, können Sie AWS WAF Classic auch so konfigurieren, dass Webanfragen zugelassen oder blockiert werden, die nicht den Werten in der Bedingung entsprechen.

So erstellen Sie eine Zeichenfolgen-Übereinstimmungsbedingung
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS WAF Konsole unter https://console.aws.amazon.com/wafv2/.

    Wenn im Navigationsbereich die Option Zu AWS WAF Classic wechseln angezeigt wird, wählen Sie es aus.

  2. Wählen Sie im Navigationsbereich String and regex matching aus.

  3. Wählen Sie Create condition.

  4. Geben Sie die entsprechenden Filtereinstellungen an. Weitere Informationen finden Sie unter Werte, die Sie beim Erstellen oder Bearbeiten von Zeichenfolgen-Übereinstimmungsbedingungen angeben.

  5. Wählen Sie Add filter.

  6. Wenn Sie einen anderen Filter hinzufügen möchten, wiederholen Sie die Schritte 4 und 5.

  7. Wählen Sie nach dem Hinzufügen der Filter Erstellen aus.

Werte, die Sie beim Erstellen oder Bearbeiten von Zeichenfolgen-Übereinstimmungsbedingungen angeben

Beim Erstellen oder Aktualisieren einer Zeichenfolgen-Übereinstimmungsbedingung geben Sie die folgenden Werte an:

Name

Geben Sie einen Namen für die Zeichenfolgen-Abgleichsbedingung ein. Der Name darf nur alphanumerische Zeichen (A-Z, a-z, 0-9) oder die folgenden Sonderzeichen enthalten: _-!"#`+*},./ . Sie können den Namen einer Bedingung nicht mehr ändern, nachdem Sie sie erstellt haben.

Typ

Wählen Sie String match.

Teil der Anforderung, nach dem gefiltert werden soll

Wählen Sie den Teil jeder Webanfrage aus, den AWS WAF Classic auf die Zeichenfolge überprüfen soll, die Sie im Feld Passender Wert angegeben haben:

Header

Ein angegebener Anforderungs-Header, wie z. B. der User-Agent- oder Referer-Header. Wenn Sie Header auswählen, geben Sie den Namen des Headers im Feld Header an.

HTTP-Methode

Die HTTP-Methode, die den Typ des Vorgangs angibt, den die Anfrage vom Ursprung ausführen soll. CloudFront unterstützt die folgenden Methoden: DELETEGET,HEAD,OPTIONS,PATCH,POST, undPUT.

Abfragezeichenfolge

Der Teil einer URL nach einem ?-Zeichen, sofern vorhanden.

URI

Der URI-Pfad der Anfrage, der die Ressource identifiziert, /images/daily-ad.jpg z. B. Dies beinhaltet nicht die Abfragezeichenfolge oder die Fragmentkomponenten der URI. Informationen dazu finden Sie unter Uniform Resource Identifier (URI): Generic Syntax.

Sofern keine Transformation angegeben ist, ist ein URI nicht normalisiert und wird genauso geprüft, wie er im Rahmen der Anfrage vom Client AWS empfangen wird. Eine Transformation formatiert die URI wie vorgegeben neu.

Fließtext

Der Teil einer Anforderung, der zusätzliche Daten enthält, die Sie als HTTP-Anforderungstext an Ihren Webserver senden möchten, wie z. B. Formulardaten.

Anmerkung

Wenn Sie für den Wert Teil der Anforderung, nach dem gefiltert werden soll, Body wählen, untersucht AWS WAF Classic nur die ersten 8192 Byte (8 KB). Um Anfragen zuzulassen oder zu blockieren, deren Hauptteil länger als 8192 Byte ist, können Sie eine Größenbeschränkungsbedingung erstellen. (AWS WAF Classic ermittelt die Länge des Hauptteils aus den Anforderungsheadern.) Weitere Informationen finden Sie unter Arbeiten mit Größenbeschränkungsbedingungen.

Einzelner Abfrageparameter (ausschließlich Wert)

Jeder Parameter, den Sie als Teil der Abfragezeichenfolge definiert haben. Wenn die URL beispielsweise „www.xyz.com? UserName =abc& SalesRegion =seattle“ lautet, können Sie entweder dem Parameter oder einen Filter hinzufügen. UserNameSalesRegion

Wenn doppelte Parameter in der Abfragezeichenfolge enthalten sind, werden die Werte als "ODER" gewertet. Das heißt, dass auch nur einer der Werte ausreicht, um eine Übereinstimmung auszulösen. Beispiel: In der URL „www.xyz.com? SalesRegion =boston& SalesRegion =seattle“ löst entweder „boston“ oder „seattle“ im Feld Passender Wert eine Übereinstimmung aus.

Wenn Sie Einzelner Abfrageparamter (ausschließlich Wert) auswählen, legen Sie auch einen Abfrageparameternamen fest. Dies ist der Parameter in der Abfragezeichenfolge, den Sie überprüfen werden, z. B. oder. UserNameSalesRegion Die maximale Länge für den Abfrageparameternamen beträgt 30 Zeichen. Der Abfrageparametername berücksichtigt keine Groß- und Kleinschreibung. Wenn Sie beispielsweise den Namen des Query-Parameters angeben UserName, entspricht dies allen Varianten von UserName, z. B. UsERName und userName.

Alle Abfrageparameter (ausschließlich Werte)

Ähnlich wie Einzelner Abfrageparameter (nur Wert), überprüft AWS WAF Classic jedoch nicht den Wert eines einzelnen Parameters, sondern überprüft den Wert aller Parameter innerhalb der Abfragezeichenfolge auf den passenden Wert. Wenn die URL beispielsweise „www.xyz.com? UserName =abc& SalesRegion =seattle“ lautet und Sie Alle Abfrageparameter (nur Werte) auswählen, löst AWS WAF Classic eine Übereinstimmung aus, wenn der Wert von einem oder UserNameals abzugleichender Wert angegeben ist. SalesRegion

Header (nur wenn "Teil der Filter" auf "Header" festgelegt ist)

Wenn Sie in der Liste „Teil der Anforderung, nach der gefiltert werden soll“ die Option „Kopfzeile“ ausgewählt haben, wählen Sie eine Kopfzeile aus der Liste der allgemeinen Kopfzeilen aus, oder geben Sie den Namen einer Kopfzeile ein, die Classic untersuchen soll. AWS WAF

Übereinstimmungstyp

Wählen Sie in dem Teil der Anfrage, den AWS WAF Classic untersuchen soll, aus, wo die Zeichenfolge im Feld Abgleichender Wert erscheinen muss, damit sie diesem Filter entspricht:

Enthält

Die Zeichenfolge befindet sich an einer beliebigen Position innerhalb des angegebenen Anforderungsteils.

Enthält Wort

Der angegebene Teil der Webanforderungen muss Value to match enthalten und Value to match darf nur alphanumerische Zeichen oder Unterstriche (A-Z, a-z, 0-9 oder _) enthalten. Außerdem muss Value to match ein Wort sein und eines der folgenden Kriterien erfüllen:

  • Value to match entspricht genau dem Wert des angegebenen Teils der Webanforderung, wie zum Beispiel dem Wert eines Headers.

  • Value to match befindet sich am Anfang des angegebenen Teils der Webanforderung, gefolgt von einem Zeichen, das kein alphanumerisches Zeichen und kein Unterstrich (_) ist, z. B. BadBot;.

  • Value to match befindet sich am Ende des angegebenen Teils der Webanforderung, nach von einem Zeichen, das kein alphanumerisches Zeichen und kein Unterstrich (_) ist, z. B. ;BadBot.

  • Value to match befindet sich in der Mitte des angegebenen Teils der Webanforderung und es geht ein Zeichen voraus bzw. folgt ein Zeichen, das kein alphanumerisches Zeichen und kein Unterstrich (_) ist, z. B. -BadBot;.

Stimmt genau überein

Die Zeichenfolge und der Wert des angegebenen Teils der Anforderung sind identisch.

Beginnt mit

Die Zeichenfolge befindet sich am Anfang des angegebenen Teils der Anforderung.

Endet mit

Die Zeichenfolge befindet sich am Ende des angegebenen Teils der Anforderung.

Transformation

Eine Transformation formatiert eine Webanforderung neu, bevor AWS WAF Classic die Anfrage überprüft. Dadurch werden einige der ungewöhnlichen Formatierungen vermieden, die Angreifer in Webanfragen verwenden, um Classic zu umgehen AWS WAF .

Sie können nur einen einzigen Texttransformationstyp angeben.

Transformationen können die folgenden Vorgänge ausführen:

None

AWS WAF Classic führt keine Texttransformationen an der Webanforderung durch, bevor überprüft wird, ob die Zeichenfolge in Value übereinstimmt.

In Kleinbuchstaben konvertieren

AWS WAF Classic konvertiert Großbuchstaben (A-Z) in Kleinbuchstaben (a-z).

HTML-Dekodierung

AWS WAF Classic ersetzt HTML-kodierte Zeichen durch unkodierte Zeichen:

  • Ersetzt " durch &

  • Ersetzt   durch ein geschütztes Leerzeichen

  • Ersetzt &lt; durch <

  • Ersetzt &gt; durch >

  • Ersetzt Zeichen im Hexadezimalformat &#xhhhh; mit dem entsprechenden Zeichen

  • Ersetzt Zeichen im Dezimalformat &#nnnn; mit dem entsprechenden Zeichen

Leerzeichen normalisieren

AWS WAF Classic ersetzt die folgenden Zeichen durch ein Leerzeichen (Dezimalzahl 32):

  • \f, Zeilenvorschubzeichen, Dezimalzahl 12

  • \t, Tabulator, Dezimalzahl 9

  • \n, Zeilenumbruch, Dezimalzahl 10

  • \r, Wagenrücklauf, Dezimalzahl 13

  • \v, vertikaler Tabulator, Dezimalzahl 11

  • geschütztes Leerzeichen, Dezimalzahl 160

Diese Option ersetzt mehrere aufeinanderfolgende Leerzeichen durch 1 Leerzeichen.

Vereinfachen der Befehlszeile

Wenn Sie befürchten, dass Angreifer einen Befehlszeilen-Befehl des Betriebssystems einfügen und diesen Befehl ganz oder teilweise durch ungewöhnliche Formatierungen verbergen, verwenden Sie diese Option, um folgende Transformationen auszufü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

  • Konvertieren von Groß- (A-Z) in Kleinbuchstaben (a-z)

URL-Dekodierung

Dekodieren Sie eine URL-kodierte Anforderung.

Der Wert ist base64-kodiert

Aktivieren Sie dieses Kontrollkästchen, wenn der Wert in Value to match base64-kodiert ist. Verwenden Sie die base64-Kodierung, um nicht druckbare Zeichen wie z. B. Tabulatoren und Zeilenumbrüche anzugeben, die Angreifer in ihre Anforderungen aufnehmen.

Wert, der zugeordnet werden soll

Geben Sie den Wert an, nach dem AWS WAF Classic in Webanfragen suchen soll. Die maximale Länge beträgt 50 Byte. Wenn Sie den Wert mit der base64-Kodierung verschlüsseln, gilt das 50-Byte-Limit für den Wert vor der Kodierung.

Hinzufügen und Löschen von Filtern in einer Zeichenfolgen-Übereinstimmungsbedingung

Sie können einer Zeichenfolgen-Übereinstimmungsbedingung Filter hinzufügen oder daraus löschen. Um einen Filter zu ändern, fügen Sie einen neuen hinzu und löschen den alten.

So fügen Sie einer Zeichenfolgen-Übereinstimmungsbedingung Filter hinzu bzw. löschen sie
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS WAF Konsole unter https://console.aws.amazon.com/wafv2/.

    Wenn im Navigationsbereich die Option Zu AWS WAF Classic wechseln angezeigt wird, wählen Sie es aus.

  2. Wählen Sie im Navigationsbereich String and regex matching aus.

  3. Wählen Sie die Bedingung aus, die Sie Filtern hinzufügen oder daraus löschen möchten.

  4. Um Filter hinzuzufügen, führen Sie die folgenden Schritte aus:

    1. Wählen Sie Add filter.

    2. Geben Sie die entsprechenden Filtereinstellungen an. Weitere Informationen finden Sie unter Werte, die Sie beim Erstellen oder Bearbeiten von Zeichenfolgen-Übereinstimmungsbedingungen angeben.

    3. Wählen Sie Hinzufügen aus.

  5. Um Filter zu löschen, führen Sie die folgenden Schritte aus:

    1. Wählen Sie den Filter aus, den Sie löschen möchten.

    2. Wählen Sie Delete Filter.

Löschen von Zeichenfolgen-Übereinstimmungsbedingungen

Wenn Sie eine Zeichenfolgen-Übereinstimmungsbedingung löschen möchten, müssen Sie zuerst alle Filter in der Bedingung löschen und diese aus allen Regeln löschen, die sie verwenden. Dies wird im Folgenden beschrieben.

So löschen Sie eine Zeichenfolgen-Übereinstimmungsbedingung
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die AWS WAF Konsole unter https://console.aws.amazon.com/wafv2/.

    Wenn im Navigationsbereich die Option Zu AWS WAF Classic wechseln angezeigt wird, wählen Sie es aus.

  2. Entfernen Sie die Zeichenfolgen-Übereinstimmungsbedingung aus den Regeln, die sie verwenden:

    1. Wählen Sie im Navigationsbereich Regeln aus.

    2. Wählen Sie den Namen einer Regel aus, die die Zeichenfolgen-Übereinstimmungsbedingung verwendet, die Sie löschen möchten.

    3. Wählen Sie im rechten Bereich die Registerkarte Edit rule aus.

    4. Wählen Sie X neben der Bedingung, die Sie löschen möchten.

    5. Wählen Sie Aktualisieren.

    6. Wiederholen Sie die Schritte b und c für alle übrigen Regeln, die die Zeichenfolgen-Übereinstimmungsbedingung verwenden, die Sie löschen möchten.

  3. Entfernen Sie die Filter aus der Bedingung, die Sie löschen möchten:

    1. Wählen Sie im Navigationsbereich String and regex matching aus.

    2. Klicken Sie auf den Namen der Zeichenfolgen-Übereinstimmungsbedingung, die Sie löschen möchten.

    3. Aktivieren Sie im rechten Fenster das Kontrollkästchen neben Filter, um alle Filter auszuwählen.

    4. Wählen Sie Delete filter.

  4. Wählen Sie im Navigationsbereich String and regex matching aus.

  5. Wählen Sie im Bereich String and regex match conditions die Zeichenfolgen-Übereinstimmungsbedingung aus, die Sie löschen möchten.

  6. Wählen Sie Löschen aus, um diese Bedingung zu löschen.