Signaturregelmuster

Sie können einer Signaturregel ein neues Muster hinzufügen oder ein vorhandenes Muster einer Signaturregel ändern, um eine Zeichenfolge oder einen Ausdruck anzugeben, der einen Aspekt des Angriffs charakterisiert, dem die Signatur entspricht. Um zu bestimmen, welche Muster ein Angriff zeigt, können Sie die Protokolle auf Ihrem Webserver untersuchen, Verbindungsdaten in Echtzeit beobachten oder die Zeichenfolge oder den Ausdruck aus einem Bericht eines Drittanbieters über den Angriff abrufen.

Achtung:

Jedes neue Muster, das Sie einer Signaturregel hinzufügen, befindet sich in einer UND- Beziehung zu den vorhandenen Mustern. Fügen Sie einer vorhandenen Signaturregel kein neues Muster hinzu, wenn ein potenzieller Angriff nicht mit allen Mustern übereinstimmt, um mit der Signatur übereinstimmen zu können.

Jedes Muster kann aus einer einfachen Zeichenfolge, einem regulären PCRE-Ausdruck oder dem integrierten SQL-Einspritz- oder siteübergreifenden Skriptmuster bestehen. Bevor Sie versuchen, ein Muster hinzuzufügen, das auf einem regulären Ausdruck basiert, sollten Sie sicherstellen, dass Sie reguläre Ausdrücke im PCRE-Format verstehen. PCRE-Ausdrücke sind komplex und leistungsstark. Wenn Sie nicht verstehen, wie sie funktionieren, können Sie unbeabsichtigt ein Muster erstellen, das zu etwas passt, das Sie nicht wollten (ein falsches Positiv) oder das nicht mit etwas übereinstimmt, das Sie wollten (ein falsches Negativ).

Wenn Sie mit regulären Ausdrücken im PCRE-Format noch nicht vertraut sind, können Sie die folgenden Ressourcen verwenden, um die Grundlagen zu lernen, oder um Hilfe zu einem bestimmten Problem zu erhalten:

Wenn Sie Nicht-ASCII-Zeichen in einem regulären Ausdruck des PCRE-Formats kodieren müssen, unterstützt die Citrix ADC Plattform die Kodierung von hexadezimalen UTF-8-Codes. Weitere Informationen finden Sie unter PCRE-Zeichenkodierungsformat.

