Recopila registros de Wiz

Compatible con:

En este documento, se explica cómo transferir registros de Wiz a Google Security Operations. El analizador transforma los registros sin procesar con formato JSON de Wiz en un modelo de datos unificado (UDM). Primero, inicializa los valores predeterminados para los campos del UDM y, luego, analiza el mensaje JSON, extrae los campos pertinentes, como la información del usuario, la ubicación, los detalles del dispositivo y los resultados de seguridad. Wiz es una plataforma de seguridad en la nube que ofrece visibilidad integral y sin agentes, y priorización de riesgos en entornos de Google Cloud, AWS, Azure, OCI y Kubernetes.

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos previos:

  • Instancia de Google SecOps
  • Acceso privilegiado a Wiz

Obtén el ID de cliente de Google SecOps

  1. Accede a la consola de Google SecOps.
  2. Ve a SIEM Settings > Profile.
  3. Copia y guarda el ID de cliente de la sección Detalles de la organización.

Obtén el archivo de autenticación de transferencia de Google SecOps

  1. Accede a la consola de Google SecOps.
  2. Ve a SIEM Settings > Collection Agents.
  3. Descarga el archivo de autenticación de la transferencia y guárdalo en una ubicación segura.

Configura la integración en Wiz

  1. Accede a la IU web de Wiz.
  2. Ve a la página Conéctate a Wiz.
  3. Haz clic en Google Cloud Chronicle.
  4. Selecciona el permiso.
  5. Ingresa tu ID de cliente de Google SecOps.
  6. Ingresa la dirección del extremo de tu instancia de Google SecOps.
  7. Sube el archivo de autenticación de transferencia.
  8. Haz clic en Guardar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
