Recoger registros de eventos de abuso de Google Cloud

Disponible en:

En este documento se describe cómo puede recoger registros de eventos de abuso de Google Cloud habilitando la Google Cloud ingestión de telemetría en Google SecOps y cómo se asignan los campos de registro de eventos de abuso de Google Cloud a los campos del modelo de datos unificado (UDM) de Google SecOps.

Para obtener más información, consulta Ingestión de datos en Google Security Operations.

La implementación contiene los siguientes componentes:

  • Google Cloud: los Google Cloud servicios y productos de los que recoges registros.

  • Registros de eventos de abuso de Google Cloud: los registros de eventos de abuso de Google Cloud que se han habilitado para la ingesta en Google SecOps.

  • Google SecOps: Google SecOps conserva y analiza los registros de eventos de abuso de Google Cloud.

Una etiqueta de ingestión identifica el analizador que normaliza los datos de registro sin procesar en formato UDM estructurado. La información de este documento se aplica al analizador con la etiqueta de ingestión GCP_ABUSE_EVENTS.

Antes de empezar

Asegúrate de que todos los sistemas de la arquitectura de implementación estén configurados en la zona horaria UTC.

Configurar Google Cloud para ingerir registros de eventos de abuso de Google Cloud

Para ingerir registros de eventos de abuso de Google Cloud en Google SecOps, sigue los pasos que se indican en el artículo sobre cómo ingerir Google Cloud registros en Google SecOps.

Una implementación típica consiste en habilitar los registros de eventos de abuso de Google Cloud para que se ingieran en Google SecOps. Cada implementación de cliente puede ser diferente de esta representación y puede ser más compleja.

Si tienes problemas al ingerir registros de eventos de abuso de Google Cloud, ponte en contacto con el equipo de Asistencia de Google SecOps.

Formato de registro y ejemplo de eventos de abuso de Google Cloud admitidos

El analizador de eventos de abuso de Google Cloud admite registros en formato JSON. A continuación, se muestra un ejemplo:

    {
        "insertId": "dummy-insert-id",
        "jsonPayload": {
            "action": "NOTIFY",
            "@type": "type.googleapis.com/google.cloud.abuseevent.logging.v1.AbuseEvent",
            "cryptoMiningEvent": {
                "detectedMiningEndTime": "2048-03-18T07: 10: 00Z",
                "detectedMiningStartTime": "2016-07-10T05: 24: 00Z",
                "vmIp": [
                    "dummy.ip.address.1",
                    "dummy.ip.address.2",
                    "dummy.ip.address.3"
                ],
                "vmResource": [
                    "projects/dummy-project-id/zones/dummy-zone/instances/dummy-instance-id"
                ]
            },
            "detectionType": "CRYPTO_MINING",
            "reason": "The monitored resource is mining cryptocurrencies",
            "remediationLink": "https://dummy-remediation-link"
        },
        "resource": {
            "type": "abuseevent.googleapis.com/Location",
            "labels": {
                "location": "global",
                "resource_container": "projects/dummy-resource-container-id"
            }
        },
        "timestamp": "2025-07-10T17:31:53.966189618Z",
        "severity": "NOTICE",
        "labels": {
            "abuseevent.googleapis.com/vm_resource": "projects/dummy-project-id/zones/dummy-zone/instances/dummy-instance-id"
        },
        "logName": "projects/dummy-project-id/logs/abuseevent.googleapis.com%2Fabuse_events",
        "receiveTimestamp": "2025-07-10T17:31:54.754890208Z"
    }

Referencia de asignación de campos

Referencia de la asignación de campos: GCP_ABUSE_EVENTS

En la siguiente tabla se enumeran los campos de registro y los campos de UDM correspondientes.

Log field UDM mapping Logic
metadata.event_type The metadata.event_type UDM field is set to SCAN_UNCATEGORIZED.
metadata.vendor_name The metadata.vendor_name UDM field is set to Google Cloud Platform.
metadata.product_name The metadata.product_name UDM field is set to GCP Abuse Events.
insertId metadata.product_log_id
resource.type target.resource.resource_subtype
resource.labels.location target.location.name
timestamp metadata.event_timestamp
security_result.severity If the severity log field value is equal to CRITICAL then, the security_result.severity UDM field is set to CRITICAL.
Else, if severity log field value is equal to ERROR then, the security_result.severity UDM field is set to ERROR.
Else, if severity log field value contain one of the following values
  • ALERT
  • EMERGENCY