So konfigurieren Sie ein Signaturregelmuster

  1. Navigieren Sie zu Sicherheit > Anwendungsfirewall > Signaturen .

  2. Wählen Sie im Detailbereich das Signaturobjekt aus, das Sie konfigurieren möchten, und klicken Sie dann auf Öffnen.

  3. Klicken Sie im Dialogfeld Signaturobjekt ändern in der Mitte des Bildschirms unterhalb des Fensters Gefilterte Ergebnisse entweder auf Hinzufügen, um eine Signaturregel zu erstellen, oder wählen Sie eine vorhandene Signaturregel aus, und klicken Sie auf Öffnen .

    Hinweis:

    Sie können nur Signaturregeln ändern, die Sie hinzugefügt haben. Sie können die Standardsignaturregeln nicht ändern.

    Je nach Aktion wird entweder das Dialogfeld Lokale Signaturregel hinzufügen oder das Dialogfeld Lokale Signaturregel ändern angezeigt. Beide Dialogfelder haben denselben Inhalt.

  4. Klicken Sie im Dialogfeld im Fenster Muster auf Hinzufügen, um ein neues Muster hinzuzufügen, oder wählen Sie ein vorhandenes Muster aus der Liste unter der Schaltfläche Hinzufügen aus, und klicken Sie auf Öffnen . Abhängig von Ihrer Aktion wird entweder das Dialogfeld Neues Signaturregelmuster erstellen oder das Dialogfeld Signaturregelmuster bearbeiten angezeigt. Beide Dialogfelder haben denselben Inhalt.

  5. Wählen Sie in der Dropdownliste Mustertyp den Verbindungstyp aus, mit dem das Muster übereinstimmen soll.

    • Wenn das Muster Anforderungselemente oder -features wie injiziertem SQL-Code, Angriffe auf Webformulare, siteübergreifende Skripte oder unangemessene URLs übereinstimmen soll, wählen Sie Anforderung.
    • Wenn das Muster darauf abzielt, Antwortelemente oder -funktionen wie Kreditkartennummern oder sichere Objekte abzugleichen, wählen Sie Antwort.
  6. Definieren Sie im Bereich Position die Elemente, die mit diesem Muster untersucht werden sollen.

    Der Bereich Speicherort beschreibt, welche Elemente der HTTP-Anforderung oder -Antwort auf dieses Muster untersucht werden sollen. Welche Auswahlmöglichkeiten im Bereich Position angezeigt werden, hängt vom gewählten Mustertyp ab. Wenn Sie als Mustertyp Anforderung gewählt haben, werden für HTTP-Anforderungen relevante Elemente angezeigt. Wenn Sie Antwort gewählt haben, werden für HTTP-Antworten relevante Elemente angezeigt.

    Wenn Sie einen Wert aus der Dropdownliste Bereich auswählen, ändern sich die übrigen Teile des Bereichs Standort interaktiv. Im Folgenden finden Sie alle Konfigurationselemente, die in diesem Abschnitt angezeigt werden können.

    • Gebiet

      Dropdownliste mit Elementen, die einen bestimmten Teil der HTTP-Verbindung beschreiben. Folgende Möglichkeiten stehen zur Auswahl:

      • HTTP_ANY. Alle Teile der HTTP-Verbindung.
      • HTTP_COOKIE. Alle Cookies in den HTTP-Request-Headern nach irgendwelchen Cookie-Transformationen durchgeführt werden. Hinweis: Sucht keine HTTP-Antwort Set-Cookie: Header.
      • HTTP_FORM_FIELD. Formularfelder und deren Inhalt, nach URL-Dekodierung, Prozentdekodierung und Entfernung von überschüssigen Leerzeichen. Mit dem<Location> Tag können Sie die Liste der zu durchsuchenden Formularfeldnamen weiter einschränken.
      • HTTP_HEADER. Die Werteteile des HTTP-Headers nach allen Cross-Site-Skript- oder URL-Dekodierungs-Transformationen.
      • HTTP_METHOD. Die HTTP-Anforderungsmethode.
      • HTTP_ORIGIN_URL. Die Ursprungs-URL eines Webformulars.
      • HTTP_POST_BODY. Der HTTP-Posttext und die darin enthaltenen Webformulardaten.
      • HTTP_RAW_COOKIE. Alle HTTP-Anforderungscookie, einschließlich des Namensbereichs Cookie:. Hinweis: Sucht keine HTTP-Antwort Set-Cookie: Header.
      • HTTP_RAW_HEADER. Der gesamte HTTP-Header mit einzelnen Headern, die durch Zeilenvorschubzeichen (n) oder Wagenrücklauf-/Zeilenvorschubzeichenfolgen (rn) getrennt sind.
      • HTTP_RAW_RESP_HEADER. Der gesamte Antwortheader, einschließlich der Namens- und Werteteile des Antwortheaders nach Abschluss der URL-Transformation und des vollständigen Antwortstatus. Wie bei HTTP_RAW_HEADER werden einzelne Header durch Zeilenvorschubzeichen (n) oder Wagenrücklauf-/Zeilenvorschubzeichenfolgen (rn) getrennt.
      • HTTP_RAW_SET_COOKIE. Der gesamte Set-Cookie-Header, nachdem URL-Transformationen durchgeführt wurden Hinweis: URL-Transformation kann sowohl die Domäne als auch den Pfadbereich des Set-Cookie-Headers ändern.
      • HTTP_RAW_URL. Die gesamte Anforderungs-URL, bevor URL-Transformationen durchgeführt werden, einschließlich aller Abfrage- oder Fragmentteile.
      • HTTP_RESP_HEADER. Der Werteteil der vollständigen Antwort-Header, nachdem URL-Transformationen durchgeführt wurden.
      • HTTP_RESP_BODY. Der HTTP-Antworttext
      • HTTP_SET_COOKIE. Alle Set-Cookie -Header in den HTTP-Antwort-Headern.
      • HTTP_STATUS_CODE. Der HTTP-Statuscode.
      • HTTP_STATUS_MESSAGE. Die HTTP-Statusmeldung.
      • HTTP_URL. Der Werteteil der URL in den HTTP-Headern, ausgenommen alle Abfrage- oder Fragmentports, nach der Konvertierung in den UTF-*-Zeichensatz, URL-Dekodierung, Strippen von Leerzeichen und Konvertierung relativer URLs in absolute. Enthält keine HTML-Entity-Dekodierung.
    • URL

      Untersucht alle URLs, die in den durch die Einstellung Bereich angegebenen Elementen gefunden wurden. Wählen Sie eine der folgenden Einstellungen aus.

      • Any. Überprüft alle URLs.
      • Literal. Überprüft URLs, die eine Literalzeichenfolge enthalten. Nachdem Sie Literal ausgewählt haben, wird ein Textfeld angezeigt. Geben Sie die gewünschte Literalzeichenfolge in das Textfeld ein.
      • PCRE. Überprüft URLs, die einem regulären Ausdruck im PCRE-Format entsprechen. Nachdem Sie diese Auswahl ausgewählt haben, wird das Fenster für reguläre Ausdrücke angezeigt. Geben Sie den regulären Ausdruck in das Fenster ein. Sie können die Regex-Token verwenden, um allgemeine reguläre Ausdruckselemente am Cursor einzufügen, oder Sie können auf Regex-Editor klicken, um das Dialogfeld Editor für Reguläre Ausdrücke anzuzeigen, das mehr Unterstützung beim Erstellen des gewünschten regulären Ausdrucks bietet.
      • Expression. Überprüft URLs, die mit einem Citrix ADC Standardausdruck übereinstimmen.
    • Field Name

      Untersucht alle Formularfeldnamen, die in den durch die Auswahl Bereich angegebenen Elementen gefunden werden.

      • Any. Überprüft alle URLs.
      • Literal. Überprüft URLs, die eine Literalzeichenfolge enthalten. Nachdem Sie Literal ausgewählt haben, wird ein Textfeld angezeigt. Geben Sie die gewünschte Literalzeichenfolge in das Textfeld ein.
      • PCRE. Überprüft URLs, die einem regulären Ausdruck im PCRE-Format entsprechen. Nachdem Sie diese Auswahl ausgewählt haben, wird das Fenster für reguläre Ausdrücke angezeigt. Geben Sie den regulären Ausdruck in das Fenster ein. Sie können die Regex-Token verwenden, um allgemeine reguläre Ausdruckselemente am Cursor einzufügen, oder Sie können auf Regex-Editor klicken, um das Dialogfeld Editor für Reguläre Ausdrücke anzuzeigen, das mehr Unterstützung beim Erstellen des gewünschten regulären Ausdrucks bietet.
      • Ausdruck. Überprüft URLs, die mit einem Citrix ADC Standardausdruck übereinstimmen.
  7. Definieren Sie im Bereich Muster das Muster. Ein Muster ist eine literale Zeichenfolge oder ein regulärer Ausdruck im PCRE-Format, der das Muster definiert, das Sie übereinstimmen möchten. Der Musterbereich enthält die folgenden Elemente:

    • Zuordnen Eine Dropdownliste mit Suchmethoden, die Sie für die Signatur verwenden können. Diese Liste unterscheidet sich je nachdem, ob der Mustertyp Request oder Response ist.

