Enriquecer datos de eventos y entidades con Google SecOps

Disponible en:

En este documento se describe cómo enriquece Google Security Operations los datos y los campos del modelo de datos unificado (UDM) en los que se almacenan los datos.

Para llevar a cabo una investigación de seguridad, Google SecOps ingiere datos contextuales de diferentes fuentes, analiza los datos y proporciona contexto adicional sobre los artefactos en un entorno de cliente. Los analistas pueden usar datos enriquecidos contextualmente en reglas de Detection Engine, búsquedas de investigación o informes.

Google SecOps realiza los siguientes tipos de enriquecimiento:

Los parámetros entity_type, product_name y vendor_name identifican los datos enriquecidos de las siguientes fuentes:

  • Navegación segura
  • WHOIS
  • Google Cloud Inteligencia frente a amenazas (GCTI)
  • Metadatos de VirusTotal
  • Datos de relaciones de VirusTotal

Cuando cree una regla que use estos datos enriquecidos (es decir, datos enriquecidos de Navegación segura, WHOIS, GCTI Threat Intelligence, metadatos de VirusTotal y datos de relaciones de VirusTotal), le recomendamos que incluya un filtro en la regla que identifique el tipo de enriquecimiento específico que quiera incluir. Este filtro ayuda a mejorar el rendimiento de la regla. Por ejemplo, incluya los siguientes campos de filtro en la sección events de la regla que une los datos de WHOIS.

$enrichment.graph.metadata.entity_type = "DOMAIN_NAME"
$enrichment.graph.metadata.product_name = "WHOISXMLAPI Simple Whois"
$enrichment.graph.metadata.vendor_name = "WHOIS"

Enriquecer entidades mediante el gráfico de entidades y la combinación

El gráfico de entidades identifica las relaciones entre las entidades y los recursos de tu entorno. Cuando se ingieren entidades de diferentes fuentes en Google SecOps, el gráfico de entidades mantiene una lista de adyacencia basada en la relación entre las entidades. El gráfico de entidades enriquece el contexto mediante la deduplicación y la combinación.

Durante la deduplicación, se eliminan los datos redundantes y se forman intervalos para crear una entidad común. Por ejemplo, supongamos que tenemos dos entidades, e1 y e2, con las marcas de tiempo t1 y t2, respectivamente. Las entidades e1 y e2 se desduplican y las marcas de tiempo que son diferentes no se usan durante la desduplicación. Los siguientes campos no se usan durante la deduplicación:

  • collected_timestamp
  • creation_timestamp
  • interval

Durante la combinación, se forman relaciones entre las entidades durante un intervalo de un día. Por ejemplo, supongamos que hay un registro de entidad de user A que tiene acceso a un segmento de Cloud Storage. Hay otro registro de entidad de user A que tiene un dispositivo. Después de la combinación, estas dos entidades se convierten en una sola entidad user A que tiene dos relaciones. Una relación es que user A tiene acceso al segmento de Cloud Storage y la otra es que user A es el propietario del dispositivo. Google SecOps crea datos de contexto de entidad con un periodo retrospectivo de cinco días. Este proceso gestiona los datos que llegan tarde y crea un tiempo de vida implícito para los datos de contexto de la entidad.

Google SecOps usa alias para enriquecer los datos de telemetría y gráficos de entidades para enriquecer las entidades. Las reglas del motor de detección combinan las entidades fusionadas con los datos de telemetría enriquecidos para proporcionar analíticas contextuales.

Un evento que contiene un sustantivo de entidad se considera una entidad. A continuación se indican algunos tipos de eventos y los tipos de entidad correspondientes:

  • ASSET_CONTEXT corresponde a ASSET.
  • RESOURCE_CONTEXT corresponde a RESOURCE.
  • USER_CONTEXT corresponde a USER.
  • GROUP_CONTEXT corresponde a GROUP.

El gráfico de entidades distingue entre los datos contextuales y los indicadores de riesgo (IOC) mediante la información sobre amenazas.

Cuando utilice datos enriquecidos contextualmente, tenga en cuenta el siguiente comportamiento del gráfico de entidades:

  • No añadas intervalos en la entidad, sino que deja que el gráfico de entidades cree los intervalos. Esto se debe a que los intervalos se generan durante la deduplicación, a menos que se especifique lo contrario.
  • Si se especifican los intervalos, solo se eliminarán los eventos duplicados y se conservará la entidad más reciente.
  • Para que las reglas activas y las búsquedas retrospectivas funcionen correctamente, las entidades deben ingerirse al menos una vez al día.
  • Si las entidades no se ingieren a diario y solo se ingieren una vez cada dos días o más, es posible que las reglas activas funcionen correctamente, pero las búsquedas retrospectivas podrían perder el contexto del evento.
  • Si las entidades se ingieren más de una vez al día, se desduplican en una sola entidad.
  • Si faltan datos de eventos de un día, se usan temporalmente los datos del día anterior para asegurarse de que las reglas activas funcionan correctamente.

