Configurar Google Security Operations con VMware Engine
En este documento se describe cómo configurar Google Security Operations (Google SecOps) para mejorar la detección, la investigación y la respuesta ante amenazas de ciberseguridad en máquinas virtuales (VM) que se ejecutan en VMware Engine. Además, Google SecOps puede analizar la telemetría de tu infraestructura de VMware y de otros servicios compatibles. Google Cloud
Información general
Google SecOps es un servicio en la nube que se ha creado como una capa especializada sobre la infraestructura de Google. Está diseñado para que las empresas puedan conservar, analizar y buscar de forma privada las grandes cantidades de telemetría de seguridad y de red que generan. Google SecOps normaliza, indexa, correlaciona y analiza los datos para proporcionar un análisis instantáneo y contexto de la actividad peligrosa o sospechosa.
Mecanismos de ingestión de datos de Google SecOps
Google SecOps ofrece varias formas de ingerir datos, como se detalla en la documentación sobre la ingesta de Google SecOps. El ejemplo de configuración de esta guía se centra en los siguientes puntos de integración clave de una arquitectura representativa:
Registros del sistema de máquinas virtuales y cargas de trabajo: para recoger los registros procedentes de máquinas virtuales y cargas de trabajo, existen varios patrones de arquitectura. En el ejemplo de configuración de esta guía se usa un agente de OpenTelemetry BindPlane implementado directamente en estas máquinas virtuales. Este método proporciona una forma flexible y estandarizada de recoger y reenviar registros del sistema.
Google Cloud Registros: además de los entornos virtualizados, la mayoría de los proyectos de los clientes usan una serie de Google Cloud servicios (excepto VMware Engine en este contexto específico). Para obtener una visibilidad completa de la detección de amenazas, los registros de estos servicios compatibles se pueden canalizar a Google SecOps. En el ejemplo de configuración que se muestra a continuación, se utiliza el mecanismo de ingestión directa y se configuran filtros de Cloud Logging para enrutar de forma selectiva los datos de registro relevantes.
Configurar Google Security Operations con VMware Engine
Para configurar Google Security Operations con VMware Engine, sigue estos pasos:
- Reenviar registros del sistema de cargas de trabajo
- Crear reglas personalizadas
- Reenviar Google Cloud registros de Cloud
Reenviar registros del sistema de cargas de trabajo
Para reenviar los registros del sistema de cargas de trabajo de las VMs que se ejecutan en VMware Engine a Google SecOps, puedes usar un agente de recogida de OpenTelemetry que se ejecute en las cargas de trabajo. Los pasos son los siguientes:
- Sigue las instrucciones de la sección Antes de empezar del agente de Bindplane para instalar el agente y descargar el archivo de autenticación de ingestión de Google SecOps. Puedes descargar el archivo de autenticación de Google SecOps desde el portal de Google SecOps.
- Verifica la configuración del cortafuegos para asegurarte de que los puertos correspondientes estén abiertos.
- Instala el agente Bindplane siguiendo las instrucciones de tu sistema operativo, ya sea Linux o Windows.
Sigue los pasos para configurar el agente. Ten en cuenta los siguientes detalles al completar estos pasos:
- En la sección Receptor se especifica qué registros debe recoger el agente y enviar a Google SecOps.
- En la sección Exporter (Exportador) se especifica el destino al que deben enviar los registros los agentes.
- Esta tarea usa el exportador de Google SecOps, que envía los registros directamente a la API de ingestión de Google SecOps.
Consulta ejemplos de configuración adicionales para la recogida de registros para ver archivos de configuración de ejemplo que puedes usar. A continuación, se muestra un ejemplo específico de cómo recoger registros de eventos de Windows (aplicación, seguridad y sistema) y enviarlos a Google SecOps. Utiliza el formato de configuración de OpenTelemetry Collector:
receivers: windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_application: attributes: log_type: windows_event.application channel: application max_reads: 100 poll_interval: 1s raw: true start_at: end windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_security: attributes: log_type: windows_event.security channel: security max_reads: 100 poll_interval: 1s raw: true start_at: end windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_system: attributes: log_type: windows_event.system channel: system max_reads: 100 poll_interval: 1s raw: true start_at: end processors: resourcedetection/source0_01HZ7NFAB5HZY6TPMGEYRN4XGZ: detectors: - system system: hostname_sources: - os transform/source001HZ7NFAB5HZY6TPMGEYRN4XGZprocessor0_logs: error_mode: ignore log_statements: - context: log statements: - set(attributes["chronicle_log_type"], "WINEVTLOG") where true exporters: chronicle/NA-SDL: compression: none creds: '{ "type": "service_account", "project_id": "malachite-previewamericassdl", "private_key_id": "a9c8d8f0b081c09bcf92621804ba19fc6529ecce", "private_key": "----BEGIN PRIVATE KEY-----abcdefg-----END PRIVATE KEY-----\n", "client_email": "previewamericassdl-1710772997@malachite-previewamericassdl.iam.gserviceaccount.com", "client_id": "114604545528934473681", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/previewamericassdl-1710772997%40malachite-previewamericassdl.iam.gserviceaccount.com", "universe_domain": "googleapis.com" }' customer_id: a556547c-1cff-43ef-a2e4-cf5b12a865df endpoint: malachiteingestion-pa.googleapis.com ingestion_labels: env: takeshi log_type: CATCH_ALL namespace: null raw_log_field: body retry_on_failure: enabled: true initial_interval: 5s max_elapsed_time: 300s max_interval: 30s sending_queue: enabled: true num_consumers: 10 queue_size: 5000 storage: file_storage/NA-SDL extensions: file_storage/NA-SDL: compaction: directory: $OIQ_OTEL_COLLECTOR_HOME/storage on_rebound: true directory: $OIQ_OTEL_COLLECTOR_HOME/storage service: extensions: - file_storage/NA-SDL pipelines: logs/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_NA-SDL-0: receivers: - windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_application - windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_security - windowseventlog/source001HZ7NFAB5HZY6TPMGEYRN4XGZ_system processors: - resourcedetection/source0_01HZ7NFAB5HZY6TPMGEYRN4XGZ - transform/source001HZ7NFAB5HZY6TPMGEYRN4XGZprocessor0_logs exporters: - chronicle/NA-SDL
Reinicia el recolector una vez que se haya completado la configuración y comprueba que los registros se hayan rellenado en el panel de control de Google SecOps.
Crear reglas personalizadas para la detección de amenazas
Google SecOps proporciona reglas y detecciones predeterminadas y seleccionadas diseñadas para identificar amenazas de ciberseguridad de forma eficaz. Además de las funciones predeterminadas, puedes crear reglas personalizadas para generar alertas adaptadas a un entorno específico y a sus problemas de seguridad. Para detectar amenazas más sofisticadas, Google SecOps permite usar varias reglas de eventos. Esto permite hacer un seguimiento y correlacionar eventos de seguridad relacionados a lo largo del tiempo, lo que facilita la identificación de patrones de ataque complejos que pueden no ser evidentes a partir de incidentes aislados.
Reenviar registros de Cloud Google Cloud
Para configurar la ingestión de Google Cloud datos en Google SecOps mediante la ingestión directa, haz lo siguiente:
- Sigue los pasos que se indican en el artículo sobre cómo ingerir Google Cloud datos en Google SecOps para configurar los registros.
- Habilita la opción Ingerir y analizar datos de Cloud Logging en la pestaña Configuración de ingesta global.
- Revisa la lista de Google Cloud servicios admitidos para la ingesta de registros Google Cloud e identifica los que sean más importantes para tus necesidades de monitorización de seguridad. Consulta Exportar registros de gcp_name.
- Modifica el filtro de exportación predeterminado según sea necesario en la pestaña Export Filter Settings (Configuración del filtro de exportación) para incluir los registros específicos que necesites. El siguiente ejemplo es una copia del filtro de exportación que se ha usado en este documento:
log_id("dns.googleapis.com/dns_queries") OR log_id("cloudaudit.googleapis.com/activity") OR log_id("cloudaudit.googleapis.com/system_event") OR ( log_id("cloudaudit.googleapis.com/data_access") AND NOT protoPayload.methodName =~ "^storage.(buckets|objects).(get|list)$" AND NOT protoPayload.request.cmd = "select" ) OR log_id("cloudaudit.googleapis.com/policy") OR log_id("cloudaudit.googleapis.com/access_transparency") OR log_id("compute.googleapis.com/nat_flows") OR log_id("compute.googleapis.com/firewall") OR log_id("requests") OR logName =~ "^projects/[\w-]+/logs/syslog$" OR logName =~ "^projects/[\w-]+/logs/authlog$" OR log_id("securelog") OR log_id("sysmon.raw") OR logName =~ "^projects/[\w-]+/logs/windows_event_log$" OR log_id("windows_event_log") OR log_id("events") OR log_id("stdout") OR log_id("stderr") OR log_id("audit_log") OR log_id("recaptchaenterprise.googleapis.com/assessment") OR log_id("recaptchaenterprise.googleapis.com/annotation") OR log_id("cloudaudit.googleapis.com/activity")
Siguientes pasos
- Consulta cómo ingerir Google Cloud datos en Google SecOps.
- Consulta los componentes de VMware en nubes privadas.