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, el 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 balanceadores de cargas de red de transferencia externos, reenvío de protocolos o VMs con direcciones IP públicas. Esta protección ayuda a garantizar la estabilidad de la infraestructura mediante la supervisión y la limitación continuas del tráfico que excede la cuota. La protección estándar contra DSD de red no busca firmas de ataque ni proporciona otras mitigaciones avanzadas para minimizar los daños colaterales. Para obtener protección específica, debes habilitar tu propia política de seguridad con la protección avanzada contra DSD. El costo de la protección estándar contra DSD de red está cubierto por Google Cloud Armor Standard y no requiere suscripciones adicionales.
- 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 y avanzada contra DSD de red
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 dirigidas | ||
| 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 estándar garantiza que la infraestructura permanezca estable mediante la supervisión y la limitación continuas del tráfico que excede la cuota. Google Cloud No busca firmas de ataque ni proporciona otras mitigaciones avanzadas para minimizar los daños colaterales. Para obtener protección específica, debes habilitar tu propia política de seguridad con la protección avanzada contra DSD.
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 la habilitas para esa región, 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 la 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, hay un período de entrenamiento de 24 horas antes de que la protección avanzada contra DSD de red desarrolle una línea de base 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 basadas en 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 activada, 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 suscribirse a Cloud Armor Enterprise y cómo inscribir proyectos.
Configura los permisos de Identity and Access Management (IAM)
Para configurar, actualizar o borrar un servicio de seguridad perimetral de Cloud Armor, necesitas los siguientes permisos de IAM:
compute.networkEdgeSecurityServices.createcompute.networkEdgeSecurityServices.updatecompute.networkEdgeSecurityServices.getcompute.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 |
Para obtener más información sobre los permisos de IAM que necesitas cuando usas 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_NETWORKo 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 REGIONReemplaza 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 tu política de seguridad
Para actualizar la política de seguridad recién creada o existente, establece la marca
--network-ddos-protectionenADVANCED.gcloud compute security-policies update SECURITY_POLICY_NAME \ --network-ddos-protection ADVANCED \ --region REGIONComo alternativa, puedes establecer la marca
--network-ddos-protectionenADVANCED_PREVIEWpara 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 REGIONCrea 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 del perímetro 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_NAMEPara 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 de manera forzosa. Esto te permite probar la eficacia de la mitigación antes de habilitarla. Debido a que 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: el nombre de tu políticaREGION: 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 actualizar tu política de seguridad para establecer la marca --network-ddos-protection en ADVANCED. La política se aplica de manera casi inmediata y el siguiente evento de registro MITIGATION_ONGOING refleja el cambio. Los eventos de registro MITIGATION_ONGOING ocurren cada cinco minutos.
Telemetría de mitigación de DSD de red
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
}
}
top_source_ips: {
region_code: "xx.xx.xx.xx"
volume: {
pps: 20000
bps: 2000000
}
}
top_source_ips: {
region_code: "yy.yy.yy.yy"
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
}
}
top_source_ips: {
region_code: "xx.xx.xx.xx"
volume: {
pps: 20000
bps: 2000000
}
}
top_source_ips: {
region_code: "yy.yy.yy.yy"
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_types anteriores está precedido por PREVIEWED_. Por ejemplo, en el modo de vista previa, MITIGATION_STARTED es en su lugar
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.
Hallazgos de Security Command Center
El panel de Security Command Center te ayuda a supervisar y responder a los ataques de DSD volumétricos dirigidos a tu balanceador de cargas de red de transferencia y a las máquinas virtuales. Cuando Cloud Armor detecta un ataque, aparece un hallazgo dedicado con la etiqueta "Volumetric DDoS Attack Attempt - Network LB/VMs" en el panel y en la tarjeta de Cloud Armor.
El hallazgo incluye vínculos directos a los registros pertinentes y proporciona la siguiente información para ayudarte a comprender el ataque:
- El recurso específico que está bajo ataque
- El volumen de tráfico que afecta el recurso
- La clasificación del ataque (como UDP, TCP o SYN flood)
El hallazgo refleja de forma dinámica el estado del ataque. El estado del ataque se basa en los siguientes eventos de registro:
- Inicio de la mitigación: El hallazgo aparece cuando comienzan las medidas de mitigación.
Mitigación en curso: A medida que avanza la mitigación, el hallazgo se actualiza automáticamente y te mantiene informado sobre la situación en curso. En la siguiente captura de pantalla, se muestra un ejemplo de hallazgo activo:
Un hallazgo activo de Security Command Center (haz clic para ampliar). Fin de la mitigación: Cuando el ataque disminuye y finaliza la mitigación, el hallazgo se vuelve inactivo y proporciona un registro del evento. En la siguiente captura de pantalla, se muestra un ejemplo de hallazgo inactivo:
Un hallazgo inactivo de Security Command Center (haz clic para ampliar).
¿Qué sigue?
- Aprende a configurar políticas de seguridad perimetral de la red
- Obtén información sobre Cloud Armor Enterprise