Anforderungsübereinstimmungstypen PCRE. Ein regulärer Ausdruck im PCRE-Format. HINWEIS: Wenn Sie PCRE wählen, sind die Werkzeuge für reguläre Ausdrücke unterhalb des Pattern-Fensters aktiviert. Diese Werkzeuge sind für die meisten anderen Arten von Mustern nicht nützlich.

  • Injektion. Weist die Web App Firewall an, nach injiziertem SQL am angegebenen Speicherort zu suchen. Das Pattern-Fenster verschwindet, da die Web App Firewall bereits über die Muster für die SQL-Injektion verfügt.

  • CrossSiteScripting. Weist die Web App Firewall an, am angegebenen Speicherort nach websiteübergreifenden Skripten zu suchen. Das Pattern-Fenster wird ausgeblendet, da die Web App Firewall bereits über die Muster für siteübergreifende Skripte verfügt.

  • Ausdruck. Ein Ausdruck in der Citrix ADC Standardausdruckssprache. Dies ist dieselbe Ausdruckssprache, die zum Erstellen von Web App Firewall Richtlinien und anderen Richtlinien auf der Citrix ADC Appliance verwendet wird. Obwohl die Citrix ADC Ausdruckssprache ursprünglich für Richtlinienregeln entwickelt wurde, handelt es sich um eine hochflexible Allzwecksprache, die auch zum Definieren eines Signaturmusters verwendet werden kann.

