Cómo Google SecOps enriquece los datos de eventos y entidades

Compatible con:

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

Para permitir una investigación de seguridad, Google SecOps incorpora datos contextuales de diferentes fuentes, realiza análisis de los datos y proporciona contexto adicional sobre los artefactos en el entorno del cliente. Los analistas pueden usar datos enriquecidos contextualmente en las reglas, las búsquedas de investigación o los informes de Detection Engine.

Google SecOps realiza los siguientes tipos de enriquecimiento:

  • Enriquece las entidades con la combinación y el gráfico de entidades.
  • Calcula y enriquece cada entidad con una estadística de prevalencia que indica su popularidad en el entorno.
  • Calcula la primera vez que se vieron ciertos tipos de entidades en el entorno o la vez más reciente.
  • Enriquece las entidades con información de las listas de amenazas de la Navegación segura.
  • Enriquece los eventos con datos de ubicación geográfica.
  • Enriquece las entidades con datos de WHOIS.
  • Enriquece los eventos con metadatos de archivos de VirusTotal.
  • Enriquece las entidades con datos de relaciones de VirusTotal.
  • Ingiere y almacena datos de la Inteligencia sobre amenazas de Google Cloud.

Los datos enriquecidos de WHOIS, Navegación segura, Inteligencia sobre amenazas de GCTI, metadatos de VirusTotal y relaciones de VirusTotal se identifican con entity_type, product_name y vendor_name. Cuando crees una regla que use estos datos enriquecidos, te recomendamos que incluyas un filtro en la regla que identifique el tipo de enriquecimiento específico que se incluirá. Este filtro ayuda a mejorar el rendimiento de la regla. Por ejemplo, incluye 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"

Enriquece entidades con 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 incorporan entidades de diferentes fuentes a 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 realiza el enriquecimiento del contexto a través de la eliminación de duplicados 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, considera dos entidades e1 y e2 con marcas de tiempo t1 y t2, respectivamente. Las entidades e1 y e2 se anulan, y las marcas de tiempo que son diferentes no se usan durante la anulación. Los siguientes campos no se usan durante la eliminación de duplicados:

  • collected_timestamp
  • creation_timestamp
  • interval

Durante la combinación, se forman relaciones entre las entidades para un intervalo de un día. Por ejemplo, considera un registro de entidad de user A que tiene acceso a un bucket de Cloud Storage. Existe otro registro de entidad de user A que posee un dispositivo. Después de la combinación, estas dos entidades dan como resultado una sola entidad user A que tiene dos relaciones. Una relación es que user A tiene acceso al bucket de Cloud Storage y la otra es que user A es propietario del dispositivo. Google SecOps realiza una revisión de cinco días cuando crea datos de contexto de la entidad. Esto controla los datos que llegan tarde y crea un tiempo de actividad implícito en los datos de contexto de la entidad.

Las Operaciones de seguridad de Google usan alias para enriquecer los datos de telemetría y gráficos de entidades para enriquecer las entidades. Las reglas del motor de detección unen las entidades combinadas con los datos de telemetría enriquecidos para proporcionar estadísticas adaptadas al contexto.

Un evento que contiene un sustantivo de entidad se considera una entidad. Estos son algunos tipos de eventos y sus tipos de entidades 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 compromiso (IOC) con la información de amenazas.

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

  • No agregues intervalos en la entidad y, en cambio, permite que el gráfico de entidades cree 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 anulan los duplicados de los mismos eventos y se conserva la entidad más reciente.
  • Para garantizar que las reglas activas y las búsquedas retroactivas funcionen según lo previsto, las entidades deben transferirse al menos una vez al día.
  • Si las entidades no se transfieren a diario y solo se transfieren una vez cada dos o más días, es posible que las reglas activas funcionen según lo previsto. Sin embargo, las búsquedas retroactivas podrían perder el contexto del evento.
  • Si las entidades se transfieren más de una vez al día, se quitan los duplicados para dejar una sola entidad.
  • Si faltan los datos de eventos de un día, se usan temporalmente los datos del día anterior para garantizar que las reglas activas funcionen 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 realiza según 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