acción metadata.product_event_type Asignación directa cuando eventType está vacío.
acción principal.application Asignación directa cuando la acción es Report y serviceAccount.name no está vacío.
actionParameters.groups security_result.detection_fields.value El analizador itera a través de cada grupo en actionParameters.groups y lo asigna a una entrada detection_fields separada con la clave service_account_group.
actionParameters.input.patch.portalVisitHistory.dateTime additional.fields.value.string_value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo dateTime, que asigna a una entrada adicional.fields independiente con la clave dateTime {index}.
actionParameters.input.patch.portalVisitHistory.id principal.resource.attribute.labels.value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo id, que asigna a una entrada principal.resource.attribute.labels independiente con la clave id {index}.
actionParameters.input.patch.portalVisitHistory.name principal.resource.attribute.labels.value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo name, que asigna a una entrada independiente de principal.resource.attribute.labels con la clave name {index}.
actionParameters.input.patch.portalVisitHistory.resourceName principal.resource.attribute.labels.value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo resourceName, asignándolo a una entrada principal.resource.attribute.labels independiente con la clave resourceName {index}.
actionParameters.input.patch.portalVisitHistory.resourceType principal.resource.attribute.labels.value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo resourceType, asignándolo a una entrada independiente principal.resource.attribute.labels con la clave resourceType {index}.
actionParameters.input.patch.portalVisitHistory.ruleType principal.resource.attribute.labels.value El analizador itera cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo ruleType, que asigna a una entrada independiente de principal.resource.attribute.labels con la clave ruleType {index}.
actionParameters.input.patch.portalVisitHistory.type additional.fields.value.string_value El analizador itera a través de cada elemento de actionParameters.input.patch.portalVisitHistory y extrae el campo type, que asigna a una entrada adicional.fields independiente con la clave type {index}.
actionParameters.name target.user.user_display_name Asignación directa cuando actionParameters.name no está vacío.
actionParameters.products security_result.detection_fields.value El analizador itera a través de cada producto en actionParameters.products (sin incluir cadenas vacías ni *) y lo asigna a una entrada detection_fields independiente con la clave service_account_product.
actionParameters.role target.user.attribute.roles.name Asignación directa cuando actionParameters.role no está vacío.
actionParameters.scopes security_result.detection_fields.value El analizador itera a través de cada alcance en actionParameters.scopes y lo asigna a una entrada detection_fields separada con la clave service_account_scope.
actionParameters.selection additional.fields.value.list_value.values.string_value El analizador itera cada elemento de actionParameters.selection.preferences y lo asigna a una entrada string_value separada dentro de additional.fields.value.list_value.values.
actionParameters.userEmail target.user.email_addresses Se extrae con un patrón de Grok y se asigna cuando no está vacío.
actionParameters.userID target.user.userid Asignación directa cuando actionParameters.userID no está vacío.
actor.displayName target.user.user_display_name Asignación directa cuando actor.displayName no está vacío y no es unknown.
actor.id target.user.userid Asignación directa cuando actor.id no está vacío.
authenticationContext.authenticationProvider security_result.detection_fields.value Se asigna a una entrada detection_fields con la clave authenticationProvider cuando no está vacío.
authenticationContext.credentialProvider security_result.detection_fields.value Se asigna a una entrada detection_fields con la clave credentialProvider cuando no está vacío.
authenticationContext.credentialType extensions.auth.mechanism Se usa para derivar el valor de extensions.auth.mechanism en función de valores específicos.
authenticationContext.externalSessionId network.parent_session_id Asignación directa cuando no está vacío y no es unknown.
client.device principal.asset.type Se usa para derivar el valor de principal.asset.type en función de valores específicos.
client.geographicalContext.city principal.location.city Es la asignación directa cuando no está vacío.
client.geographicalContext.country principal.location.country_or_region Es la asignación directa cuando no está vacío.
client.geographicalContext.geolocation.lat principal.location.region_latitude Es la asignación directa cuando no está vacío.
client.geographicalContext.geolocation.lon principal.location.region_longitude Es la asignación directa cuando no está vacío.
client.geographicalContext.postalCode additional.fields.value.string_value Se asigna a una entrada additional.fields con la clave Postal code cuando no está vacío.
client.geographicalContext.state principal.location.state Es la asignación directa cuando no está vacío.
client.ipAddress principal.asset.ip Se combina con principal.ip y principal.asset.ip cuando no está vacío.
client.ipAddress principal.ip Se combina con principal.ip y principal.asset.ip cuando no está vacío.
client.userAgent.browser target.resource.attribute.labels.value Se asigna a una entrada target.resource.attribute.labels con la clave Browser cuando no está vacío.
client.userAgent.os principal.platform Se usa para derivar el valor de principal.platform en función de valores específicos.
client.userAgent.rawUserAgent network.http.user_agent Es la asignación directa cuando no está vacío.
debugContext.debugData.behaviors security_result.description Es la asignación directa cuando no está vacío.
debugContext.debugData.deviceFingerprint target.asset.asset_id Se asigna a target.asset.asset_id con el prefijo device_finger_print: cuando no está vacío.
debugContext.debugData.dtHash security_result.detection_fields.value Se asigna a una entrada detection_fields con la clave dtHash cuando no está vacío.
debugContext.debugData.factor security_result.detection_fields.value Se asigna a una entrada detection_fields con la clave factor cuando no está vacío.
debugContext.debugData.promptingPolicyTypes security_result.detection_fields.value Se asigna a una entrada detection_fields con la clave promptingPolicyTypes cuando no está vacío.
debugContext.debugData.requestUri extensions.auth.auth_details Es la asignación directa cuando no está vacío.
eventType metadata.event_type Se usa para derivar el valor de metadata.event_type en función de valores específicos.
eventType metadata.product_event_type Es la asignación directa cuando no está vacío.
outcome.reason security_result.category_details Es la asignación directa cuando no está vacío.
outcome.result security_result.action Se asigna a security_result.action después de la normalización según valores específicos.
requestId metadata.product_log_id Es la asignación directa cuando no está vacío.
serviceAccount.name principal.application Asignación directa cuando la acción es Report y serviceAccount.name no está vacío.
sourceIP principal.asset.ip Se extrae con un patrón de Grok y se combina con principal.ip y principal.asset.ip cuando no está vacío y es válido.
sourceIP principal.ip Se extrae con un patrón de Grok y se combina con principal.ip y principal.asset.ip cuando no está vacío y es válido.
estado security_result.summary Es la asignación directa cuando no está vacío.
timestamp metadata.event_timestamp Se convierte al formato de marca de tiempo y se asigna cuando no está vacío.
user.id target.user.userid Se asigna directamente cuando actionParameters.userID está vacío y user.id no está vacío.
user.name target.user.user_display_name Asignación directa cuando actionParameters.name está vacío y user.name no está vacío.
userAgent network.http.user_agent Asignación directa cuando client.userAgent.rawUserAgent está vacío y userAgent no está vacío.
extensions.auth.type Se establece en AUTHTYPE_UNSPECIFIED cuando has_user es verdadero y la acción es Login.
metadata.product_name Se define en WIZ_IO.
metadata.vendor_name Se define en WIZ_IO.
network.http.parsed_user_agent Se deriva de user_agent_value convirtiéndolo en parseduseragent.
security_result.severity Se deriva de la gravedad según valores específicos y, de forma predeterminada, se establece en LOW.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.