Un ataque de denegación de servicio distribuido (DSD) es un intento deliberado por parte de un actor hostil para interrumpir las operaciones de los sitios, sistemas y API expuestos públicamente con el objetivo de degradar la experiencia de los usuarios legítimos. Para las cargas de trabajo que usan balanceadores de cargas de red de transferencia externos, reenvío de protocolos o VMs con direcciones IP públicas, Google Cloud Armor ofrece las siguientes opciones para proteger los sistemas contra ataques de DSD:
- Protección estándar contra DSD de red: Protección básica siempre activa para el balanceador de cargas de red de transferencia externo, el reenvío de protocolos o las VMs con direcciones IP públicas. Esto se incluye en Google Cloud Armor Standard y no requiere ninguna suscripción adicional.
- Protección avanzada contra DSD de red: protecciones adicionales para los suscriptores de Cloud Armor Enterprise que usan balanceadores de cargas de red de transferencia externos, reenvío de protocolos o VMs con direcciones IP públicas. Para obtener más información sobre Cloud Armor Enterprise, consulta la descripción general de Cloud Armor Enterprise.
En este documento, se explica la diferencia entre la protección estándar y avanzada contra DSD de red, cómo funciona la protección avanzada contra DSD de red y cómo habilitarla.
Compara la protección estándar contra DSD de red y la protección avanzada
Usa la siguiente tabla para comparar las características de protección estándar y avanzada contra DSD de red.
Función | Protección estándar contra DSD de red | Protección avanzada contra DSD de red |
---|---|---|
Tipo de extremo protegido |
|
|
Aplicación de la regla de reenvío | ||
Supervisión y alertas de ataques siempre activas | ||
Mitigaciones de ataques dirigidos | ||
Telemetría de mitigación |
Cómo funciona la protección contra DSD de la red
La protección contra DSD de la red estándar siempre está habilitada. No es necesario realizar ninguna acción para habilitarla.
La protección contra DSD de red avanzada se configura por región. En lugar de asociar la política de seguridad perimetral de la red con uno o más grupos de destino, instancias de destino, servicios de backend o instancias con direcciones IP externas, la asocias con un servicio de seguridad perimetral de la red en una región en particular. Cuando lo habilitas para esa región, Google Cloud Armor proporciona detección y mitigación siempre activas de ataques volumétricos dirigidos para el balanceador de cargas de red de transferencia externo, el reenvío de protocolos y las VMs con direcciones IP públicas en esa región. Solo puedes aplicar la protección avanzada contra DSD de red a los proyectos inscritos en Cloud Armor Enterprise.
Cuando configuras la protección avanzada contra DSD de red, primero debes crear una política de seguridad del tipo CLOUD_ARMOR_NETWORK
en la región que elijas. Luego, debes actualizar la política de seguridad para habilitar la protección avanzada contra DSD de red. Por último, debes crear un servicio de seguridad de red perimetral, un recurso al que puedes adjuntar políticas de seguridad de tipo CLOUD_ARMOR_NETWORK
. Adjuntar la política de seguridad al servicio de seguridad perimetral de red habilita la protección avanzada contra DSD de red en todos los extremos aplicables de la región que elegiste.
La protección avanzada contra DSD de red mide tu tráfico de referencia para mejorar su rendimiento de mitigación. Cuando habilitas la protección avanzada contra DSD de red, se produce un período de entrenamiento de 24 horas antes de que esta función desarrolle un modelo de referencia confiable y pueda usar su entrenamiento para mejorar sus mitigaciones. Cuando finaliza el período de entrenamiento, la protección avanzada contra DSD de red aplica técnicas de mitigación adicionales según el tráfico histórico.
Activa la protección contra DSD de red avanzada
Sigue estos pasos para activar la protección avanzada contra DSD de red.
Inscríbete en Cloud Armor Enterprise
Tu proyecto debe estar inscrito en Cloud Armor Enterprise para habilitar la protección avanzada contra DSD de red por región. Una vez activados, todos los extremos regionales en la región activada reciben protección avanzada siempre activa contra DSD de red.
Asegúrate de que haya una suscripción activa a Cloud Armor Enterprise en tu cuenta de facturación y que el proyecto actual esté inscrito en Cloud Armor Enterprise. Para obtener más información sobre la inscripción en Cloud Armor Enterprise, consulta Cómo suscribirte a Cloud Armor Enterprise y inscribir proyectos.
Configura los permisos de Identity and Access Management (IAM)
Para configurar, actualizar o borrar un servicio de seguridad perimetral de Google Cloud Armor, necesitas los siguientes permisos de IAM:
compute.networkEdgeSecurityServices.create
compute.networkEdgeSecurityServices.update
compute.networkEdgeSecurityServices.get
compute.networkEdgeSecurityServices.delete
En la siguiente tabla, se enumeran los permisos básicos de las funciones de IAM y sus métodos de API asociados.
Permiso de IAM | Métodos de la API |
---|---|
compute.networkEdgeSecurityServices.create |
networkEdgeSecurityServices insert |
compute.networkEdgeSecurityServices.update |
networkEdgeSecurityServices patch |
compute.networkEdgeSecurityServices.get |
networkEdgeSecurityServices get |
compute.networkEdgeSecurityServices.delete |
networkEdgeSecurityServices delete |
compute.networkEdgeSecurityServices.list |
networkEdgeSecurityServices aggregatedList |
Si deseas obtener más información sobre los permisos de IAM que necesitas cuando usas Google Cloud Armor, consulta Configura los permisos de IAM para las políticas de seguridad de Google Cloud Armor.
Configura la protección avanzada contra DSD de red
Sigue estos pasos para habilitar la protección avanzada contra DSD de red.
Crea una política de seguridad de tipo
CLOUD_ARMOR_NETWORK
o usa una política de seguridad existente con el tipoCLOUD_ARMOR_NETWORK
.gcloud compute security-policies create SECURITY_POLICY_NAME \ --type CLOUD_ARMOR_NETWORK \ --region REGION
Reemplaza lo siguiente:
SECURITY_POLICY_NAME
: El nombre que deseas que tenga tu política de seguridadREGION
: La región en la que deseas que se aprovisione la política de seguridad.
Para actualizar la política de seguridad recién creada o existente, establece la marca
--network-ddos-protection
enADVANCED
.gcloud compute security-policies update SECURITY_POLICY_NAME \ --network-ddos-protection ADVANCED \ --region REGION
Como alternativa, puedes establecer la marca
--network-ddos-protection
enADVANCED_PREVIEW
para habilitar la política de seguridad en el modo de vista previa.gcloud beta compute security-policies update SECURITY_POLICY_NAME \ --network-ddos-protection ADVANCED_PREVIEW \ --region REGION
Crea un servicio de seguridad perimetral de red que haga referencia a la política de seguridad.
gcloud compute network-edge-security-services create SERVICE_NAME \ --security-policy SECURITY_POLICY_NAME \ --region REGION
Inhabilita la protección avanzada contra DSD de la red
Para inhabilitar la protección avanzada contra DSD de red, puedes actualizar o borrar la política de seguridad.
Actualiza la política de seguridad
Usa el siguiente comando para actualizar la política de seguridad a fin de establecer la marca --network-ddos-protection
en STANDARD
. Reemplaza las variables con información relevante para tu implementación.
gcloud compute security-policies update SECURITY_POLICY_NAME \ --network-ddos-protection STANDARD \ --region REGION
Borra la política de seguridad
Para poder borrar una política de seguridad perimetral de la red, primero debes quitarla del servicio de seguridad perimetral de red, ya que no puedes borrar las políticas de seguridad en uso. Sigue estos pasos para borrar la política de seguridad:
Quita tu política del servicio de seguridad perimetral de la red o bórralo de la red.
Para quitar tu política del servicio de seguridad perimetral de la red, usa el siguiente comando:
gcloud compute network-edge-security-services update SERVICE_NAME \ --security-policy="" \ --region=REGION_NAME
Para borrar el servicio de seguridad perimetral de la red, usa el siguiente comando:
gcloud compute network-edge-security-services delete SERVICE_NAME \ --region=REGION_NAME
Borra la política de seguridad con el siguiente comando:
gcloud compute security-policies delete SECURITY_POLICY_NAME
Usa el modo de vista previa
El modo de vista previa te permite supervisar los efectos de la protección avanzada contra DSD de red sin aplicar la mitigación.
Los suscriptores de Cloud Armor Enterprise también pueden habilitar el modo de vista previa para las políticas de protección avanzada contra DSD de red. En el modo de vista previa, recibes todos los registros y la telemetría sobre el ataque detectado y la mitigación propuesta. Sin embargo, la mitigación propuesta no se aplica. Esto te permite probar la efectividad de la mitigación antes de habilitarla. Como cada política se configura por región, puedes habilitar o inhabilitar el modo de vista previa por región.
Para habilitar el modo de vista previa, establece la marca --ddos-protection
en ADVANCED_PREVIEW
.
Puedes usar el siguiente ejemplo para actualizar una política existente.
gcloud beta compute security-policies update POLICY_NAME \ --network-ddos-protection ADVANCED_PREVIEW \ --region=REGION
Reemplaza lo siguiente:
POLICY_NAME
: Es el nombre de tu política.REGION
: La región en la que se encuentra tu política.
Si tu política de seguridad está en modo de vista previa durante un ataque activo y deseas aplicar las mitigaciones, puedes actualizarla para establecer la marca --network-ddos-protection
como ADVANCED
. La política se aplica
casi de inmediato, y el siguiente evento de registro de MITIGATION_ONGOING
refleja el
cambio. Los eventos de registro de MITIGATION_ONGOING
ocurren cada cinco minutos.
Telemetría de mitigación de DSD de red
Google Cloud Armor genera tres tipos de registros de eventos cuando se mitigan ataques de DSD: MITIGATION_STARTED
, MITIGATION_ONGOING
y MITIGATION_ENDED
. Puedes usar los siguientes filtros de registro para ver tus registros por tipo de mitigación:
Tipo de mitigación | Filtro de registro |
---|---|
Inicio de la mitigación | resource.type="network_security_policy" jsonPayload.mitigationType="MITIGATION_STARTED" |
Mitigación en curso | resource.type="network_security_policy" jsonPayload.mitigationType="MITIGATION_ONGOING" |
Fin de la mitigación | resource.type="network_security_policy" jsonPayload.mitigationType="MITIGATION_ENDED" |
Registros de eventos de mitigación de ataques de Cloud Logging
En las siguientes secciones, se proporcionan ejemplos del formato de registro para cada tipo de registro de acontecimientos:
Inicio de la mitigación
@type: "type.googleapis.com/google.cloud.networksecurity.cloudarmor.logging.v1.CloudArmorMitigationAlert" alertId: "11275630857957031521" mitigation_type: "MITIGATION_STARTED" target_vip: "XXX.XXX.XXX.XXX" total_volume: { pps: 1400000 bps: 140000000 } started: { total_attack_volume: { pps: 1100000 bps: 110000000 } classified_attack: { attack_type: "NTP-udp" attack_volume: { pps: 500000 bps: 50000000 } } classified_attack: { attack_type: "CHARGEN-udp" attack_volume: { pps: 600000 bps: 60000000 } } attack_sources: { top_source_asns: { asn: "ABCDEF" volume: { pps: 20000 bps: 2000000 } } top_source_asns: { asn: "UVWXYZ" volume: { pps: 20000 bps: 2000000 } } top_source_geos: { region_code: "XX" volume: { pps: 20000 bps: 2000000 } } top_source_geos: { region_code: "XY" volume: { pps: 20000 bps: 2000000 } } } }
Mitigación en curso
@type: "type.googleapis.com/google.cloud.networksecurity.cloudarmor.logging.v1.CloudArmorMitigationAlert" alertId: "11275630857957031521" mitigation_type: "MITIGATION_ONGOING" target_vip: "XXX.XXX.XXX.XXX" total_volume: { pps: 1500000 bps: 150000000 } ongoing: { total_attack_volume: { pps: 1100000 bps: 110000000 } classified_attack: { attack_type: "NTP-udp" attack_volume: { pps: 500000 bps: 50000000 } } classified_attack: { attack_type: "CHARGEN-udp" attack_volume: { pps: 600000 bps: 60000000 } } attack_sources: { top_source_asns: { asn: "ABCDEF" volume: { pps: 20000 bps: 2000000 } } top_source_asns: { asn: "UVWXYZ" volume: { pps: 20000 bps: 2000000 } } top_source_geos: { region_code: "XX" volume: { pps: 20000 bps: 2000000 } } top_source_geos: { region_code: "XY" volume: { pps: 20000 bps: 2000000 } } } }
Mitigación completada
@type: "type.googleapis.com/google.cloud.networksecurity.cloudarmor.logging.v1.CloudArmorMitigationAlert" alertId: "11275630857957031521" mitigation_type: "MITIGATION_ENDED" target_vip: "XXX.XXX.XXX.XXX" ended: { attack_duration_seconds: 600 attack_type: "NTP-udp" }
En el modo de vista previa, cada uno de los mitigation_type
anteriores está precedido por PREVIEWED_
. Por ejemplo, en el modo de vista previa, MITIGATION_STARTED
es PREVIEWED_MITIGATION_STARTED
.
Para ver estos registros, ve al Explorador de registros y visualiza el recurso network_security_policy
.
Para obtener más información sobre cómo ver registros, consulta Visualiza los registros.
¿Qué sigue?
- Aprende a configurar políticas de seguridad perimetral de red.
- Obtén información sobre Cloud Armor Enterprise.