El gráfico de entidades también combina eventos que tienen identificadores similares para obtener una vista consolidada de los datos. Esta combinación se lleva a cabo en función de la siguiente lista de identificadores:

  • Asset
    • entity.asset.product_object_id
    • entity.asset.hostname
    • entity.asset.asset_id
    • entity.asset.mac
  • User
    • entity.user.product_object_id
    • entity.user.userid
    • entity.user.windows_sid
    • entity.user.email_addresses
    • entity.user.employee_id
  • Resource
    • entity.resource.product_object_id
    • entity.resource.name
  • Group
    • entity.group.product_object_id
    • entity.group.email_addresses
    • entity.group.windows_sid

Calcular estadísticas de prevalencia

Google SecOps realiza análisis estadísticos de los datos actuales y entrantes, y enriquece los registros de contexto de las entidades con métricas relacionadas con la prevalencia.

La prevalencia es un valor numérico que indica la popularidad de una entidad. La popularidad se define por el número de recursos que acceden a un artefacto, como un dominio, un hash de archivo o una dirección IP. Cuanto mayor sea el número, más popular será la entidad. Por ejemplo, google.com tiene valores de prevalencia altos porque se accede a él con frecuencia. Si se accede a un dominio con poca frecuencia, tendrá valores de prevalencia más bajos. Las entidades más populares suelen tener menos probabilidades de ser maliciosas.

Estos valores enriquecidos se admiten en dominios, IPs y archivos (hash). Los valores se calculan y se almacenan en los campos siguientes.

Las estadísticas de prevalencia de cada entidad se actualizan cada día. Los valores se almacenan en un contexto de entidad independiente que puede usar Detection Engine, pero no se muestra en las vistas de investigación de Google SecOps ni en la búsqueda de UDM.

Los siguientes campos se pueden usar al crear reglas de Detection Engine.

Tipo de entidad Campos de UDM
Dominio entity.domain.prevalence.day_count
entity.domain.prevalence.day_max
entity.domain.prevalence.day_max_sub_domains
entity.domain.prevalence.rolling_max
entity.domain.prevalence.rolling_max_sub_domains
Archivo (hash) entity.file.prevalence.day_count
entity.file.prevalence.day_max
entity.file.prevalence.rolling_max
Dirección IP entity.artifact.prevalence.day_count
entity.artifact.prevalence.day_max
entity.artifact.prevalence.rolling_max

Los valores day_max y rolling_max se calculan de forma diferente. Los campos se calculan de la siguiente manera:

  • day_max se calcula como la puntuación de prevalencia máxima del artefacto durante el día, donde un día se define como el periodo comprendido entre las 00:00:00 y las 23:59:59 UTC.
  • rolling_max se calcula como la puntuación de prevalencia máxima por día (es decir, day_max) del artefacto durante los 10 días anteriores.
  • day_count se usa para calcular rolling_max y siempre tiene el valor 10.

Cuando se calcula para un dominio, la diferencia entre day_max y day_max_sub_domains (y entre rolling_max y rolling_max_sub_domains) es la siguiente:

  • rolling_max y day_max representan el número de direcciones IP internas únicas diarias que acceden a un dominio determinado (sin incluir los subdominios).
  • rolling_max_sub_domains y day_max_sub_domains representan el número de direcciones IP internas únicas que acceden a un dominio determinado (incluidos los subdominios).

Las estadísticas de prevalencia se calculan a partir de los datos de las entidades recién incorporados. Los cálculos no se realizan de forma retroactiva en los datos ingeridos anteriormente. Las estadísticas tardan aproximadamente 36 horas en calcularse y almacenarse.

Calcula las horas de primera y última vez que se han visto las entidades

Google SecOps realiza análisis estadísticos de los datos entrantes y enriquece los registros de contexto de las entidades con las horas de primera y última vez que se ha visto una entidad. El campo first_seen_time almacena la fecha y la hora en las que la entidad se detectó por primera vez en el entorno del cliente. El campo last_seen_time almacena la fecha y la hora de la observación más reciente.

Como varios indicadores (campos UDM) pueden identificar un recurso o un usuario, la hora de primera vez que se ha visto es la primera vez que se ha visto alguno de los indicadores que identifican al usuario o al recurso en el entorno del cliente.

Todos los campos UDM que describen un recurso son los siguientes:

  • entity.asset.hostname
  • entity.asset.ip
  • entity.asset.mac
  • entity.asset.asset_id
  • entity.asset.product_object_id

Todos los campos de UDM que describen a un usuario son los siguientes:

  • entity.user.windows_sid
  • entity.user.product_object_id
  • entity.user.userid
  • entity.user.employee_id
  • entity.user.email_addresses