then, the security_result.severity UDM field is set to HIGH.
Else, if severity log field value contain one of the following values
  • INFO
  • NOTICE
then, the security_result.severity UDM field is set to INFORMATIONAL.
Else, if severity log field value is equal to DEBUG then, the security_result.severity UDM field is set to LOW.
Else, if severity log field value is equal to WARNING then, the security_result.severity UDM field is set to MEDIUM.
Else, the security_result.severity UDM field is set to UNKNOWN_SEVERITY.
severity security_result.severity_details
logName metadata.url_back_to_product
receiveTimestamp metadata.collected_timestamp
jsonPayload.detectionType security_result.category_details
security_result.category If the security_result.category_mapping log field value is equal to DETECTION_TYPE_UNSPECIFIED then, the security_result.category UDM field is set to UNKNOWN_CATEGORY.
Else, if security_result.category_mapping log field value is equal to CRYPTO_MINING then, the security_result.category UDM field is set to EXPLOIT.
Else, if security_result.category_mapping log field value is equal to LEAKED_CREDENTIALS then, the security_result.category UDM field is set to PHISHING.
Else, if security_result.category_mapping log field value is equal to PHISHING then, the security_result.category UDM field is set to PHISHING.
Else, if security_result.category_mapping log field value is equal to MALWARE then, the security_result.category UDM field is set to SOFTWARE_MALICIOUS.
Else, if security_result.category_mapping log field value is equal to NO_ABUSE then, the security_result.category UDM field is set to POLICY_VIOLATION.
jsonPayload.reason security_result.description
security_result.action If the jsonPayload.action log field value is equal to ACTION_TYPE_UNSPECIFIED then, the security_result.action UDM field is set to UNKNOWN_ACTION.
Else, if the jsonPayload.action log field value is equal to NOTIFY then, the security_result.action UDM field is set to ALLOW.
Else, if the jsonPayload.action log field value is equal to PROJECT_SUSPENSION then, the security_result.action UDM field is set to BLOCK.
Else, if the jsonPayload.action log field value is equal to REINSTATE then, the security_result.action UDM field is set to ALLOW.
Else, if the jsonPayload.action log field value is equal to WARN then, the security_result.action UDM field is set to ALLOW.
Else, if the jsonPayload.action log field value is equal to RESOURCE_SUSPENSION then, the security_result.action UDM field is set to BLOCK.
labels.abuseevent.googleapis.com/vm_resource principal.resource.name
principal.resource.resource_type If the event_type.crypto_mining_event.vm_resource log field value is not empty then, the target.resource.resource_type UDM field is set to VIRTUAL_MACHINE.
jsonPayload.cryptoMiningEvent.detectedMiningStartTime security_result.detection_fields[detected_mining_start_time]
jsonPayload.cryptoMiningEvent.detectedMiningEndTime security_result.detection_fields[detected_mining_end_time]
jsonPayload.cryptoMiningEvent.vmIp principal.ip
jsonPayload.leaked_credential_event.credential_type.service_account_credential.service_account.service_account principal.user.userid
jsonPayload.leaked_credential_event.credential_type.service_account_credential.service_account.key_id principal.user.attribute.labels[service_account_key_id]
jsonPayload.leakedCredentialEvent.apiKeyCredential.apiKey principal.user.attribute.labels[api_key_credential_api_key]
jsonPayload.leakedCredentialEvent.detectedUri security_result.about.url
jsonPayload.harmfulContentEvent.uri security_result.detection_fields[harmful_content_event_uri]
jsonPayload.remediationLink security_result.detection_fields[remediation_link]
jsonPayload.@type security_result.detection_fields[jsonPayload_type]
resource.labels.resource_container principal.resource.attribute.labels[resource_container]

Siguientes pasos

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.