Recolha registos da Wiz
Este documento explica como carregar registos do Wiz para o Google Security Operations. O analisador transforma os registos formatados JSON não processados do Wiz num modelo de dados unificado (UDM). Primeiro, inicializa os valores predefinidos para os campos da UDM e, em seguida, analisa a mensagem JSON, extrai os campos relevantes, como informações do utilizador, localização, detalhes do dispositivo e resultados de segurança. A Wiz é uma plataforma de segurança na nuvem que oferece visibilidade abrangente sem agente e priorização de riscos em ambientes da AWS, Azure, OCI e Kubernetes. Google Cloud
Antes de começar
Certifique-se de que tem os seguintes pré-requisitos:
- Instância do Google SecOps
 - Acesso privilegiado ao Wiz
 
Obtenha o ID de cliente do Google SecOps
- Inicie sessão na consola Google SecOps.
 - Aceda a Definições do SIEM > Perfil.
 - Copie e guarde o ID do cliente da secção Detalhes da organização.
 
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
 - Aceda a Definições do SIEM > Agentes de recolha.
 - Transfira o ficheiro de autenticação de carregamento e guarde-o num local seguro.
 
Configure a integração no Wiz
- Inicie sessão na IU Web do Wiz.
 - Aceda à página Ligue-se ao Wiz.
 - Clique em Google Cloud Chronicle.
 - Selecione o Âmbito.
 - Introduza o seu ID de cliente do Google SecOps.
 - Introduza o endereço do ponto final da instância do Google SecOps.
- Canadá: https://northamerica-northeast2-malachiteingestion-pa.googleapis.com
 - Dammam: https://me-central2-malachiteingestion-pa.googleapis.com
 - Europa (várias regiões): https://europe-malachiteingestion-pa.googleapis.com
 - Frankfurt: https://europe-west3-malachiteingestion-pa.googleapis.com
 - Londres: https://europe-west2-malachiteingestion-pa.googleapis.com
 - Mumbai: https://asia-south1-malachiteingestion-pa.googleapis.com
 - Singapura: https://asia-southeast1-malachiteingestion-pa.googleapis.com
 - Sydney: https://australia-southeast1-malachiteingestion-pa.googleapis.com
 - Tel Aviv: https://me-west1-malachiteingestion-pa.googleapis.com
 - Tóquio: https://asia-northeast1-malachiteingestion-pa.googleapis.com
 - Região múltipla dos Estados Unidos: https://malachiteingestion-pa.googleapis.com
 - Zurique: https://europe-west6-malachiteingestion-pa.googleapis.com
 
 - Carregue o ficheiro de autenticação de carregamento.
 - Clique em Guardar.
 