Cómo calcular estadísticas de prevalencia

Google SecOps realiza análisis estadísticos de los datos existentes y entrantes, y enriquece los registros de contexto de 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 la cantidad 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. Por lo general, es menos probable que las entidades más populares sean maliciosas.

Estos valores enriquecidos se admiten para el dominio, la IP y el archivo (hash). Los valores se calculan y almacenan en los siguientes campos.

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

Se pueden usar los siguientes campos cuando se crean 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 de day_max y rolling_max se calculan de manera 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, en el que un día se define como de las 12:00:00 a.m. a las 11:59:59 p.m. (UTC).
  • rolling_max se calcula como la puntuación de prevalencia máxima por día (es decir, day_max) para el artefacto durante el período de 10 días anterior.
  • day_count se usa para calcular rolling_max y siempre es 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 la cantidad 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 la cantidad 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 entidades recién incorporados. Los cálculos no se realizan de forma retroactiva en los datos que se hayan transferido anteriormente. Las estadísticas tardan aproximadamente 36 horas en calcularse y almacenarse.

Cómo calcular la hora de la primera y la última vez que se vieron las entidades

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

Dado que varios indicadores (campos del UDM) pueden identificar un recurso o un usuario, la fecha y hora de la primera visualización es la primera vez que se vio cualquiera de los indicadores que identifican al usuario o al recurso en el entorno del cliente.

Todos los campos del UDM que describen un activo son los siguientes:

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

Todos los campos del 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 primera y la última vez que se vio un elemento permiten que un analista correlacione cierta actividad que ocurrió después de que se vio por primera vez un dominio, un archivo (hash), un activo, un usuario o una dirección IP, o que dejó de ocurrir después de que se vio por última vez el dominio, el archivo (hash) o la dirección IP.

Los campos first_seen_time y last_seen_time se completan con entidades que describen un dominio, una dirección IP y un archivo (hash). Para las entidades que describen un usuario o un activo, solo se completa 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 dentro de los espacios de nombres individuales. Actualmente, estas estadísticas no se exportan alesquema de Google SecOps events en BigQuery.

Los valores enriquecidos se calculan y almacenan en los siguientes campos del 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

Enriquece los eventos con datos de ubicación geográfica

Los datos de registro entrantes pueden incluir direcciones IP externas sin información de ubicación correspondiente. Esto es habitual cuando un evento registra información sobre la actividad del dispositivo que no está en una red empresarial. Por ejemplo, un evento de acceso a 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 que devuelve la NAT del operador.

Google SecOps proporciona datos enriquecidos con la ubicación geográfica para las direcciones IP externas, lo que permite detecciones de reglas más potentes y un mayor contexto para las investigaciones. Por ejemplo, Google SecOps podría 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 brindar una ubicación geográfica aproximada y la información de red de una dirección IP. Puedes escribir reglas de Detection Engine en función de estos campos en los eventos. Los datos de eventos enriquecidos también se exportan a BigQuery, donde se pueden usar en los informes y los paneles de Google SecOps.

Las siguientes direcciones IP no se enriquecen:

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

Google SecOps enriquece los siguientes campos del UDM con datos de ubicación geográfica:

  • 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 de 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 agregaría a un evento de UDM con una dirección IP etiquetada para 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

Inconsistencias

La tecnología de geolocalización de IP patentada de Google utiliza una combinación de datos de redes y otros métodos y entradas para proporcionar la ubicación de la dirección IP y la resolución de la red a nuestros usuarios. Otras organizaciones pueden usar diferentes indicadores o métodos, lo que podría generar resultados diferentes en ocasiones.

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

Enriquece entidades con información de las listas de amenazas de la Navegación segura

Google SecOps ingiere datos de la 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 realicen consultas sobre estos datos de contexto de la entidad para crear estadísticas basadas en el contexto.

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