La hora de la primera vez que se ha visto y la hora de la última vez que se ha visto permiten a un analista correlacionar determinada actividad que se ha producido después de que se haya visto por primera vez un dominio, un archivo (hash), un recurso, un usuario o una dirección IP, o que ha dejado de producirse después de que se haya visto por última vez un dominio, un archivo (hash) o una dirección IP.

Los campos first_seen_time y last_seen_time se rellenan con entidades que describen un dominio, una dirección IP y un archivo (hash). En el caso de las entidades que describen un usuario o un recurso, solo se rellena el campo first_seen_time. Estos valores no se calculan para las entidades que describen otros tipos, como un grupo o un recurso.

Las estadísticas se calculan para cada entidad en todos los espacios de nombres. Google SecOps no calcula las estadísticas de cada entidad en espacios de nombres individuales. Actualmente, estas estadísticas no se exportan al esquema de Google SecOps events en BigQuery.

Los valores enriquecidos se calculan y se almacenan en los siguientes campos de UDM:

Tipo de entidad Campos de UDM
Dominio entity.domain.first_seen_time
entity.domain.last_seen_time
Archivo (hash) entity.file.first_seen_time
entity.file.last_seen_time
Dirección IP entity.artifact.first_seen_time
entity.artifact.last_seen_time
Recurso entity.asset.first_seen_time
Usuario entity.user.first_seen_time

Enriquecer eventos con datos de geolocalización

Los datos de registro entrantes pueden incluir direcciones IP externas sin la información de ubicación correspondiente. Esto suele ocurrir cuando un evento registra información sobre la actividad de un dispositivo que no está en una red empresarial. Por ejemplo, un evento de inicio de sesión en un servicio en la nube contendría una dirección IP de origen o de cliente basada en la dirección IP externa de un dispositivo devuelta por el NAT del operador.

Google SecOps proporciona datos enriquecidos con geolocalización para direcciones IP externas, lo que permite realizar detecciones de reglas más eficaces y obtener un mayor contexto para las investigaciones. Por ejemplo, Google SecOps puede usar una dirección IP externa para enriquecer el evento con información sobre el país (como Estados Unidos), un estado específico (como Alaska) y la red en la que se encuentra la dirección IP (como el ASN y el nombre del operador).

Google SecOps usa los datos de ubicación proporcionados por Google para ofrecer una ubicación geográfica aproximada e información de red de una dirección IP. Puede escribir reglas de Detection Engine en función de estos campos de los eventos. Los datos de eventos enriquecidos también se exportan a BigQuery, donde se pueden usar en los paneles de control y los informes de Google SecOps.

Las siguientes direcciones IP no se han enriquecido:

  • Espacios de direcciones IP privadas RFC 1918, ya que son internos a la red de la empresa.
  • Espacio de direcciones IP de multidifusión RFC 5771, ya que las direcciones de multidifusión no pertenecen a una sola ubicación.
  • Direcciones locales únicas IPv6.
  • Google Cloud direcciones IP de servicio. Las excepciones son las Google Cloud direcciones IP externas de Compute Engine, que se enriquecen.

Google SecOps enriquece los siguientes campos de UDM con datos de geolocalización:

  • principal
  • target
  • src
  • observer
Tipo de datos Campo de UDM
Ubicación (por ejemplo, Estados Unidos) ( principal | target | src | observer ).ip_geo_artifact.location.country_or_region
Estado (por ejemplo, Nueva York) ( principal | target | src | observer ).ip_geo_artifact.location.state
Longitud ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.longitude
Latitud ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.latitude
ASN (número de sistema autónomo) ( principal | target | src | observer ).ip_geo_artifact.network.asn
Nombre del operador ( principal | target | src | observer ).ip_geo_artifact.network.carrier_name
Dominio DNS ( principal | target | src | observer ).ip_geo_artifact.network.dns_domain
Nombre de la organización ( principal | target | src | observer ).ip_geo_artifact.network.organization_name

En el siguiente ejemplo se muestra el tipo de información geográfica que se añadiría a un evento de UDM con una dirección IP etiquetada en los Países Bajos:

Campo de UDM Valor
principal.ip_geo_artifact.location.country_or_region Netherlands
principal.ip_geo_artifact.location.region_coordinates.latitude 52.132633
principal.ip_geo_artifact.location.region_coordinates.longitude 5.291266
principal.ip_geo_artifact.network.asn 8455
principal.ip_geo_artifact.network.carrier_name schuberg philis

Incoherencias

La tecnología de geolocalización de IP propiedad de Google usa una combinación de datos de redes y otras entradas y métodos para proporcionar la ubicación de la dirección IP y la resolución de la red a nuestros usuarios. Otras organizaciones pueden usar señales o métodos diferentes, lo que puede dar lugar a resultados distintos en ocasiones.

