Vorgeschlagene Adaptive Protection-Regeln automatisch bereitstellen

Dieses Dokument enthält Konfigurationsschritte für die automatische Bereitstellung des die von Adaptive Protection generiert werden. Wenn Sie die automatische Regelbereitstellung aktivieren möchten, müssen Sie eine Platzhalterregel mit den folgenden Werten erstellen:

  • Übereinstimmungsausdruck: evaluateAdaptiveProtectionAutoDeploy()
  • Aktion: Beliebig
  • Priorität: beliebig Es wird empfohlen, für einen legitimen Traffic mit hoher Priorität eine explizite allow-Regel mit einer höheren Priorität festzulegen als Ihre anderen Regeln.

Wenn Sie vor Ihrem externen Application Load Balancer einen Upstream-Proxy verwenden, z. B. Drittanbieter-CDNs konfigurieren, können Sie die Platzhalterregel so konfigurieren, für die IP-Adresse des ursprünglichen Clients von einem oder mehreren angegebenen Headern. Wenn Sie diese Vorschaufunktion verwenden möchten, konfigurieren Sie die Option userIpRequestHeaders[] im Feld advancedOptionsConfig. Weitere Informationen finden Sie in der Ressourcenreferenz ComputeSecurityPolicy.

Beispiele für Platzhalterregeln

Die folgenden Befehle sind Beispiel-Platzhalterregeln für Sicherheitsrichtlinien namens POLICY_NAME, die jeweils eine andere Regelaktion enthalten. Sie können diese Regeln einer vorhandenen Sicherheitsrichtlinie hinzufügen oder eine neue Richtlinie erstellen. Mehr zum Erstellen von Sicherheitsrichtlinien erfahren Sie unter Google Cloud Armor-Sicherheitsrichtlinien konfigurieren.

Schädlichen Traffic blockieren

Bei dieser Beispielregel wird für Anfragen, die von Adaptive Protection als Angriffs-Traffic erkannt werden, true zurückgegeben. Google Cloud Armor wendet die Blockierung Aktion für die angreifende Anfrage ausführen:

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action deny-403

Schädlichen Traffic an eine reCAPTCHA-Aufgabe weiterleiten

Mit dieser Beispielregel wird Traffic weitergeleitet, den Adaptive Protection als schädlich für eine reCAPTCHA-Aufgabe:

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action redirect \
    --redirect-type google-recaptcha

Ratenbegrenzung für schädlichen Traffic

In diesem Beispiel wird die Google Cloud Armor-Geschwindigkeitsbegrenzung auf Traffic angewendet, der von Adaptive Protection als schädlich eingestuft wird:

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action throttle \
    --rate-limit-threshold-count 500 \
    --rate-limit-threshold-interval-sec 120 \
    --conform-action allow \
    --exceed-action deny-404 \
    --enforce-on-key ip

Parameter für die automatische Bereitstellung von Adaptive Protection konfigurieren

Sie können die Schwellenwerte für die automatische Bereitstellung von Regeln konfigurieren, indem Sie die folgenden Parametern. Wenn Sie den Wert für einen Parameter nicht festlegen, verwendet Google Cloud Armor den Standardwert:

  • Lastgrenzwert: Während eines informierten Angriffs identifiziert Adaptive Protection neue Angreifer nur, wenn die Last des angegriffenen Back-End-Dienstes überschreitet diesen Grenzwert. Außerdem werden Regeln nur dann automatisch für Benachrichtigungen bereitgestellt, wenn die Last des angegriffenen Backend-Dienstes diesen Grenzwert überschreitet.

    • Standardwert: 0.8
  • Konfidenzgrenzwert: Regeln werden nur automatisch für Benachrichtigungen zu potenziellen Angriffen mit Konfidenzwerten bereitgestellt, die diesen Grenzwert überschreiten.

    • Standardwert: 0.5
  • Betroffener Basisgrenzwert: Regeln werden nur automatisch bereitgestellt, wenn die geschätzte Auswirkung auf den Basistraffic aus der vorgeschlagenen Risikominderung unter diesem Grenzwert liegt.

    • Standardwert: 0.01 %
  • Ablauf festgelegt: Google Cloud Armor beendet die Anwendung der Aktion im nach Ablauf dieses Zeitraums automatisch für einen identifizierten Angreifer bereitgestellt. Die Regel wird weiterhin auf neue Anfragen angewendet.

    • Standardwert: 7200 Sekunden

Mit dem folgenden Beispielbefehl können Sie Ihre Sicherheitsrichtlinie aktualisieren, um nicht standardmäßigen Schwellenwerten für die automatische Bereitstellung. Ersetzen Sie NAME durch den Namen Ihrer Sicherheitsrichtlinie und die übrigen Variablen durch die gewünschten Werte für Ihre Richtlinie.

gcloud beta compute security-policies update NAME [
    --layer7-ddos-defense-auto-deploy-load-threshold LOAD_THRESHOLD
    --layer7-ddos-defense-auto-deploy-confidence-threshold CONFIDENCE_THRESHOLD
    --layer7-ddos-defense-auto-deploy-impacted-baseline-threshold IMPACTED_BASELINE_THRESHOLD
    --layer7-ddos-defense-auto-deploy-expiration-sec EXPIRATION_SEC
]

Logging

Logs, die durch Regeln generiert werden, die automatisch mit Adaptive Protection bereitgestellt werden, die folgenden zusätzlichen Felder:

  • autoDeployed: Nachdem Sie die automatische Regelbereitstellung konfiguriert haben, wird jedes Benachrichtigungsprotokoll das Adaptive Protection generiert, enthält das boolesche Feld autoDeployed, das angibt, ob eine automatische Verteidigung ausgelöst wurde.
  • adaptiveProtection.autoDeployAlertId: wenn Adaptive Protection eine Aktion als Teil einer automatischen Verteidigung eines Ersuchens handelt, enthält das das zusätzliche adaptiveProtection.autoDeployAlertId-Feld, das die Benachrichtigungs-ID. Dieses Feld wird unter enforcedSecurityPolicy angezeigt oder previewSecurityPolicy, je nachdem, ob die Sicherheitsrichtlinie in im Vorschaumodus.

Informationen zum Aufrufen von Anfragelogs finden Sie unter Anfrage-Logging. Die Der folgende Screenshot zeigt ein Beispiel für einen adaptiven Schutz Logeintrag mit den autoDeployed und adaptiveProtection.autoDeployAlertId .

Beispielprotokoll für Adaptive Protection
Beispielprotokoll für Adaptive Protection (auf vergrößern)

Beschränkungen

  • Adaptive Protection ist nur für Back-End-Sicherheitsrichtlinien verfügbar, die mit Back-End-Diensten verknüpft sind, die über einen externen Application Load Balancer bereitgestellt werden. Adaptive Protection ist für externe Proxy-Network Load Balancer nicht verfügbar.