Campo de UDM Descripción
entity.metadata.product_entity_id Es un 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 que se observó la entidad o en que ocurrió el evento.
entity.metadata.interval Almacena la hora de inicio y la hora de finalización para las que son válidos estos datos. Dado que el contenido de las listas de amenazas cambia con el tiempo, start_time y end_time reflejan el intervalo durante el cual son válidos los datos sobre la entidad. Por ejemplo, se observó que un hash de archivo era malicioso o sospechoso entre start_time and end_time.
entity.metadata.threat.category Este es el SecurityCategory de Google SecOps. Se establece en uno o más de los siguientes valores:
  • SOFTWARE_MALICIOUS: Indica que la amenaza está relacionada con software malicioso.
  • SOFTWARE_PUA: Indica que la amenaza está relacionada con software no deseado.
entity.metadata.threat.severity Este es el ProductSeverity de Google SecOps. Si el valor es CRITICAL, indica 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 Es el valor de hash SHA256 del archivo.

Enriquece entidades con datos de WHOIS

Google SecOps transfiere datos de WHOIS a diario. Durante la transferencia de datos entrantes de dispositivos de clientes, Google SecOps evalúa los dominios en los datos de los clientes en comparación con los datos de WHOIS. Cuando hay una coincidencia, Google SecOps almacena los datos relacionados de WHOIS 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 completa los datos enriquecidos de WHOIS en los siguientes campos del registro de la entidad:

  • 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 obtener una descripción de estos campos, consulta el documento de la lista de campos del modelo de datos unificado.

Transfiere y almacena Google Cloud datos de Threat Intelligence

El equipo de Google SecOps ingiere datos de fuentes de datos de Google Cloud Inteligencia ante amenazas (GCTI) que te proporcionan información contextual que puedes usar cuando investigas la actividad en tu entorno. Puedes consultar las siguientes fuentes de datos:

  • Nodos de salida de Tor de GCTI: Son las direcciones IP que se conocen como nodos de salida de Tor.
  • Binarios benignos de la GCTI: Son archivos que forman parte de la distribución original del sistema operativo o que se actualizaron con un parche oficial del sistema operativo. Se excluyen de esta fuente de datos algunos archivos binarios oficiales del sistema operativo que un adversario usó de forma inadecuada a través de actividades comunes en los ataques de "aprovechamiento del entorno", como los que se enfocan en los vectores de entrada iniciales.
  • Herramientas de acceso remoto de GCTI: Son archivos que los agentes maliciosos usan con frecuencia. Por lo general, estas herramientas son aplicaciones legítimas que a veces se usan de forma inadecuada para conectarse de forma remota a sistemas comprometidos.

    Estos datos contextuales se almacenan de forma global como entidades. Puedes consultar los datos con las reglas del motor de detección. Incluye los siguientes campos y valores del 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 del UDM.

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

Las fuentes de datos deGoogle Cloud Threat Intelligence son temporales o atemporales.

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

Las fuentes de datos independientes del tiempo no tienen un período asociado. Esto se debe a que solo se debe tener en cuenta el conjunto de datos más reciente. Las fuentes de datos independientes del tiempo se usan con frecuencia para datos como los hashes de archivos que no se espera que cambien. Si no se genera ninguna detección el día 1, es posible que el día 2 se genere una detección para el día 1 durante una búsqueda retroactiva porque se agregó una entrada nueva.

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

Google SecOps transfiere y almacena las direcciones IP que se conocen como nodos de salida de Tor. Los nodos de salida de Tor son puntos en los que el tráfico sale de la red de Tor. La información que se transfiere desde esta fuente de datos se almacena en los siguientes campos del 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 transferida desde la fuente de datos de GCTI.

Datos sobre archivos benignos del sistema operativo