Tabela de mapeamento do UDM
| Campo de registo | Mapeamento do UDM | Lógica | 
|---|---|---|
| ação | metadata.product_event_type | Mapeamento direto quando eventType está vazio. | 
| ação | principal.application | Mapeamento direto quando a ação é Report e serviceAccount.name não está vazio. | 
| actionParameters.groups | security_result.detection_fields.value | O analisador itera cada grupo em actionParameters.groups e mapeia-o para uma entrada detection_fields separada com a chave service_account_group. | 
| actionParameters.input.patch.portalVisitHistory.dateTime | additional.fields.value.string_value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo dateTime, mapeando-o para uma entrada additional.fields separada com a chave dateTime {index}. | 
| actionParameters.input.patch.portalVisitHistory.id | principal.resource.attribute.labels.value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo id, mapeando-o para uma entrada principal.resource.attribute.labels separada com a chave id {index}. | 
| actionParameters.input.patch.portalVisitHistory.name | principal.resource.attribute.labels.value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo name, mapeando-o para uma entrada principal.resource.attribute.labels separada com a chave name {index}. | 
| actionParameters.input.patch.portalVisitHistory.resourceName | principal.resource.attribute.labels.value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo resourceName, mapeando-o para uma entrada principal.resource.attribute.labels separada com a chave resourceName {index}. | 
| actionParameters.input.patch.portalVisitHistory.resourceType | principal.resource.attribute.labels.value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo resourceType, mapeando-o para uma entrada principal.resource.attribute.labels separada com a chave resourceType {index}. | 
| actionParameters.input.patch.portalVisitHistory.ruleType | principal.resource.attribute.labels.value | O analisador itera por cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo ruleType, mapeando-o para uma entrada principal.resource.attribute.labels separada com a chave ruleType {index}. | 
| actionParameters.input.patch.portalVisitHistory.type | additional.fields.value.string_value | O analisador itera cada item em actionParameters.input.patch.portalVisitHistory e extrai o campo de tipo, mapeando-o para uma entrada additional.fields separada com a chave type {index}. | 
| actionParameters.name | target.user.user_display_name | Mapeamento direto quando actionParameters.name não está vazio. | 
| actionParameters.products | security_result.detection_fields.value | O analisador itera cada produto em actionParameters.products (excluindo strings vazias e *) e mapeia-o para uma entrada detection_fields separada com a chave service_account_product. | 
| actionParameters.role | target.user.attribute.roles.name | Mapeamento direto quando actionParameters.role não está vazio. | 
| actionParameters.scopes | security_result.detection_fields.value | O analisador itera cada âmbito em actionParameters.scopes e mapeia-o para uma entrada detection_fields separada com a chave service_account_scope. | 
| actionParameters.selection | additional.fields.value.list_value.values.string_value | O analisador itera cada item em actionParameters.selection.preferences e mapeia-o para uma entrada string_value separada em additional.fields.value.list_value.values. | 
| actionParameters.userEmail | target.user.email_addresses | Extraído através de um padrão grok e mapeado quando não está vazio. | 
| actionParameters.userID | target.user.userid | Mapeamento direto quando actionParameters.userID não está vazio. | 
| actor.displayName | target.user.user_display_name | Mapeamento direto quando actor.displayName não está vazio e não é unknown. | 
| actor.id | target.user.userid | Mapeamento direto quando actor.id não está vazio. | 
| authenticationContext.authenticationProvider | security_result.detection_fields.value | Mapeado para uma entrada detection_fields com a chave authenticationProvider quando não está vazia. | 
| authenticationContext.credentialProvider | security_result.detection_fields.value | Mapeado para uma entrada detection_fields com a chave credentialProvider quando não está vazia. | 
| authenticationContext.credentialType | extensions.auth.mechanism | Usado para derivar o valor de extensions.auth.mechanism com base em valores específicos. | 
| authenticationContext.externalSessionId | network.parent_session_id | Mapeamento direto quando não está vazio e não é unknown. | 
| client.device | principal.asset.type | Usado para derivar o valor de principal.asset.type com base em valores específicos. | 
| client.geographicalContext.city | principal.location.city | Mapeamento direto quando não está vazio. | 
| client.geographicalContext.country | principal.location.country_or_region | Mapeamento direto quando não está vazio. | 
| client.geographicalContext.geolocation.lat | principal.location.region_latitude | Mapeamento direto quando não está vazio. | 
| client.geographicalContext.geolocation.lon | principal.location.region_longitude | Mapeamento direto quando não está vazio. | 
| client.geographicalContext.postalCode | additional.fields.value.string_value | Mapeado para uma entrada additional.fields com a chave Postal code quando não está vazia. | 
| client.geographicalContext.state | principal.location.state | Mapeamento direto quando não está vazio. | 
| client.ipAddress | principal.asset.ip | Unido a principal.ip e principal.asset.ip quando não está vazio. | 
| client.ipAddress | principal.ip | Unido a principal.ip e principal.asset.ip quando não está vazio. | 
| client.userAgent.browser | target.resource.attribute.labels.value | Mapeado para uma entrada target.resource.attribute.labels com a chave Browser quando não está vazia. | 
| client.userAgent.os | principal.platform | Usado para obter o valor de principal.platform com base em valores específicos. | 
| client.userAgent.rawUserAgent | network.http.user_agent | Mapeamento direto quando não está vazio. | 
| debugContext.debugData.behaviors | security_result.description | Mapeamento direto quando não está vazio. | 
| debugContext.debugData.deviceFingerprint | target.asset.asset_id | Mapeado para target.asset.asset_id com o prefixo device_finger_print: quando não está vazio. | 
| debugContext.debugData.dtHash | security_result.detection_fields.value | Mapeado para uma entrada detection_fields com a chave dtHash quando não está vazia. | 
| debugContext.debugData.factor | security_result.detection_fields.value | Mapeado para uma entrada detection_fields com a chave factor quando não está vazia. | 
| debugContext.debugData.promptingPolicyTypes | security_result.detection_fields.value | Mapeado para uma entrada detection_fields com a chave promptingPolicyTypes quando não está vazia. | 
| debugContext.debugData.requestUri | extensions.auth.auth_details | Mapeamento direto quando não está vazio. | 
| eventType | metadata.event_type | Usado para derivar o valor de metadata.event_type com base em valores específicos. | 
| eventType | metadata.product_event_type | Mapeamento direto quando não está vazio. | 
| outcome.reason | security_result.category_details | Mapeamento direto quando não está vazio. | 
| outcome.result | security_result.action | Mapeado para security_result.action após a normalização com base em valores específicos. | 
| requestId | metadata.product_log_id | Mapeamento direto quando não está vazio. | 
| serviceAccount.name | principal.application | Mapeamento direto quando a ação é Report e serviceAccount.name não está vazio. | 
| sourceIP | principal.asset.ip | Extraído através de um padrão grok e unido a principal.ip e principal.asset.ip quando não está vazio e é válido. | 
| sourceIP | principal.ip | Extraído através de um padrão grok e unido a principal.ip e principal.asset.ip quando não está vazio e é válido. | 
| estado | security_result.summary | Mapeamento direto quando não está vazio. | 
| timestamp | metadata.event_timestamp | Convertido para o formato de data/hora e mapeado quando não está vazio. | 
| user.id | target.user.userid | Mapeamento direto quando actionParameters.userID está vazio e user.id não está vazio. | 
| user.name | target.user.user_display_name | Mapeamento direto quando actionParameters.name está vazio e user.name não está vazio. | 
| userAgent | network.http.user_agent | Mapeamento direto quando client.userAgent.rawUserAgent está vazio e userAgent não está vazio. | 
| extensions.auth.type | Definido como AUTHTYPE_UNSPECIFIED quando has_user é verdadeiro e a ação é Login. | 
|
| metadata.product_name | Definido como WIZ_IO. | 
|
| metadata.vendor_name | Definido como WIZ_IO. | 
|
| network.http.parsed_user_agent | Derivada de user_agent_value através da conversão para parseduseragent. | |
| security_result.severity | Derivado da gravidade com base em valores específicos, com a predefinição de LOW. | 
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.