Si se dan casos en los que experimentas una incoherencia en los resultados de geolocalización de IP que proporciona Google, abre un caso de asistencia para que podamos investigar el problema y, si procede, corregir nuestros registros en el futuro.

Enriquecer entidades con información de las listas de amenazas de Navegación segura

Google SecOps ingiere datos de Navegación segura relacionados con los hashes de archivos. Los datos de cada archivo se almacenan como una entidad y proporcionan contexto adicional sobre el archivo. Los analistas pueden crear reglas de Detection Engine que consulten los datos de contexto de esta entidad para crear analíticas basadas en el contexto.

La siguiente información se almacena en el registro de contexto de la entidad.

Campo de UDM Descripción
entity.metadata.product_entity_id Identificador único de la entidad.
entity.metadata.entity_type Este valor es FILE, lo que indica que la entidad describe un archivo.
entity.metadata.collected_timestamp Fecha y hora en las que se observó la entidad o se produjo el evento.
entity.metadata.interval Almacena la hora de inicio y de finalización de la validez de estos datos. Como el contenido de las listas de amenazas cambia con el tiempo, start_time y end_time reflejan el intervalo de tiempo durante el que son válidos los datos de la entidad. Por ejemplo, se ha observado que el hash de un archivo es malicioso o sospechoso entre el start_time y el end_time.
entity.metadata.threat.category El SecurityCategory de Google SecOps. Se asigna a uno o varios de los siguientes valores:
  • SOFTWARE_MALICIOUS: indica que la amenaza está relacionada con malware.
  • SOFTWARE_PUA: indica que la amenaza está relacionada con software no deseado.
entity.metadata.threat.severity Esta es la ProductSeverity de Google SecOps. Si el valor es CRITICAL, significa que el artefacto parece malicioso. Si no se especifica el valor, no hay suficiente confianza para indicar que el artefacto es malicioso.
entity.metadata.product_name Almacena el valor Google Safe Browsing.
entity.file.sha256 Valor de hash SHA256 del archivo.

Enriquecer entidades con datos de WHOIS

Google SecOps ingiere datos de WHOIS a diario. Durante la ingestión de los datos de dispositivos de clientes entrantes, Google SecOps evalúa los dominios de los datos de clientes en comparación con los datos de WHOIS. Cuando hay una coincidencia, Google SecOps almacena los datos de WHOIS relacionados con el registro de la entidad del dominio. Para cada entidad, donde entity.metadata.entity_type = DOMAIN_NAME, Google SecOps enriquece la entidad con información de WHOIS.

Google SecOps rellena los siguientes campos del registro de la entidad con datos de WHOIS enriquecidos:

  • entity.domain.admin.attribute.labels
  • entity.domain.audit_update_time
  • entity.domain.billing.attribute.labels
  • entity.domain.billing.office_address.country_or_region
  • entity.domain.contact_email
  • entity.domain.creation_time
  • entity.domain.expiration_time
  • entity.domain.iana_registrar_id
  • entity.domain.name_server
  • entity.domain.private_registration
  • entity.domain.registrant.company_name
  • entity.domain.registrant.office_address.state
  • entity.domain.registrant.office_address.country_or_region
  • entity.domain.registrant.email_addresses
  • entity.domain.registrant.user_display_name
  • entity.domain.registrar
  • entity.domain.registry_data_raw_text
  • entity.domain.status
  • entity.domain.tech.attribute.labels
  • entity.domain.update_time
  • entity.domain.whois_record_raw_text
  • entity.domain.whois_server
  • entity.domain.zone

Para ver una descripción de estos campos, consulte el documento de lista de campos del modelo de datos unificado.

Ingiere y almacena datos de Google Cloud Inteligencia frente a amenazas

Google SecOps ingiere datos de fuentes de datos de Google Cloud Inteligencia de Amenazas de Google Cloud (GCTI) que le proporcionan información contextual que puede usar al investigar la actividad de su entorno.

Puedes consultar las siguientes fuentes de datos:

  • Nodos de salida de Tor de GCTI: direcciones IP que se conocen como nodos de salida de Tor.
  • Binarios benignos de GCTI: archivos que forman parte de la distribución original del sistema operativo o que se han actualizado mediante un parche oficial del sistema operativo. Algunos archivos binarios oficiales del sistema operativo que un adversario ha usado de forma inadecuada mediante actividades habituales en ataques de aprovechamiento de herramientas nativas se excluyen de esta fuente de datos, como los que se centran en los vectores de entrada iniciales.
  • Herramientas de acceso remoto de GCTI: archivos que han usado con frecuencia agentes maliciosos. Estas herramientas suelen ser aplicaciones legítimas que, en ocasiones, se usan de forma inadecuada para conectarse de forma remota a sistemas vulnerados.

    Estos datos contextuales se almacenan de forma global como entidades. Puedes consultar los datos mediante reglas del motor de detección. Incluya los siguientes campos y valores de UDM en la regla para consultar estas entidades globales:

  • graph.metadata.vendor_name = Google Cloud Threat Intelligence

  • graph.metadata.product_name = GCTI Feed