Google SecOps ingiere y almacena hashes de archivos de la fuente de datos de binarios benignos de GCTI. La información que se transfiere desde esta fuente de datos se almacena en los siguientes campos del UDM. Los datos de esta fuente son independientes del 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 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 hash MD5 del archivo.

Datos sobre las herramientas de acceso remoto

Las herramientas de acceso remoto incluyen hashes de archivos para herramientas de acceso remoto conocidas, como los clientes de VNC, que los actores maliciosos han usado con frecuencia. Por lo general, estas herramientas son aplicaciones legítimas que, a veces, se usan de forma inadecuada para conectarse de forma remota a sistemas comprometidos. La información que se transfiere desde esta fuente de datos se almacena en los siguientes campos del UDM. Los datos de esta fuente son independientes del tiempo.

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 hash MD5 del archivo.

Enriquece eventos con metadatos de archivos de VirusTotal

Google SecOps enriquece los hashes de archivos en eventos del UDM y proporciona contexto adicional durante una investigación. Los eventos del UDM se enriquecen a través de alias de hash en el entorno del cliente. El alias de hash combina todos los tipos de hashes de archivos y proporciona información sobre un hash de archivo durante una búsqueda.

La integración de los metadatos de archivos y el enriquecimiento de relaciones de VirusTotal con las SecOps de Google se puede usar para identificar patrones de actividad maliciosa y hacer un seguimiento de 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 archivos, 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. Un ejemplo de caso de uso es detectar cualquier modificación en el archivo original, lo que, a su vez, importaría los metadatos del archivo para la detección de amenazas.

