Transmite datos con la exportación avanzada de BigQuery
En este documento, se describe cómo acceder a tus datos de Google SecOps y usarlos en BigQuery con la función Advanced BigQuery Export. Como cliente de Enterprise Plus, puedes usar la función para acceder a tus datos de seguridad casi en tiempo real a través de una canalización de datos de transmisión completamente administrada. Esta capacidad puede ayudar a abordar el desafío crítico de la latencia de datos en las operaciones de seguridad y generar una detección y respuesta ante amenazas más oportuna y eficaz.
Antes de comenzar
Revisa los siguientes puntos que definen los requisitos de elegibilidad y las acciones necesarias:
- Solo para clientes de Enterprise Plus: Esta función solo está disponible para los clientes de Google SecOps Enterprise Plus. Para todos los demás clientes, consulta Exporta a un proyecto de BigQuery autoadministrado.
- Se requiere la activación de la función: Esta función se habilita a pedido y puede requerir una configuración inicial en la instancia de Google SecOps de tu organización. Si es necesario, comunícate con tu representante de Google SecOps para confirmar que la función esté habilitada.
- Migración de datos: Cuando activas esta función, tus datos comienzan a exportarse a un nuevo proyecto de arrendatario de BigQuery para tu instancia de Google SecOps, además de las exportaciones existentes a tu proyecto de BigQuery administrado por Google, como se describe en Exporta a un proyecto de BigQuery administrado por Google. Esta operación dual admite tu migración a la nueva función sin interrupciones. Recibirás una notificación antes de que se inhabilite la canalización de exportación anterior para tu cuenta.
- Controles del servicio de VPC: La Exportación avanzada de BigQuery puede funcionar en un perímetro de Controles del servicio de VPC. Para obtener más información, consulta Configura los Controles del servicio de VPC.
- Claves de encriptación administradas por el cliente (CMEK): La exportación avanzada de BigQuery está disponible para los clientes que habilitaron las CMEK en su instancia de Google SecOps. Para obtener más información, consulta CMEK para Google SecOps. Si usas CMEK con los Controles del servicio de VPC, consulta Configura los Controles del servicio de VPC para Google SecOps para obtener recomendaciones e instrucciones.
Descripción general de las funciones
La exportación avanzada de BigQuery aprovisiona y gestiona automáticamente conjuntos de datos esenciales de Google SecOps, incluidos:Eventos del Modelo de Datos Unificado (UDM) , detección de reglas, gráficos de entidades y coincidencias de indicadores de compromiso (IoC), todo ello en un proyecto seguro de BigQuery gestionado por Google. Obtendrá acceso seguro y de solo lectura a estos datos a través de un conjunto de datos vinculado de BigQuery, que aparece directamente en su propio Google Cloud proyecto. Esta función te permite consultar tus datos de seguridad como si estuvieran almacenados de forma local, pero sin la sobrecarga de administrar la canalización o el almacenamiento de datos.
Google SecOps exporta las siguientes categorías de datos de seguridad a BigQuery:
- Registros de eventos del UDM: Son registros del UDM creados a partir de los datos de registro que los clientes transfieren. Estos registros se enriquecen con información de alias.
- Coincidencias de reglas (detecciones): Son las instancias en las que una regla coincide con uno o más eventos.
- Coincidencias de IoC: Son artefactos (por ejemplo, dominios o direcciones IP) de eventos que coinciden con los feeds de IoC. Esto incluye las coincidencias con los feeds globales y los feeds específicos del cliente.
- Métricas de transferencia: Estadísticas, como la cantidad de líneas de registro transferidas, la cantidad de eventos producidos a partir de registros y la cantidad de errores de registro que indican que no se pudieron analizar los registros.
- Gráfico de entidades y relaciones entre entidades: Es la descripción de las entidades y sus relaciones con otras entidades.
Beneficios principales
Las principales ventajas de la exportación avanzada a BigQuery incluyen las siguientes:
- Actualización de datos casi en tiempo real: Una arquitectura de transmisión hace que sus datos de seguridad estén disponibles para consulta en cuestión de minutos después de su ingesta. Los eventos de UDM, las detecciones de reglas y las coincidencias de IoC están disponibles con una latencia esperada de entre 5 y 10 minutos.
- Modelo de costos simplificado y predecible: Google SecOps cubre todos los costos de almacenamiento y transferencia de datos dentro del proyecto administrado de BigQuery. Tu organización solo es responsable de los costos de análisis de BigQuery en los que se incurre cuando ejecutas consultas.
- Acceso a los datos sin mantenimiento: Google administra completamente la infraestructura subyacente, lo que permite que tu equipo se enfoque en el análisis de datos en lugar de la ingeniería de datos.
- Integridad y eliminación de duplicados de datos: Los datos de seguridad se actualizan o se vuelven a enriquecer con frecuencia después de la transferencia inicial. La función usa combinaciones detalladas del lenguaje de manipulación de datos (DML) para actualizar los registros en su lugar. Obtendrá datos limpios y sin duplicados sin necesidad de escribir rutinas complejas de deduplicación SQL.
- Compatibilidad fluida con MSSP (modelo de centro y radios): Los proveedores de servicios de seguridad administrados (MSSP) pueden administrar de manera eficiente los análisis en varios arrendatarios de clientes suscribiéndose de forma programática a los conjuntos de datos vinculados de sus clientes desde un solo proyecto central.
- Cumplimiento integrado: La función admite de forma nativa los Controles del servicio de VPC, las claves de encriptación administradas por el cliente (CMEK) y la residencia de datos (DRZ). Los registros de auditoría para el cliente (Transparencia de acceso) se entregan directamente en tu espacio de trabajo de Cloud Logging a través del Servicio de identificación de recursos federados (FRIS).
Casos de uso habituales
La función Advanced BigQuery Export está diseñada para analistas de seguridad, cazadores de amenazas, científicos de datos e ingenieros de seguridad que requieren acceso directo y de alto rendimiento a datos de seguridad actualizados para investigaciones puntuales, análisis personalizados e integración con herramientas de inteligencia empresarial.
Estos son algunos casos de uso comunes de la Exportación avanzada a BigQuery:
- Ejecuta consultas ad hoc directamente en BigQuery.
- Usar tus propias herramientas de inteligencia empresarial, como Microsoft Power BI, para crear paneles, informes y análisis
- Unir los datos de Google SecOps con conjuntos de datos de terceros
Arquitectura
La arquitectura de BigQuery Export avanzado usa una canalización de transmisión continua. Los datos de tu instancia de Google SecOps se envían a un proyecto de usuario seguro administrado por Google a través de la API de BigQuery Storage Write (gRPC) de alta capacidad de procesamiento.
Google SecOps usa el uso compartido de BigQuery para crear una lista de datos segura y brindarte acceso. En el panel Explorer de BigQuery, su Google Cloud proyecto se suscribe automáticamente a esta lista, que se muestra como el secops_linked_datalake conjunto de datos vinculado.
Este modelo admite un aislamiento de datos sólido y, al mismo tiempo, te brinda acceso de solo lectura a las consultas sin problemas.
Terminología clave
A continuación, se incluyen algunos términos y conceptos clave de BigQuery Export avanzado:
- Proyecto de usuario: Es un proyecto de Google Cloud propiedad de Google SecOps y administrado por este. En este proyecto, se almacenan y administran físicamente los datos de seguridad exportados. No tienes acceso directo a este proyecto.
- BYOP (Bring Your Own Project): Es el proyecto Google Cloud que posee tu organización y que vincula a tu instancia de Google SecOps. Este es el proyecto en el que aparece el conjunto de datos vinculado y en el que ejecutas tus consultas y generas costos de análisis.
- ID del proyecto: Es el identificador único global de tu proyecto Google Cloud vinculado a tu instancia de Google SecOps.
- Conjunto de datos vinculado: Es un conjunto de datos de BigQuery de solo lectura que funciona como un vínculo simbólico o un puntero a un conjunto de datos compartido en otro proyecto. Te permite consultar datos sin copiarlos, lo que proporciona acceso seguro mientras el proveedor de datos administra el almacenamiento físico.
- DML de grano fino (FGDML): El proceso automatizado de backend que Advanced BigQuery Export utiliza para realizar upserts (actualizaciones e inserciones). Si un evento llega tarde o se vuelve a enriquecer, el sistema actualiza la fila existente en su lugar, basándose en su identificador único (por ejemplo,
metadata.id) en lugar de crear un duplicado. - Modelo de datos unificado (UDM): Esquema estándar y extensible de Google para analizar y normalizar los datos de telemetría de seguridad de cientos de productos de proveedores en un formato consistente.
- Proveedores de servicios de seguridad gestionados (MSSP): Google Cloud Los MSSP certificados ofrecen un conjunto integral de herramientas y experiencia para fortalecer sus defensas contra las amenazas de ciberseguridad en constante evolución.
Configura tu sistema
Para utilizar la función de exportación avanzada de BigQuery, primero debe configurar su sistema. Según su entorno y sus necesidades, siga las instrucciones de una de las siguientes secciones.
Configuración predeterminada
Siga estos pasos para configurar su sistema para usar la exportación avanzada de BigQuery y comenzar a consultar sus datos:
- Confirma tu licencia: Asegúrate de que tu organización tenga una licencia Google SecOps Enterprise Plus.
- Identifica tu proyecto: Inicia sesión en la Google Cloud consola y selecciona el Google Cloud proyecto que está vinculado a tu instancia de Google SecOps.
- Localiza el conjunto de datos vinculado: En la consola de BigQuery, usa el panel Explorer para navegar a los recursos de tu proyecto. Usted ve un conjunto de datos vinculado llamado
secops_linked_datalake. Este conjunto de datos es un puntero de solo lectura a los datos de seguridad en tiempo real gestionados por Google SecOps. Verificar permisos de Identity and Access Management (IAM): Para consultar los datos, su cuenta de usuario o de servicio debe tener los siguientes roles de IAM otorgados en su proyecto:
roles/bigquery.dataViewer: Requerido para que los usuarios finales o las herramientas de IE de su organización ejecuten consultas SQL en las vistas del conjunto de datos vinculado.roles/bigquery.jobUser: Requerido para que los usuarios finales o las herramientas de IE de su organización ejecuten consultas SQL en las vistas del conjunto de datos vinculado.Chronicle API Admin: Requerido dentro de Google SecOps para ejecutar las API de Dataplane (por ejemplo,ProvisionPartnerSubscription) para administrar las suscripciones de MSSP.
Estas funciones permiten a los usuarios (como analistas de seguridad y consumidores de datos) consultar datos en el conjunto de datos vinculado y ejecutar trabajos de BigQuery dentro de su proyecto.
Ejecutar una consulta de prueba: Abra el espacio de trabajo SQL de BigQuery y ejecute una consulta básica para verificar que su acceso esté configurado correctamente. Puedes utilizar el siguiente fragmento de código:
SELECT * FROM `PROJECT_ID.secops_linked_datalake.events` LIMIT 10;Reemplace PROJECT_ID con su ID de proyecto Google Cloud real.
Configure la exportación avanzada de BigQuery dentro del perímetro de un Controles del servicio de VPC.
Para configurar la exportación avanzada de BigQuery dentro del perímetro de los controles de servicio de su VPC, debe configurar una regla de entrada específica. Esta regla permite que las cuentas de servicio de Google SecOps necesarias interactúen con BigQuery y los servicios relacionados en los proyectos protegidos por el perímetro. Para obtener instrucciones detalladas y más información, consulte Configurar los controles del servicio VPC para las operaciones de seguridad de Google.
Para configurar la exportación avanzada de BigQuery dentro del perímetro de Controles de servicio de su VPC, configure la siguiente regla de entrada:
- ingressFrom: identities: - serviceAccount:malachite-advanced-bq-exporter@system.gserviceaccount.com - serviceAccount:malachite-data-export-service@system.gserviceaccount.com sources: - accessLevel: "*" ingressTo: operations: - serviceName: analyticshub.googleapis.com methodSelectors: - method: "*" - serviceName: bigquery.googleapis.com methodSelectors: - method: "*" resources: - projects/PROJECT_NUMBERReemplace
PROJECT_NUMBERcon el número de su proyecto vinculado a Google SecOps Google Cloud .
Para los proveedores de servicios de seguridad gestionados (MSSP): configure el acceso centralizado a los datos de BigQuery de sus subinquilinos.
Si está autorizado como MSSP, puede aprovechar las API del plano de datos de Google SecOps para crear programáticamente conjuntos de datos vinculados de BigQuery en su proyecto central "hub". Estos conjuntos de datos vinculados apuntan a los datos de BigQuery de sus clientes (nodos), lo que le permite realizar consultas en múltiples inquilinos desde un único panel de control. Este proceso requiere que su cliente otorgue acceso a su instancia de MSSP.
Los principales beneficios incluyen:
- Visibilidad centralizada: Analice los datos de seguridad de todos sus clientes en un solo lugar.
- Flujos de trabajo eficientes: Optimice la búsqueda de amenazas y la elaboración de informes en toda su base de clientes.
- Gestión programática: Automatice la configuración y la eliminación del acceso a los datos.
Requisitos previos
MSSP
- A Google Cloud proyecto para que sirva como su "centro neurálgico".
- Una instancia de Google SecOps.
- Permisos IAM adecuados para administrar conjuntos de datos de BigQuery en su proyecto central.
Cliente (Subarrendatario)
- Una licencia de Google SecOps Enterprise Plus.
- Un proyecto de Google Cloud (BYOP) vinculado a tu instancia de Google SecOps
- Permisos de IAM adecuados para gestionar el acceso a la API de Google SecOps.
gcloudCLI instalada y autenticada.
Paso 1: El cliente otorga acceso al MSSP
El cliente puede llamar a la API ProvisionPartnerSubscription para otorgar permisos a la instancia de Google SecOps de su MSSP. Google SecOps aprovisiona automáticamente un conjunto de datos vinculado de BigQuery, nombrado en el formato secops_linked_datalake_<customer_id> dentro del proyecto Google Cloud del MSSP vinculado a la instancia de Google SecOps del MSSP. Este conjunto de datos está vinculado a los datos de Google SecOps del cliente.
Endpoint de API:
POST
https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription
Método
POST
Cuerpo de la solicitud
Objeto JSON vacío.
{}
Ejemplo de comando CURL (que debe ejecutar el cliente):
curl -X POST \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
-H "Content-Type: application/json" \
-d '{}' \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription"
Reemplaza los marcadores de posición que se indican más abajo:
- CUSTOMER_PROJECT: Es el ID del proyecto Google Cloud o número de proyecto del cliente. Consulte Creación y gestión de proyectos.
- REGION: La Google Cloud región donde reside la instancia de Google SecOps del cliente (por ejemplo, us, europe-west2). Consulte la lista de regiones.
- CUSTOMER_INSTANCE_ID: Es el ID de la instancia de Google SecOps del cliente.
Cuerpo de la respuesta
Devuelve ProvisionPartnerSubscriptionResponse que contiene los detalles de la suscripción.
{
"subscriptionDetails": {
"subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
"linkedDataset": "string"
}
}
- SUBSCRIBER_PROJECT_ID: El ID de proyecto del MSSP suscriptor. Google Cloud
- SUBSCRIBER_REGION: La región donde se encuentra el Google Cloud Proyecto del suscriptor.
- SUBSCRIPTION_ID: Es un identificador único para la suscripción existente.
Paso 2: MSSP consulta datos en todos los inquilinos
Una vez que los conjuntos de datos vinculados de varios clientes se hayan aprovisionado en su (MSSP) Google Cloud En este proyecto, puede utilizar consultas SQL estándar de BigQuery para analizar los datos. Para realizar consultas en varios clientes, utilice el operador UNION ALL.
Ejemplo de consulta (que debe ejecutar el MSSP en su proyecto central):
SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_1.events`
WHERE <your_conditions>
UNION ALL
SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_2.events`
WHERE <your_conditions>
-- Add more UNION ALL clauses for other customers
Paso 3: Acceso de auditorías de clientes
El cliente puede llamar a la API fetchSubscriptions para ver todas las suscripciones activas y las instancias de MSSP que acceden a sus datos.
extremo de API
GET https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions
Método
GET
Ejemplo de comando CURL (que debe ejecutar el cliente):
curl -X GET \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions"
Reemplaza los marcadores de posición que se indican más abajo:
- CUSTOMER_PROJECT: Es el ID del proyecto Google Cloud o número de proyecto del cliente. Consulte Creación y gestión de proyectos.
- REGION: La Google Cloud región donde reside la instancia de Google SecOps del cliente (por ejemplo, us, europe-west2). Consulte la lista de regiones.
- CUSTOMER_INSTANCE_ID: Es el ID de la instancia de Google SecOps del cliente.
Cuerpo de la respuesta
Devuelve FetchSubscriptionsResponse con una lista de suscripciones activas.
{
"subscriptions": [
{
"subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
"linkedDataset": "string"
}
]
}
- SUBSCRIBER_PROJECT_ID: El suscriptor Google Cloud ID del proyecto. El suscriptor puede referirse tanto al cliente como a un proveedor de servicios de seguridad gestionados (MSSP).
- SUBSCRIBER_REGION: La región donde se encuentra el Google Cloud Proyecto del suscriptor.
- SUBSCRIPTION_ID: Es un identificador único para la suscripción existente.
Paso 4: El cliente revoca el acceso (si es necesario).
Si un cliente necesita revocar el acceso de un MSSP, puede utilizar la API revokePartnerSubscription. Esta acción revoca inmediatamente el permiso para consultar el conjunto de datos vinculado mediante el proyecto central del MSSP. El ID de la suscripción revocada pasa a estar inactivo.
extremo de API
POST https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription
Método
POST
Cuerpo de la solicitud
Requiere la URI de la suscripción que se va a revocar, la cual se obtuvo de la llamada a la API fetchSubscriptions.
{
"subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
}
Ejemplo de comando CURL (que debe ejecutar el cliente):
# Set subscription details obtained from Fetch Subscriptions
export SUBSCRIBER_PROJECT_ID="partner-byop-project-id"
export SUBSCRIBER_REGION="subscription-location"
export SUBSCRIPTION_ID="subscription-id"
curl -X POST \
-H "Authorization: Bearer ${OAUTH_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
}' \
"https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription"
Reemplaza los marcadores de posición que se indican más abajo:
- SUBSCRIBER_PROJECT_ID: El suscriptor Google Cloud ID del proyecto.
- SUBSCRIBER_REGION: La región donde se encuentra el Google Cloud Proyecto del suscriptor.
- SUBSCRIPTION_ID: Es un identificador único para la suscripción existente.
- CUSTOMER_PROJECT: Es el ID del proyecto Google Cloud o número de proyecto del cliente.
- REGION: Es la región de Google Cloud en la que reside la instancia de Google SecOps del cliente.
- CUSTOMER_INSTANCE_ID: Es el ID de la instancia de Google SecOps del cliente.
Cuerpo de la respuesta
Objeto JSON vacío.
{}
Consulta tus datos de BigQuery
Puedes ejecutar consultas directamente en BigQuery o conectar tu propia herramienta de inteligencia empresarial, como Microsoft Power BI, a BigQuery.
Consulta los siguientes recursos para obtener más información sobre las búsquedas:
- Para obtener información sobre cómo acceder a BigQuery y ejecutar consultas, abre Ejecuta una consulta y aprende a ejecutar una consulta interactiva y ejecutar una consulta por lotes.
- Para obtener información sobre cómo consultar tablas particionadas, consulta Consulta tablas particionadas.
Período de retención de datos en tu proyecto de usuario de BigQuery
El período de retención de tus datos en BigQuery es idéntico al período de retención de datos configurado para tu arrendatario de Google SecOps. No hay un parámetro de configuración independiente que se pueda configurar para personalizar tu política de retención de datos en BigQuery. Los datos se borran automáticamente de las tablas de BigQuery a medida que superan el período de retención de tu arrendatario.
Conjuntos de datos vinculados
Los conjuntos de datos vinculados contienen tablas que corresponden a diferentes tipos de datos de seguridad.
En la siguiente tabla, se proporciona un resumen de los conjuntos de datos disponibles, su actualización de datos objetivo y los identificadores únicos que se usan para garantizar la integridad de los datos:
| Nombre del conjunto de datos | Descripción | Mejor actualización esperada | Identificadores únicos para la eliminación de duplicados |
|---|---|---|---|
events | Son eventos de seguridad normalizados en el esquema de UDM. Para obtener información sobre el esquema, consulta Esquema de eventos de Google SecOps. | Menos de 5 minutos | id (representación de cadena) |
rule_detections | Son las detecciones que generan las reglas del motor de detección de Google SecOps. | Menos de 5 minutos | detection.id |
ioc_matches | Se encontraron coincidencias de indicadores de compromiso (IOC) en los eventos de UDM. | Menos de 5 minutos | Es la clave compuesta de day_bucket_seconds, feed_log_type, ioc_type y ioc_value. |
entity_graph | Son datos contextuales sobre las entidades (usuarios, recursos) y sus relaciones. | Aprox. 4 horas (por lote) | Es la clave compuesta de partition_day, metadata.product_entity_id y metadata.event_metadata.id. |
ingestion_metrics | Estadísticas sobre el volumen de la transferencia de registros y las fuentes de datos | Aproximadamente 5 minutos | Ninguna (serie temporal de solo agregado) |
entity_enum_value_to_name_mapping | Asigna valores numéricos a valores de cadena para los tipos enumerados del gráfico de entidades. | N/A | Ninguno |
udm_enum_value_to_name_mapping | Asigna valores numéricos a valores de cadena para los tipos enumerados de eventos del UDM. | N/A | Ninguno |
Consultas de muestra
En los siguientes ejemplos, se muestra cómo consultar los conjuntos de datos para casos de uso de seguridad comunes.
Ejemplo: Busca todas las conexiones de red desde una dirección IP específica en las últimas 24 horas
Esta consulta busca en la tabla de eventos actividad de red reciente de una dirección IP sospechosa.
SELECT
metadata.product_event_type,
principal.ip,
target.ip,
network.application_protocol
FROM
`PROJECT_ID.secops_linked_datalake.events`
WHERE
principal.ip = '192.0.2.1'
AND metadata.event_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR);
- Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .
Ejemplo: Recuento de las 10 detecciones de reglas más frecuentes
Esta consulta en la tabla rule_detections ayuda a identificar las amenazas o los incumplimientos de políticas más comunes que se detectan en tu entorno.
SELECT
rule_name,
COUNT(*) AS detection_count
FROM
`PROJECT_ID.secops_linked_datalake.rule_detections`
WHERE
detection.id IS NOT NULL
GROUP BY
1
ORDER BY
2 DESC
LIMIT
10;
- Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud .
Prácticas recomendadas
A continuación, se incluyen algunas prácticas recomendadas para realizar consultas con BigQuery Export avanzado:
Optimiza los costos de las consultas: Aunque el almacenamiento es gratuito, los costos de procesamiento se facturan a tu proyecto, por lo que debes hacer lo siguiente:
- Evita usar SELECT *. En tu consulta, especifica solo las columnas que necesitas para reducir la cantidad de datos analizados y los costos de la consulta.
- Asegúrate de que tus consultas aprovechen las particiones de BigQuery (con la columna de tiempo de partición hour_time_bucket) y el agrupamiento en clústeres (hour_time_bucket, log_type, event_type, id) para analizar menos datos y reducir significativamente los costos de las consultas.
Usa filtros de partición: La tabla de eventos está particionada por la columna hour_time_bucket. Siempre incluye un filtro de cláusula WHERE en esta columna para limitar las consultas al período más corto posible, lo que mejora significativamente el rendimiento y reduce los costos.
Escribe consultas eficientes: El esquema del UDM es amplio y disperso. Para filtrar de manera eficiente tipos de eventos específicos, usa WHERE… IS NOT NULL en los campos pertinentes Por ejemplo, para encontrar solo las consultas de DNS, filtra WHERE network.dns.questions.name IS NOT NULL.
Valida las consultas: Usa el validador de consultas en la IU de BigQuery antes de ejecutar una consulta. El validador de consultas proporciona una estimación de los datos procesados, lo que te ayuda a evitar consultas inesperadamente grandes y costosas.
Usa tablas de asignación de enumeraciones: La Exportación avanzada a BigQuery incluye las tablas entity_enum_value_to_name_mapping y udm_enum_value_to_name_mapping. Úsalos para unir tus eventos y traducir los valores de enumeración numéricos en cadenas legibles sin escribir lógica de traducción manual en tus consultas.
Integración de registros de auditoría: La Exportación avanzada de BigQuery se integra con el Servicio de identificación de recursos federados (FRIS). Los registros de auditoría orientados al cliente, que usan la función de Transparencia de acceso de Google, se entregan de forma nativa dentro de tu lugar de trabajo de Cloud Logging de BYOP si el personal de Google accede al proyecto de arrendatario administrado.
Limitaciones conocidas
Estas son las limitaciones conocidas de la función BigQuery Export avanzado:
- Latencia del gráfico de entidades: El conjunto de datos entity_graph se exporta con un proceso por lotes y tiene una actualidad de los datos de aproximadamente cuatro horas.
- Límites de columnas del esquema del UDM: BigQuery tiene un límite flexible de 10,000 columnas por tabla. El esquema del UDM contiene más de 27,000 campos y está escasamente propagado. La canalización de exportación incluye de forma inteligente solo las columnas completadas para un evento determinado, lo que mantiene a la mayoría de los clientes muy por debajo del límite. Google SecOps supervisa el uso de las columnas y solicita de forma proactiva un aumento del límite para tu proyecto de arrendatario si se acerca a este umbral.
- El período de retención no se puede configurar: El período de retención de datos para todos los datos de seguridad exportados a BigQuery se sincroniza automáticamente con el período de retención de datos de tu proyecto de Google SecOps y no se puede configurar por separado.
- No se admiten los datos de SOAR: Los datos de Google Security Operations SOAR (search_everything_db) no se admiten en la Exportación avanzada a BigQuery.
- No se admite la federación entre regiones: Las suscripciones de MSSP de concentrador y radios se admiten dentro de la misma región. No se admite la federación entre regiones (por ejemplo, de EE.UU. a Europa).
- Es posible que haya eventos duplicados (menos del 1% de probabilidad): Si bien el sistema usa combinaciones de DML para controlar la eliminación de duplicados de forma automática, debido a la naturaleza de la transmisión distribuida, existe una posibilidad remota (menos del 1%) de que aparezcan eventos duplicados durante las ventanas de transferencia de casos extremos antes de que se complete la combinación en segundo plano.
- Se puede acceder a los datos históricos, pero se requieren métodos específicos: La exportación de datos comienza en el momento en que se habilita la Exportación avanzada de BigQuery, y se puede seguir accediendo a los datos anteriores en tu proyecto existente. Para consultar los datos exportados antes de la activación de la Exportación avanzada de BigQuery, debes usar una sola consulta que una los datos de ambos proyectos o ejecutar dos consultas separadas en los proyectos respectivos (una para el conjunto de datos anterior y otra para el conjunto de datos nuevo).
Solución de problemas y asistencia
En la siguiente tabla, se proporcionan soluciones para los problemas comunes que puedes encontrar:
| Síntoma observado | Causa posible | Acción recomendada |
|---|---|---|
Las consultas fallan con Access Denied: User does not have permission. | La cuenta de usuario o de servicio no tiene los roles de IAM de BigQuery necesarios en el proyecto Google Cloud vinculado a tu instancia de Google SecOps. | Otorga los roles de Visualizador de datos de BigQuery y Usuario de trabajo de BigQuery a la principal. Verifica esto con gcloud projects get-iam-policy YOUR_PROJECT_ID --flatten="bindings.members" --format='table(bindings.role)' --filter="bindings.members:user:your-user@example.com" |
El conjunto de datos secops_linked_datalake no está visible en mi proyecto de BigQuery. | 1. No estás en el proyecto Google Cloud correcto. 2. Tu organización no está en el nivel de Enterprise Plus. 3. Tu organización se encuentra en el nivel Enterprise Plus, pero la exportación avanzada de BigQuery no está habilitada en tu instancia de Google SecOps. | 1. En la consola de Google Cloud , verifica que hayas seleccionado el proyecto vinculado a tu instancia de Google SecOps. 2. Comunícate con tu representante de Google para confirmar el nivel de tu licencia de Google SecOps. 3. Comunícate con tu representante de Google SecOps y pídele que habilite la exportación avanzada de BigQuery en tu instancia de Google SecOps. |
La llamada a la API falla con un error de permiso para ProvisionPartnerSubscription o FetchSubscriptions | La identidad de llamada no tiene los permisos necesarios. | Asegúrate de que la cuenta de servicio o el usuario que realiza la llamada tenga el rol de IAM de administrador de la API de Chronicle, que incluye permisos en el recurso de instancia del centro. |
| Faltan columnas personalizadas o hay una discrepancia en el esquema | Se incorporó un nuevo tipo de registro o un campo del UDM anidado de forma profunda. | La exportación avanzada a BigQuery usa actualizaciones dinámicas del esquema. Cuando se propagan los campos nuevos del UDM, el sistema detecta automáticamente la discrepancia del esquema, se detiene brevemente, actualiza el esquema de BigQuery y vuelve a intentar la inserción. No se requiere ninguna acción. |
Preguntas frecuentes
En las siguientes secciones, se incluyen algunas preguntas frecuentes.
¿Debo modificar mis consultas de SQL de BigQuery heredadas existentes para usar la Exportación avanzada de Google SecOps?
No. Para mantener una retrocompatibilidad del 100%, Google SecOps expone vistas (por ejemplo, events, ioc_matches) en el conjunto de datos vinculado que coinciden perfectamente con el esquema de las tablas de la función de exportación heredada de Google SecOps.
¿Puedo ajustar el período de retención de datos de mi exportación avanzada de BigQuery?
No. El período de retención de datos en la Exportación avanzada de BigQuery refleja directamente tu política de retención de datos de SecOps de Google. Cuando los datos vencen en Google SecOps, vencen automáticamente y se borran del proyecto de usuario de BigQuery.
¿Se me cobrarán las actualizaciones de DML y la deduplicación del backend?
No. Google SecOps absorbe todos los costos de almacenamiento de backend, las operaciones de inserción de transmisión y el procesamiento de DML detallado. Solo pagas por las consultas que ejecutas de forma explícita en tu BYOP.
¿Esta función está disponible para los niveles Estándar o Enterprise de Google SecOps?
No. La exportación avanzada de BigQuery (almacenamiento administrado y transmisión) es una función premium exclusiva del nivel Enterprise Plus de Google SecOps. Los clientes de Standard y Enterprise pueden usar el modelo Bring Your Own BigQuery (BYOBQ), en el que proporcionan el proyecto de BigQuery y cubren los costos de almacenamiento y procesamiento.
¿Por qué es posible que vea diferencias temporales en los recuentos entre los datos de Advanced BigQuery Export y las estadísticas que se muestran en la IU de Google Security Operations?
Pueden producirse discrepancias temporales debido a la naturaleza de transmisión casi en tiempo real de la canalización de BigQuery Export avanzada. Estas son las razones principales:
Datos que llegan tarde: La canalización de exportación está diseñada para una alta capacidad de procesamiento. La mayoría de los datos aparecen en BigQuery en un plazo de entre 5 y 10 minutos. Sin embargo, a veces, los eventos pueden llegar tarde a la canalización de procesamiento debido a retrasos en la red o problemas del sistema fuente. Si bien el sistema tiene como objetivo combinar estos eventos tardíos, puede haber un breve período en el que las estadísticas de la IU en vivo, que reflejan el estado más reciente absoluto, difieran de los datos de BigQuery que se actualizan de forma continua.
Reenriquecimiento de datos: Google SecOps enriquece continuamente los datos de eventos con la información contextual y de inteligencia contra amenazas más reciente. La Exportación avanzada de BigQuery exporta eventos según su estado en el momento del enriquecimiento inicial. Si un evento se vuelve a enriquecer con información nueva después de que se transmitió a BigQuery, es posible que esta versión actualizada no se refleje de inmediato en BigQuery. Esto puede generar diferencias al comparar con elementos de la IU que siempre muestran los datos completamente enriquecidos.
Latencia de combinación del DML: Para mantener los datos de BigQuery actualizados y controlar aspectos como los datos que llegan tarde o los posibles duplicados, la canalización usa operaciones de lenguaje de manipulación de datos (DML)
MERGEen segundo plano. Si bien estas operaciones son eficientes, no son instantáneas. Existe una latencia inherente a medida que se procesan estas combinaciones, en especial para las actualizaciones detalladas. Durante este intervalo de combinación, es posible que las consultas en BigQuery no capturen las microactualizaciones más recientes que ya son visibles en la IU de Google Security Operations.
Debido a los factores mencionados (datos tardíos, manejo del re-enriquecimiento y latencias de combinación), es posible que no siempre se produzca una coincidencia perfecta de 1:1 entre BigQuery y las estadísticas de la IU en vivo en cualquier segundo preciso. La exportación avanzada a BigQuery proporciona datos casi en tiempo real, optimizados para casos de uso como la búsqueda de amenazas, las estadísticas personalizadas y la creación de paneles, en los que la actualización de los datos en cuestión de minutos es fundamental. Para fines de auditoría que requieren coherencia absoluta en un momento determinado, considera la posibilidad de que haya diferencias transitorias menores.
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.