Wenn Sie Expression auswählen, wird der Citrix ADC Ausdruckseditor unterhalb des Musterfensters angezeigt. Weitere Informationen zum Ausdruckseditor und Anweisungen zur Verwendung finden Sie unterSo fügen Sie eine Firewallregel (Ausdruck) mithilfe des Dialogfelds Ausdruck hinzufügen hinzu

Antwort-Übereinstimmungstypen:

  • Wortwörtlich. Eine Literalzeichenfolge

  • PCRE. Ein regulärer Ausdruck im PCRE-Format.

Hinweis:

Wenn Sie PCRE wählen, sind die Werkzeuge für reguläre Ausdrücke unterhalb des Pattern-Fensters aktiviert. Diese Werkzeuge sind für die meisten anderen Arten von Mustern nicht nützlich.

  • Kreditkarte. Ein integriertes Muster, das einer der sechs unterstützten Kreditkartennummern entspricht.

Hinweis:

Der Ausdruck-Übereinstimmungstyp ist für Antwort-Signaturen nicht verfügbar.

  • Musterfenster (unbeschriftet)

    Geben Sie in diesem Fenster das Muster ein, das Sie abgleichen möchten, und geben Sie zusätzliche Daten ein.

    • Literal. Geben Sie im Textbereich die Zeichenfolge ein, nach der Sie suchen möchten.
    • CRE. Geben Sie den regulären Ausdruck in den Textbereich ein. Verwenden Sie den Regex-Editor, um weitere Unterstützung beim Erstellen des gewünschten regulären Ausdrucks zu erhalten, oder die Regex-Token, um allgemeine reguläre Ausdruckselemente am Cursor einzufügen. Um UTF-8-Zeichen zu aktivieren, klicken Sie auf UTF-8.
    • Ausdruck. Geben Sie den erweiterten Citrix ADC Ausdruck im Textbereich ein. Verwenden Sie Präfix, um den ersten Begriff in Ihrem Ausdruck auszuwählen, oder Operator, um gemeinsame Operatoren am Cursor einzufügen. Klicken Sie auf Hinzufügen, um das Dialogfeld Ausdruck hinzufügen zu öffnen, um weitere Unterstützung beim Erstellen des gewünschten regulären Ausdrucks zu erhalten. Klicken Sie auf Auswerten, um den erweiterten Ausdrucksauswerter zu öffnen, um festzustellen, welche Auswirkungen Ihr Ausdruck hat.
    • Offset. Die Anzahl der Zeichen, die übersprungen werden sollen, bevor sie mit diesem Muster übereinstimmen. Sie verwenden dieses Feld, um eine Zeichenfolge an einem anderen Punkt als dem ersten Zeichen zu untersuchen.
    • Tiefe. Wie viele Zeichen vom Startpunkt auf Übereinstimmungen untersucht werden sollen. Verwenden Sie dieses Feld, um die Suche einer großen Zeichenfolge auf eine bestimmte Anzahl von Zeichen zu beschränken.
    • Min-Länge. Die zu durchsuchende Zeichenfolge muss mindestens die angegebene Anzahl von Bytes in der Länge sein. Kürzere Zeichenfolgen werden nicht übereinstimmend.
    • Max-Länge. Die zu durchsuchende Zeichenfolge darf nicht länger als die angegebene Anzahl von Bytes in der Länge sein. Längere Saiten werden nicht übereinstimmend.
    • Suchmethode. Ein Kontrollkästchen mit der Bezeichnung Fastmatch. Sie können Fastmatch nur für ein Literalmuster aktivieren, um die Leistung zu verbessern.

8. Klicken Sie auf OK.

  1. Wiederholen Sie die vorherigen vier Schritte, um zusätzliche Muster hinzuzufügen oder zu ändern.
  2. Wenn Sie mit dem Hinzufügen oder Ändern von Mustern fertig sind, klicken Sie auf OK, um die Änderungen zu speichern und zum Bereich Signaturen zurückzukehren.

Achtung:

Bis Sie im Dialogfeld Lokale Signaturregel hinzufügen oder Lokale Signaturregel ändern auf OK klicken, werden die Änderungen nicht gespeichert. Schließen Sie eines dieser Dialogfelder nicht, ohne auf OK zu klicken, es sei denn, Sie möchten die Änderungen verwerfen.