Implementar automáticamente las reglas sugeridas de Protección adaptativa

En este documento se describen los pasos de configuración para desplegar automáticamente las reglas sugeridas que genera Protección adaptativa. Para habilitar la implementación automática de reglas, debe crear una regla de marcador de posición con los siguientes valores:

  • Expresión de concordancia: evaluateAdaptiveProtectionAutoDeploy()
  • Acción: cualquiera
  • Prioridad: cualquiera. Te recomendamos que definas una regla de permiso explícita con una prioridad más alta que el resto de las reglas para el tráfico legítimo de alta prioridad.

Si usa un proxy upstream delante de su balanceador de carga de aplicaciones externo, como una CDN de terceros, puede configurar la regla de marcador de posición para que coincida con las solicitudes en función de la dirección IP del cliente original de una o varias encabezados especificados. Para usar esta función de vista previa, configura la opción userIpRequestHeaders[] en el campo advancedOptionsConfig. Para obtener más información, consulta la referencia del recurso ComputeSecurityPolicy.

Ejemplo de reglas de marcadores de posición

Los siguientes comandos son reglas de ejemplo para las políticas de seguridad llamadas POLICY_NAME, cada una de las cuales incluye una acción de regla diferente. Puede añadir estas reglas a una política de seguridad que ya tenga o crear una nueva. Para obtener más información sobre cómo crear políticas de seguridad, consulta el artículo Configurar políticas de seguridad de Cloud Armor.

Bloquear tráfico malicioso

Esta regla de ejemplo se evalúa como true para las solicitudes que Protección adaptativa identifica como tráfico de ataque. Cloud Armor aplica la acción de bloqueo a la solicitud atacante:

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

Redirigir el tráfico malicioso a una prueba reCAPTCHA

Esta regla de ejemplo redirige el tráfico que Protección adaptativa identifica como malicioso a una prueba reCAPTCHA:

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

Limitar la frecuencia del tráfico malicioso

En este ejemplo se aplica la limitación de frecuencia de Cloud Armor al tráfico que Adaptive Protection identifica como malicioso:

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

Configurar los parámetros de implementación automática de Protección adaptativa

Puede configurar los umbrales para la implementación automática de reglas ajustando los siguientes parámetros. Si no define el valor de un parámetro, Cloud Armor usará el valor predeterminado.

  • Umbral de carga: durante un ataque alertado, Adaptive Protection identifica a los nuevos atacantes solo cuando la carga del servicio de backend que está sufriendo el ataque supera este umbral. Además, las reglas solo se implementan automáticamente para las alertas cuando la carga del servicio backend que está sufriendo un ataque supera este umbral.

    • Valor predeterminado: 0.8

  • Umbral de confianza: las reglas solo se despliegan automáticamente en las alertas sobre posibles ataques con puntuaciones de confianza superiores a este umbral.

    • Valor predeterminado: 0.5
  • Umbral de referencia afectado: las reglas solo se implementan automáticamente cuando el impacto estimado en el tráfico de referencia de la mitigación sugerida está por debajo de este umbral. impactedBaselineProportion y impactedbaselinePolicyProportion deben ser inferiores al umbral de referencia afectado.

    • Valor predeterminado: 0.01 (1%)
  • Tiempo de vencimiento definido: Cloud Armor deja de aplicar la acción de la regla desplegada automáticamente a un atacante identificado después de este periodo. La regla sigue funcionando con las nuevas solicitudes.

    • Valor predeterminado: 7200 segundos

Puede usar el siguiente comando de ejemplo para actualizar su política de seguridad y usar umbrales no predeterminados que se implementan automáticamente. Sustituye NAME por el nombre de tu política de seguridad y las variables restantes por los valores que quieras para tu política.

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
]

Almacenamiento de registros

Los registros generados por las reglas que se implementan automáticamente con Protección adaptativa tienen los siguientes campos adicionales:

  • autoDeployed: después de configurar la implementación automática de reglas, cada registro de alerta que genera Protección adaptativa tiene el campo booleano autoDeployed, que indica si se ha activado una defensa automática. Si autoDeployed tiene el valor true, significa que la regla de marcador de posición evaluateAdaptiveProtectionAutoDeploy() ya ha evaluado que los umbrales de confianza e impacto del ataque han superado los parámetros de implementación automática configurados. A continuación, el sistema empieza a monitorizar la carga dinámica. Una vez que la carga supera el umbral configurado, la regla se implementa automáticamente para mitigar el ataque.
  • adaptiveProtection.autoDeployAlertId: cada vez que Adaptive Protection toma medidas en una solicitud como parte de una defensa automática, el registro de solicitudes tiene el campo adicional adaptiveProtection.autoDeployAlertId, que registra el ID de alerta. Este campo aparece en enforcedSecurityPolicy o previewSecurityPolicy, según si la política de seguridad está en modo de vista previa.

Para ver los registros de solicitudes, consulta Usar registros de solicitudes. En la siguiente captura de pantalla se muestra un ejemplo de una entrada de registro de Adaptive Protection con los campos autoDeployed y adaptiveProtection.autoDeployAlertId.

Registro de ejemplo de Adaptive Protection.
Registro de ejemplo de Adaptive Protection (haz clic para ampliar).

Limitaciones

  • Adaptive Protection solo está disponible para las políticas de seguridad de backend asociadas a servicios de backend expuestos a través de un balanceador de carga de aplicaciones externo. Adaptive Protection no está disponible para los balanceadores de carga de red de proxy externo.