En este documento, el marcador de posición <variable_name> representa el nombre de variable único que se usa en una regla para identificar un registro de UDM.

Fuentes de datos de inteligencia frente a amenazas con marca de tiempo y sin marca de tiempo Google Cloud

Google Cloud Las fuentes de datos de inteligencia frente a amenazas pueden ser temporales o permanentes.

Las fuentes de datos cronometradas tienen un intervalo de tiempo asociado a cada entrada. Esto significa que, si se genera una detección el día 1, en cualquier día posterior se espera que se genere la misma detección para el día 1 durante una búsqueda retrospectiva.

Las fuentes de datos atemporales no tienen ningún periodo asociado. Esto se debe a que solo se debe tener en cuenta el conjunto de datos más reciente. Las fuentes de datos atemporales se suelen usar para datos como los hashes de archivos, que no se espera que cambien. Si no se genera ninguna detección el primer día, el segundo día se podría generar una detección del primer día durante una búsqueda retrospectiva porque se ha añadido una nueva entrada.

Datos sobre las direcciones IP de los nodos de salida de Tor

Google SecOps ingiere y almacena direcciones IP que son nodos de salida de Tor conocidos. Los nodos de salida de Tor son puntos en los que el tráfico sale de la red Tor. La información ingerida de esta fuente de datos se almacena en los siguientes campos de UDM. Los datos de esta fuente tienen una marca de tiempo.

Campo de UDM Descripción
<variable_name>.graph.metadata.vendor_name Almacena el valor Google Cloud Threat Intelligence.
<variable_name>.graph.metadata.product_name Almacena el valor GCTI Feed.
<variable_name>.graph.metadata.threat.threat_feed_name Almacena el valor Tor Exit Nodes.
<variable_name>.graph.entity.artifact.ip Almacena la dirección IP obtenida de la fuente de datos de GCTI.

Datos sobre archivos benignos del sistema operativo

Google SecOps ingiere y almacena los hashes de archivos de la fuente de datos de archivos binarios benignos de GCTI. La información obtenida de esta fuente de datos se almacena en los siguientes campos de UDM. Los datos de esta fuente no tienen fecha.

Campo de UDM Descripción
<variable_name>.graph.metadata.vendor_name Almacena el valor Google Cloud Threat Intelligence.
<variable_name>.graph.metadata.product_name Almacena el valor GCTI Feed.
<variable_name>.graph.metadata.threat.threat_feed_name Almacena el valor Benign Binaries.
<variable_name>.graph.entity.file.sha256 Almacena el valor de hash SHA256 del archivo.
<variable_name>.graph.entity.file.sha1 Almacena el valor de hash SHA1 del archivo.
<variable_name>.graph.entity.file.md5 Almacena el valor de hash MD5 del archivo.

Datos sobre herramientas de acceso remoto

Las herramientas de acceso remoto incluyen hashes de archivos de herramientas de acceso remoto conocidas, como los clientes de VNC, que los agentes maliciosos han usado con frecuencia. Estas herramientas son aplicaciones generalmente legítimas que a veces se usan de forma inadecuada para conectarse de forma remota a sistemas vulnerados. La información ingerida de esta fuente de datos se almacena en los siguientes campos de UDM. Los datos de esta fuente no tienen fecha.

Campo de UDM Descripción
.graph.metadata.vendor_name Almacena el valor Google Cloud Threat Intelligence.
.graph.metadata.product_name Almacena el valor GCTI Feed.
.graph.metadata.threat.threat_feed_name Almacena el valor Remote Access Tools.
.graph.entity.file.sha256 Almacena el valor de hash SHA256 del archivo.
.graph.entity.file.sha1 Almacena el valor de hash SHA1 del archivo.
.graph.entity.file.md5 Almacena el valor de hash MD5 del archivo.

Enriquecer eventos con metadatos de archivos de VirusTotal

Google SecOps enriquece los hashes de archivos en eventos de UDM y proporciona contexto adicional durante una investigación. Los eventos de UDM se enriquecen mediante alias de hash en un entorno de cliente. Los alias de hash combinan todos los tipos de hashes de archivos y proporcionan información sobre el hash de un archivo durante una búsqueda.

La integración de los metadatos de archivos y el enriquecimiento de relaciones de VirusTotal con Google SecOps se pueden usar para identificar patrones de actividad maliciosa y para monitorizar los movimientos de malware en una red.

