Collecter les journaux Wiz

Compatible avec:

Ce document explique comment ingérer les journaux Wiz dans Google Security Operations. L'analyseur transforme les journaux bruts au format JSON de Wiz en Unified Data Model (UDM). Il initialise d'abord les valeurs par défaut pour les champs UDM, puis analyse le message JSON, extrait les champs pertinents tels que les informations utilisateur, l'emplacement, les détails de l'appareil et les résultats de sécurité. Wiz est une plate-forme de sécurité cloud qui offre une visibilité de bout en bout sans agent et une hiérarchisation des risques dans les environnementsGoogle Cloud, AWS, Azure, OCI et Kubernetes.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Instance Google SecOps
  • Accès privilégié à Wiz

Obtenir le numéro client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Profil.
  3. Copiez et sauvegardez le numéro client dans la section Détails de l'organisation.

Obtenir le fichier d'authentification d'ingestion Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Agents de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion. Enregistrez le fichier de manière sécurisée sur le système sur lequel Bindplane sera installé.

Configurer l'intégration dans Wiz

  1. Connectez-vous à l'interface utilisateur Web de Wiz.
  2. Accédez à la page Se connecter à Wiz.
  3. Cliquez sur Google Cloud Chronicle.
  4. Sélectionnez la Portée.
  5. Saisissez votre numéro client Google SecOps.
  6. Saisissez l'adresse du point de terminaison de votre instance Google SecOps [Chronicle] :

  7. Importez la clé de compte de service Google.

  8. Cliquez sur Enregistrer.

Tableau de mappage UDM