La siguiente información se almacena con el registro. Para obtener una lista de todos los campos del UDM, consulta Lista de campos del 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 capacidades ( principal | target | src | observer ).file.capabilities_tags
Nombres ( principal | target | src | observer ).file.names
Fecha de la primera visualización ( principal | target | src | observer ).file.first_seen_time
Hora de última visualización ( principal | target | src | observer ).file.last_seen_time
Hora 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 incorporadas ( principal | target | src | observer ).file.embedded_urls
IPs incorporadas ( principal | target | src | observer ).file.embedded_ips
Dominios incorporados ( 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
    • Verificado
( 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
      • Entidad emisora del certificado
( 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 del pulgar
( principal | target | src | observer ).file.signature_info.sigcheck.x509.thumprint
Información de la firma
  • Sigcheck
    • X509
      • Entidad emisora del certificado
( 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 del 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
  • Cantidad de etiquetas /JS
( principal | target | src | observer ).file.pdf_info.js
Información del PDF
  • Cantidad de etiquetas de JavaScript
( principal | target | src | observer ).file.pdf_info.javascript
Información del PDF
  • Cantidad de etiquetas /Launch
( principal | target | src | observer ).file.pdf_info.launch_action_count
Información del PDF
  • Cantidad de transmisiones de objetos
( principal | target | src | observer ).file.pdf_info.object_stream_count
Información del PDF
  • Cantidad de definiciones de objetos (palabra clave endobj)
( principal | target | src | observer ).file.pdf_info.endobj_count
Información del PDF
  • Versión en PDF
( principal | target | src | observer ).file.pdf_info.header
Información del PDF
  • Cantidad de etiquetas /AcroForm
( principal | target | src | observer ).file.pdf_info.acroform
Información del PDF
  • Cantidad de etiquetas /AA
( principal | target | src | observer ).file.pdf_info.autoaction
Información del PDF
  • Cantidad de etiquetas /EmbeddedFile
( principal | target | src | observer ).file.pdf_info.embedded_file
Información del PDF
  • Etiqueta /Encrypt
( principal | target | src | observer ).file.pdf_info.encrypted
Información del PDF
  • Cantidad de etiquetas /RichMedia
( principal | target | src | observer ).file.pdf_info.flash
Información del PDF
  • Cantidad de etiquetas /JBIG2Decode
( principal | target | src | observer ).file.pdf_info.jbig2_compression
Información del PDF
  • Cantidad de definiciones de objetos (palabra clave obj)
( principal | target | src | observer ).file.pdf_info.obj_count
Información del PDF
  • Cantidad de objetos de transmisión definidos (palabra clave de transmisión)
( principal | target | src | observer ).file.pdf_info.endstream_count
Información del PDF
  • Cantidad de páginas del PDF
( principal | target | src | observer ).file.pdf_info.page_count
Información del PDF
  • Cantidad de objetos de transmisión definidos (palabra clave de transmisión)
( principal | target | src | observer ).file.pdf_info.stream_count
Información del PDF
  • Cantidad de etiquetas /OpenAction
( principal | target | src | observer ).file.pdf_info.openaction
Información del PDF
  • Cantidad de palabras clave startxref
( principal | target | src | observer ).file.pdf_info.startxref
Información del PDF
  • Cantidad de colores expresada con más de 3 bytes (CVE-2009-3459)
( principal | target | src | observer ).file.pdf_info.suspicious_colors
Información del PDF
  • Cantidad de palabras clave de avance
( principal | target | src | observer ).file.pdf_info.trailer
Información del PDF
  • Cantidad de etiquetas /XFA encontradas
( principal | target | src | observer ).file.pdf_info.xfa
Información del PDF
  • Cantidad de palabras clave de referencias cruzadas
( principal | target | src | observer ).file.pdf_info.xref
Metadatos del archivo 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 exiftool de compilación
( 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 procesar 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
    • Funciones
( 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 para humanos de los identificadores de idioma y subidioma, como se definen 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
  • Cantidad de recursos por tipo de recurso
( principal | target | src | observer ).file.pe_file.resources_type_count_str
Metadatos del archivo PE
  • Cantidad de recursos por idioma
( principal | target | src | observer ).file.pe_file.resources_language_count_str

Enriquece entidades con datos de relaciones de VirusTotal

VirusTotal ayuda a analizar archivos, dominios, direcciones IP y URLs sospechosos para detectar software malicioso y otros incumplimientos, y compartir los resultados con la comunidad de seguridad. Google SecOps ingiere datos de las 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 malo según 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 estadísticas basadas en el contexto.

Estos datos solo están disponibles para ciertas licencias de VirusTotal y SecOps de Google. Verifica tus derechos con tu administrador de cuentas.

En el registro de contexto de la entidad, se almacena la siguiente información:

Campo de UDM Descripción
entity.metadata.product_entity_id Es un 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 comienzo del tiempo, y end_time es el final del período para el que son válidos estos datos.
entity.metadata.source_labels En este campo, se almacena una lista de pares clave-valor de source_id y target_id para 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 se relaciona 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 Es una lista de entidades secundarias con las que se relaciona la entidad de archivo principal.
entity.relations.relationship En este campo, se explica el tipo de relación entre las entidades principal y secundaria. El valor puede ser EXECUTES, DOWNLOADED_FROM o CONTACTS.
entity.relations.direction Almacena el valor "UNIDIRECTIONAL" y muestra la dirección de la relación con la entidad secundaria.
entity.relations.entity.url Es la URL a la que se conecta el archivo de la entidad principal (si la relación entre la entidad principal y la URL es CONTACTS) o la URL desde la que se descargó el archivo de la entidad principal (si la relación entre la entidad principal y la URL es DOWNLOADED_FROM).
entity.relations.entity.ip Es una lista de direcciones IP con las que se comunica el archivo de la entidad principal o desde las que se descargó. Solo contiene una dirección IP.
entity.relations.entity.domain.name Nombre de dominio desde el que se descargó el archivo o al que pertenece la entidad principal
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 en la relación. El valor puede ser URL, DOMAIN_NAME, IP_ADDRESS o FILE. Estos campos se propagan de acuerdo con entity_type. Por ejemplo, si entity_type es URL, entonces entity.relations.entity.url se completa.

¿Qué sigue?

Si deseas obtener información para usar datos enriquecidos con otras funciones de Google SecOps, consulta lo siguiente:

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