Un registro sin procesar proporciona información limitada sobre el archivo. VirusTotal enriquece el evento con metadatos de archivos para proporcionar un volcado de hashes incorrectos junto con metadatos sobre el archivo incorrecto. Los metadatos incluyen información como nombres de archivo, tipos, funciones importadas y etiquetas. Puedes usar esta información en el motor de búsqueda y detección de UDM con YARA-L para comprender los eventos de archivos dañinos y, en general, durante la búsqueda de amenazas. Por ejemplo, se puede usar para detectar cualquier modificación en el archivo original, lo que, a su vez, importaría los metadatos del archivo para detectar amenazas.

La siguiente información se almacena junto con el registro. Para ver una lista de todos los campos de UDM, consulta la lista de campos de modelo de datos unificado.

Tipo de datos Campo de UDM
SHA-256 ( principal | target | src | observer ).file.sha256
MD5 ( principal | target | src | observer ).file.md5
SHA-1 ( principal | target | src | observer ).file.sha1
Tamaño ( principal | target | src | observer ).file.size
ssdeep ( principal | target | src | observer ).file.ssdeep
vhash ( principal | target | src | observer ).file.vhash
authentihash ( principal | target | src | observer ).file.authentihash
Tipo de archivo ( principal | target | src | observer ).file.file_type
Etiquetas ( principal | target | src | observer ).file.tags
Etiquetas de funciones ( principal | target | src | observer ).file.capabilities_tags
Nombres ( principal | target | src | observer ).file.names
Hora de la primera detección ( principal | target | src | observer ).file.first_seen_time
Hora de la última conexión ( principal | target | src | observer ).file.last_seen_time
Fecha de la última modificación ( principal | target | src | observer ).file.last_modification_time
Hora del último análisis ( principal | target | src | observer ).file.last_analysis_time
URLs insertadas ( principal | target | src | observer ).file.embedded_urls
IPs insertadas ( principal | target | src | observer ).file.embedded_ips
Dominios insertados ( principal | target | src | observer ).file.embedded_domains
Información de la firma ( principal | target | src | observer ).file.signature_info
Información de la firma
  • Sigcheck
( principal | target | src | observer).file.signature_info.sigcheck
Información de la firma
  • Sigcheck
    • Mensaje de verificación
( principal | target | src | observer ).file.signature_info.sigcheck.verification_message
Información de la firma
  • Sigcheck
    • Verificada
( principal | target | src | observer ).file.signature_info.sigcheck.verified
Información de la firma
  • Sigcheck
    • Firmantes
( principal | target | src | observer ).file.signature_info.sigcheck.signers
Información de la firma
  • Sigcheck
    • Firmantes
      • Nombre
( principal | target | src | observer ).file.signature_info.sigcheck.signers.name
Información de la firma
  • Sigcheck
    • Firmantes
      • Estado
( principal | target | src | observer ).file.signature_info.sigcheck.signers.status
Información de la firma
  • Sigcheck
    • Firmantes
      • Uso válido del certificado
( principal | target | src | observer ).file.signature_info.sigcheck.signers.valid_usage
Información de la firma
  • Sigcheck
    • Firmantes
      • Emisor de certificados
( principal | target | src | observer ).file.signature_info.sigcheck.signers.cert_issuer
Información de la firma
  • Sigcheck
    • X509
( principal | target | src | observer ).file.signature_info.sigcheck.x509
Información de la firma
  • Sigcheck
    • X509
      • Nombre
( principal | target | src | observer ).file.signature_info.sigcheck.x509.name
Información de la firma
  • Sigcheck
    • X509
      • Algoritmo
( principal | target | src | observer ).file.signature_info.sigcheck.x509.algorithm
Información de la firma
  • Sigcheck
    • X509
      • Huella digital
( principal | target | src | observer ).file.signature_info.sigcheck.x509.thumprint
Información de la firma
  • Sigcheck
    • X509
      • Emisor de certificados
( principal | target | src | observer ).file.signature_info.sigcheck.x509.cert_issuer
Información de la firma
  • Sigcheck
    • X509
      • Número de serie
( principal | target | src | observer ).file.signature_info.sigcheck.x509.serial_number
Información de la firma
  • Codesign
( principal | target | src | observer ).file.signature_info.codesign
Información de la firma
  • Codesign
    • ID
( principal | target | src | observer ).file.signature_info.codesign.id
Información de la firma
  • Codesign
    • Formato
( principal | target | src | observer ).file.signature_info.codesign.format
Información de la firma
  • Codesign
    • Tiempo de compilación
( principal | target | src | observer ).file.signature_info.codesign.compilation_time
Información de Exiftool ( principal | target | src | observer ).file.exif_info
Información de Exiftool
  • Nombre de archivo original
( principal | target | src | observer ).file.exif_info.original_file
Información de Exiftool
  • Nombre del producto
( principal | target | src | observer ).file.exif_info.product
Información de Exiftool
  • Nombre de la empresa
( principal | target | src | observer ).file.exif_info.company
Información de Exiftool
  • Descripción del archivo