Champ du journal Mappage UDM Logique
action metadata.product_event_type Mise en correspondance directe lorsque eventType est vide.
action principal.application Mappage direct lorsque l'action est Report et que serviceAccount.name n'est pas vide.
actionParameters.groups security_result.detection_fields.value L'analyseur itère sur chaque groupe dans actionParameters.groups et le met en correspondance avec une entrée detection_fields distincte avec la clé service_account_group.
actionParameters.input.patch.portalVisitHistory.dateTime additional.fields.value.string_value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ dateTime, en le mappant sur une entrée additional.fields distincte avec la clé dateTime {index}.
actionParameters.input.patch.portalVisitHistory.id principal.resource.attribute.labels.value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ d'ID, en le mappant sur une entrée principal.resource.attribute.labels distincte avec la clé id {index}.
actionParameters.input.patch.portalVisitHistory.name principal.resource.attribute.labels.value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ "name", en le mappant sur une entrée principal.resource.attribute.labels distincte avec la clé name {index}.
actionParameters.input.patch.portalVisitHistory.resourceName principal.resource.attribute.labels.value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ resourceName, en le mappant sur une entrée principal.resource.attribute.labels distincte avec la clé resourceName {index}.
actionParameters.input.patch.portalVisitHistory.resourceType principal.resource.attribute.labels.value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ resourceType, en le mappant sur une entrée principal.resource.attribute.labels distincte avec la clé resourceType {index}.
actionParameters.input.patch.portalVisitHistory.ruleType principal.resource.attribute.labels.value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ ruleType, en le mappant sur une entrée principal.resource.attribute.labels distincte avec la clé ruleType {index}.
actionParameters.input.patch.portalVisitHistory.type additional.fields.value.string_value L'analyseur itère sur chaque élément de actionParameters.input.patch.portalVisitHistory et extrait le champ "type", en le mappant sur une entrée additional.fields distincte avec la clé type {index}.
actionParameters.name target.user.user_display_name Mappage direct lorsque actionParameters.name n'est pas vide.
actionParameters.products security_result.detection_fields.value L'analyseur itère sur chaque produit dans actionParameters.products (à l'exception des chaînes vides et de *) et le met en correspondance avec une entrée detection_fields distincte avec la clé service_account_product.
actionParameters.role target.user.attribute.roles.name Mappage direct lorsque actionParameters.role n'est pas vide.
actionParameters.scopes security_result.detection_fields.value L'analyseur itère sur chaque champ d'action dans actionParameters.scopes et le met en correspondance avec une entrée de détection_fields distincte avec la clé service_account_scope.
actionParameters.selection additional.fields.value.list_value.values.string_value L'analyseur itère sur chaque élément de actionParameters.selection.preferences et le met en correspondance avec une entrée string_value distincte dans additional.fields.value.list_value.values.
actionParameters.userEmail target.user.email_addresses Extrait à l'aide d'un modèle Grok et mappé lorsqu'il n'est pas vide.
actionParameters.userID target.user.userid Mappage direct lorsque actionParameters.userID n'est pas vide.
actor.displayName target.user.user_display_name Mappage direct lorsque actor.displayName n'est pas vide et n'est pas unknown.
actor.id target.user.userid Mappage direct lorsque actor.id n'est pas vide.
authenticationContext.authenticationProvider security_result.detection_fields.value Mappé sur une entrée "detection_fields" avec la clé authenticationProvider lorsqu'il n'est pas vide.
authenticationContext.credentialProvider security_result.detection_fields.value Mappé sur une entrée "detection_fields" avec la clé credentialProvider lorsqu'il n'est pas vide.
authenticationContext.credentialType extensions.auth.mechanism Permet de déduire la valeur de extensions.auth.mechanism en fonction de valeurs spécifiques.
authenticationContext.externalSessionId network.parent_session_id Mappage direct lorsqu'il n'est pas vide et qu'il ne correspond pas à unknown.
client.device principal.asset.type Permet de déduire la valeur de principal.asset.type en fonction de valeurs spécifiques.
client.geographicalContext.city principal.location.city Mappage direct lorsqu'il n'est pas vide.
client.geographicalContext.country principal.location.country_or_region Mappage direct lorsqu'il n'est pas vide.
client.geographicalContext.geolocation.lat principal.location.region_latitude Mappage direct lorsqu'il n'est pas vide.
client.geographicalContext.geolocation.lon principal.location.region_longitude Mappage direct lorsqu'il n'est pas vide.
client.geographicalContext.postalCode additional.fields.value.string_value Mappé sur une entrée additional.fields avec la clé Postal code lorsqu'elle n'est pas vide.
client.geographicalContext.state principal.location.state Mappage direct lorsqu'il n'est pas vide.
client.ipAddress principal.asset.ip Fusionné avec principal.ip et principal.asset.ip lorsqu'il n'est pas vide.
client.ipAddress principal.ip Fusionné avec principal.ip et principal.asset.ip lorsqu'il n'est pas vide.
client.userAgent.browser target.resource.attribute.labels.value Mappé sur une entrée target.resource.attribute.labels avec la clé Browser lorsqu'il n'est pas vide.
client.userAgent.os principal.platform Permet de déduire la valeur de principal.platform en fonction de valeurs spécifiques.
client.userAgent.rawUserAgent network.http.user_agent Mappage direct lorsqu'il n'est pas vide.
debugContext.debugData.behaviors security_result.description Mappage direct lorsqu'il n'est pas vide.
debugContext.debugData.deviceFingerprint target.asset.asset_id Correspond à target.asset.asset_id avec le préfixe device_finger_print: lorsqu'il n'est pas vide.
debugContext.debugData.dtHash security_result.detection_fields.value Mappé sur une entrée "detection_fields" avec la clé dtHash lorsqu'il n'est pas vide.
debugContext.debugData.factor security_result.detection_fields.value Mappé sur une entrée "detection_fields" avec la clé factor lorsqu'il n'est pas vide.
debugContext.debugData.promptingPolicyTypes security_result.detection_fields.value Mappé sur une entrée "detection_fields" avec la clé promptingPolicyTypes lorsqu'il n'est pas vide.
debugContext.debugData.requestUri extensions.auth.auth_details Mappage direct lorsqu'il n'est pas vide.
eventType metadata.event_type Permet d'obtenir la valeur de metadata.event_type en fonction de valeurs spécifiques.
eventType metadata.product_event_type Mappage direct lorsqu'il n'est pas vide.
outcome.reason security_result.category_details Mappage direct lorsqu'il n'est pas vide.
outcome.result security_result.action Mappé sur security_result.action après normalisation en fonction de valeurs spécifiques.
requestId metadata.product_log_id Mappage direct lorsqu'il n'est pas vide.
serviceAccount.name principal.application Mappage direct lorsque l'action est Report et que serviceAccount.name n'est pas vide.
sourceIP principal.asset.ip Extrait à l'aide d'un format grok et fusionné avec principal.ip et principal.asset.ip lorsqu'il n'est pas vide et valide.
sourceIP principal.ip Extrait à l'aide d'un format grok et fusionné avec principal.ip et principal.asset.ip lorsqu'il n'est pas vide et valide.
état security_result.summary Mappage direct lorsqu'il n'est pas vide.
timestamp metadata.event_timestamp Converti au format d'horodatage et mappé lorsqu'il n'est pas vide.
user.id target.user.userid Mappage direct lorsque actionParameters.userID est vide et que user.id ne l'est pas.
nom.utilisateur target.user.user_display_name Mappage direct lorsque actionParameters.name est vide et que user.name n'est pas vide.
userAgent network.http.user_agent Mappage direct lorsque client.userAgent.rawUserAgent est vide et que userAgent ne l'est pas.
extensions.auth.type Définissez-le sur AUTHTYPE_UNSPECIFIED lorsque "has_user" est défini sur "true" et que l'action est Login.
metadata.product_name Variable définie sur WIZ_IO.
metadata.vendor_name Variable définie sur WIZ_IO.
network.http.parsed_user_agent Dérivé de user_agent_value en le convertissant en parseduseragent.
security_result.severity Dérivé de la gravité en fonction de valeurs spécifiques, la valeur par défaut étant LOW.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.