Vorkonfigurierte WAF-Regeln einrichten

Folgen Sie dieser Anleitung, um vorkonfigurierte WAF-Regeln (Web Application Firewall) von Google Cloud Armor einzurichten und anzupassen, um Ihre Anwendung vor Angriffen zu schützen. Wenn Sie mit vorkonfigurierten WAF-Regeln nicht vertraut sind, lesen Sie die Übersicht.

Vorkonfigurierte WAF-Regel einrichten

In diesem Abschnitt finden Sie vorkonfigurierte WAF-Regeln als Vorlagen, die Sie in die Google Cloud Console kopieren und an Ihren Anwendungsfall anpassen können. In jedem Beispielgcloud-Befehl wird eine Sicherheitsrichtlinie mit dem Namen POLICY_NAME und der Priorität PRIORITY konfiguriert.

Im ersten Beispiel wird eine Regel mit dem Namen RULE_NAME und der Empfindlichkeitsstufe SENSITIVITY eingerichtet. Dadurch werden alle Signaturen mit einer Empfindlichkeit von maximal SENSITIVITY aktiviert. Weitere Informationen zur Regelempfindlichkeit finden Sie unter Empfindlichkeitsstufe auswählen.

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': SENSITIVITY})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': SENSITIVITY})" \
    --action deny-403

Das zweite Beispiel ähnelt dem ersten, aber die Regelsignaturen SIGNATURE_1 und SIGNATURE_2 werden deaktiviert. Das bedeutet, dass diese beiden Signaturen nicht ausgewertet werden, wenn die WAF-Regel ausgewertet wird:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': SENSITIVITY, 'opt_out_rule_ids': ['SIGNATURE_1', 'SIGNATURE_2']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': SENSITIVITY, 'opt_out_rule_ids': ['SIGNATURE_1', 'SIGNATURE_2']})" \
    --action deny-403

Das dritte Beispiel ähnelt dem zweiten, aber anstatt zwei Signaturen zu deaktivieren, aktivieren Sie zwei Regelsignaturen. Sie können Regelsignaturen nur aktivieren, wenn Sie die Empfindlichkeitsstufe auf 0 festlegen:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': 0, 'opt_in_rule_ids': ['SIGNATURE_1', 'SIGNATURE_2']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('RULE_NAME', {'sensitivity': 0, 'opt_in_rule_ids': ['SIGNATURE_1', 'SIGNATURE_2']})" \
    --action deny-403

In allen vorherigen Beispielen wird nur ein Ausdruck pro Regel verwendet. Sie können Ausdrücke zwar mit dem logischen Operator || kombinieren, wir empfehlen jedoch, pro Regel nur einen Ausdruck zu verwenden, um die maximale Ausdrucksgröße nicht zu überschreiten.

Beispiele

In den Beispielen in diesem Abschnitt werden wichtige Aspekte beim Erstellen und Optimieren vorkonfigurierter WAF-Regeln hervorgehoben, einschließlich Empfindlichkeitsstufe und Ausnahmen für Signaturen. In allen Beispielbefehlen für gcloud wird eine Sicherheitsrichtlinie mit dem Namen POLICY_NAME und der Priorität PRIORITY erstellt.

Regel mit einer bestimmten Empfindlichkeitsstufe erstellen

In diesem Beispiel möchten Sie alle Signaturen in der WAF-Regel sqli-v33-stable mit einer Empfindlichkeitsstufe unter 4 verwenden. Daher erstellen Sie die Regel mit der Empfindlichkeitsstufe 3, die alle Signaturen mit einer Empfindlichkeitsstufe von 3 oder niedriger umfasst:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('sqli-v33-stable', {'sensitivity': 3})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('sqli-v33-stable', {'sensitivity': 3})" \
    --action deny-403

Regel erstellen, mit der eine oder mehrere Signaturen deaktiviert werden

In diesem Beispiel möchten Sie fast alle Signaturen auf den Empfindlichkeitsstufen 1 und 2 in der WAF-Regel xss-v33-stable verwenden, aber die Signatur owasp-crs-v030301-id941370-xss ausschließen, die nach globalen JavaScript-Variablen sucht. Daher erstellen Sie die Regel mit der Empfindlichkeitsstufe 2 und deaktivieren mit dem Argument opt_out_rule_ids die Signatur owasp-crs-v030301-id941370-xss:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 2, 'opt_out_rule_ids': ['owasp-crs-v030301-id941370-xss']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 2, 'opt_out_rule_ids': ['owasp-crs-v030301-id941370-xss']})" \
    --action deny-403

Wenn Sie zwei oder mehr Signaturen aus einer Regel ausschließen möchten, geben Sie eine durch Kommas getrennte Liste der Signaturen mit dem Argument opt_out_rule_ids an, z. B.:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 2, 'opt_out_rule_ids': ['owasp-crs-v030301-id941370-xss', 'owasp-crs-v030301-id941380-xss']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 2, 'opt_out_rule_ids': ['owasp-crs-v030301-id941370-xss', 'owasp-crs-v030301-id941380-xss']})" \
    --action deny-403

Regel erstellen, mit der eine oder mehrere Signaturen aktiviert werden

In diesem Beispiel möchten Sie nur die Signatur owasp-crs-v030001-id941150-xss aus der WAF-Regel xss-v33-stable verwenden. Die Signatur prüft auf nicht zulässige HTML-Attribute und hat die Empfindlichkeitsstufe 2. Daher erstellen Sie die Regel mit der Empfindlichkeitsstufe 0 und aktivieren mit dem Argument opt_in_rule_ids die Signatur owasp-crs-v030001-id941150-xss. Sie können Regelsignaturen nur aktivieren, wenn Sie die Empfindlichkeitsstufe auf 0 festlegen:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 0, 'opt_in_rule_ids': ['owasp-crs-v030301-id941150-xss']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 0, 'opt_in_rule_ids': ['owasp-crs-v030301-id941150-xss']})" \
    --action deny-403

Wenn Sie zwei oder mehr Signaturen aus einer Regel einschließen möchten, geben Sie im Argument opt_in_rule_ids eine durch Kommas getrennte Liste von Signaturen an, wie im folgenden Beispiel:

Console

Wählen Sie Erweiterter Modus aus und verwenden Sie dann den folgenden Beispielausdruck im Feld Abgleich:

evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 0, 'opt_in_rule_ids': ['owasp-crs-v030301-id941150-xss', 'owasp-crs-v030301-id941320-xss']})

gcloud

gcloud compute security-policies rules create PRIORITY \
    --security-policy POLICY_NAME  \
    --expression "evaluatePreconfiguredWaf('xss-v33-stable', {'sensitivity': 0, 'opt_in_rule_ids': ['owasp-crs-v030301-id941150-xss', 'owasp-crs-v030301-id941320-xss']})" \
    --action deny-403

Nächste Schritte