( principal | target | src | observer ).file.exif_info.file_description
Información de Exiftool
  • Punto de entrada
( principal | target | src | observer ).file.exif_info.entry_point
Información de Exiftool
  • Tiempo de compilación
( principal | target | src | observer ).file.exif_info.compilation_time
Información del PDF ( principal | target | src | observer ).file.pdf_info
Información del PDF
  • Número de etiquetas /JS
( principal | target | src | observer ).file.pdf_info.js
Información del PDF
  • Número de etiquetas JavaScript
( principal | target | src | observer ).file.pdf_info.javascript
Información del PDF
  • Número de etiquetas /Launch
( principal | target | src | observer ).file.pdf_info.launch_action_count
Información del PDF
  • Número de flujos de objetos
( principal | target | src | observer ).file.pdf_info.object_stream_count
Información del PDF
  • Número de definiciones de objetos (palabra clave endobj)
( principal | target | src | observer ).file.pdf_info.endobj_count
Información del PDF
  • Versión PDF
( principal | target | src | observer ).file.pdf_info.header
Información del PDF
  • Número de etiquetas /AcroForm
( principal | target | src | observer ).file.pdf_info.acroform
Información del PDF
  • Número de etiquetas /AA
( principal | target | src | observer ).file.pdf_info.autoaction
Información del PDF
  • Número de etiquetas /EmbeddedFile
( principal | target | src | observer ).file.pdf_info.embedded_file
Información del PDF
  • /Encrypt tag
( principal | target | src | observer ).file.pdf_info.encrypted
Información del PDF
  • Número de etiquetas /RichMedia
( principal | target | src | observer ).file.pdf_info.flash
Información del PDF
  • Número de etiquetas /JBIG2Decode
( principal | target | src | observer ).file.pdf_info.jbig2_compression
Información del PDF
  • Número de definiciones de objetos (palabra clave obj)
( principal | target | src | observer ).file.pdf_info.obj_count
Información del PDF
  • Número de objetos de flujo definidos (palabra clave de flujo)
( principal | target | src | observer ).file.pdf_info.endstream_count
Información del PDF
  • Número de páginas del PDF
( principal | target | src | observer ).file.pdf_info.page_count
Información del PDF
  • Número de objetos de flujo definidos (palabra clave de flujo)
( principal | target | src | observer ).file.pdf_info.stream_count
Información del PDF
  • Número de etiquetas /OpenAction
( principal | target | src | observer ).file.pdf_info.openaction
Información del PDF
  • Número de palabras clave startxref
( principal | target | src | observer ).file.pdf_info.startxref
Información del PDF
  • Número de colores expresado con más de 3 bytes (CVE-2009-3459)
( principal | target | src | observer ).file.pdf_info.suspicious_colors
Información del PDF
  • Número de palabras clave de tráileres
( principal | target | src | observer ).file.pdf_info.trailer
Información del PDF
  • Número de etiquetas /XFA encontradas
( principal | target | src | observer ).file.pdf_info.xfa
Información del PDF
  • Número de palabras clave de referencias cruzadas
( principal | target | src | observer ).file.pdf_info.xref
Metadatos de archivos PE ( principal | target | src | observer ).file.pe_file
Metadatos del archivo PE
  • Imphash
( principal | target | src | observer ).file.pe_file.imphash
Metadatos del archivo PE
  • Punto de entrada
( principal | target | src | observer ).file.pe_file.entry_point
Metadatos del archivo PE
  • Punto de entrada de ExifTool
( principal | target | src | observer ).file.pe_file.entry_point_exiftool
Metadatos del archivo PE
  • Tiempo de compilación
( principal | target | src | observer ).file.pe_file.compilation_time
Metadatos del archivo PE
  • Tiempo de compilación de exiftool
( principal | target | src | observer ).file.pe_file.compilation_exiftool_time
Metadatos del archivo PE
  • Secciones
( principal | target | src | observer ).file.pe_file.section
Metadatos del archivo PE
  • Secciones
    • Nombre
( principal | target | src | observer ).file.pe_file.section.name
Metadatos del archivo PE
  • Secciones
    • Entropía
( principal | target | src | observer ).file.pe_file.section.entropy
Metadatos del archivo PE
  • Secciones
    • Tamaño sin formato en bytes
( principal | target | src | observer ).file.pe_file.section.raw_size_bytes
Metadatos del archivo PE
  • Secciones
    • Tamaño virtual en bytes
( principal | target | src | observer ).file.pe_file.section.virtual_size_bytes
Metadatos del archivo PE
  • Secciones
    • MD5 hexadecimal
( principal | target | src | observer ).file.pe_file.section.md5_hex
Metadatos del archivo PE
  • Importaciones
( principal | target | src | observer ).file.pe_file.imports
Metadatos del archivo PE
  • Importaciones
    • Biblioteca
( principal | target | src | observer ).file.pe_file.imports.library
Metadatos del archivo PE
  • Importaciones
    • Functions
( principal | target | src | observer ).file.pe_file.imports.functions
Metadatos del archivo PE
  • Información del recurso
( principal | target | src | observer ).file.pe_file.resource
Metadatos del archivo PE
  • Información del recurso
    • SHA-256 (hexadecimal)
( principal | target | src | observer ).file.pe_file.resource.sha256_hex
Metadatos del archivo PE
  • Información del recurso
    • Tipo de recurso identificado por el módulo mágico de Python
( principal | target | src | observer ).file.pe_file.resource.filetype_magic
Metadatos del archivo PE
  • Información del recurso
    • Versión legible por humanos de los identificadores de idioma y subidioma, tal como se define en la especificación de Windows PE.
( principal | target | src | observer ).file.pe_file.resource_language_code
Metadatos del archivo PE
  • Información del recurso
    • Entropía
( principal | target | src | observer ).file.pe_file.resource.entropy
Metadatos del archivo PE
  • Información del recurso
    • Tipo de archivo
( principal | target | src | observer ).file.pe_file.resource.file_type
Metadatos del archivo PE
  • Número de recursos por tipo de recurso
( principal | target | src | observer ).file.pe_file.resources_type_count_str
Metadatos del archivo PE
  • Número de recursos por idioma
( principal | target | src | observer ).file.pe_file.resources_language_count_str

Enriquecer entidades con datos de relaciones de VirusTotal

VirusTotal ayuda a analizar archivos, dominios, direcciones IP y URLs sospechosos para detectar malware y otras brechas, y comparte los resultados con la comunidad de seguridad. Google SecOps ingiere datos de conexiones relacionadas con VirusTotal. Estos datos se almacenan como una entidad y proporcionan información sobre la relación entre los hashes de archivos y los archivos, los dominios, las direcciones IP y las URLs.

Los analistas pueden usar estos datos para determinar si un hash de archivo es malicioso en función de la información sobre la URL o el dominio de otras fuentes. Esta información se puede usar para crear reglas de Detection Engine que consulten los datos de contexto de la entidad para generar analíticas basadas en el contexto.

Estos datos solo están disponibles para determinadas licencias de VirusTotal y Google SecOps. Consulta tus derechos con tu gestor de cuentas.

La siguiente información se almacena en el registro de contexto de la entidad:

Campo de UDM Descripción
entity.metadata.product_entity_id Identificador único de la entidad.
entity.metadata.entity_type Almacena el valor FILE, que indica que la entidad describe un archivo.
entity.metadata.interval start_time hace referencia al inicio del periodo y end_time es el final del periodo durante el que estos datos son válidos.
entity.metadata.source_labels Este campo almacena una lista de pares clave-valor de source_id y target_id de esta entidad. source_id es el hash del archivo y target_id puede ser el hash o el valor de la URL, el nombre de dominio o la dirección IP con los que está relacionado este archivo. Puedes buscar la URL, el nombre de dominio, la dirección IP o el archivo en virustotal.com.
entity.metadata.product_name Almacena el valor "VirusTotal Relationships".
entity.metadata.vendor_name Almacena el valor "VirusTotal".
entity.file.sha256 Almacena el valor de hash SHA-256 del archivo.
entity.file.relations Lista de entidades secundarias con las que está relacionada la entidad de archivo principal.
entity.relations.relationship En este campo se explica el tipo de relación entre las entidades principales y secundarias. El valor puede ser EXECUTES, DOWNLOADED_FROM o CONTACTS.
entity.relations.direction Almacena el valor "UNIDIRECTIONAL" e indica la dirección de la relación con la entidad secundaria.
entity.relations.entity.url La URL con la que se pone en contacto el archivo de la entidad superior (si la relación entre la entidad superior y la URL es CONTACTS) o la URL desde la que se descargó el archivo de la entidad superior (si la relación entre la entidad superior y la URL es DOWNLOADED_FROM).
entity.relations.entity.ip Lista de direcciones IP que el archivo de los contactos de la entidad superior o desde la que se descargó. Solo contiene una dirección IP.
entity.relations.entity.domain.name El nombre de dominio desde el que se ha descargado el archivo de la entidad principal o con el que se ha puesto en contacto.
entity.relations.entity.file.sha256 Almacena el valor de hash SHA-256 del archivo en la relación.
entity.relations.entity_type Este campo contiene el tipo de entidad de la relación. El valor puede ser URL, DOMAIN_NAME, IP_ADDRESS o FILE. Estos campos se rellenan de acuerdo con la entity_type. Por ejemplo, si entity_type es URL, se rellena entity.relations.entity.url.

Siguientes pasos

Para obtener información sobre cómo usar datos enriquecidos con otras funciones de Google SecOps, consulta los siguientes artículos:

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