Guía de uso del modelo de datos unificado

En este documento, se proporciona una descripción más detallada de los campos en el esquema del Modelo de datos unificado (UDM) y los campos obligatorios y opcionales según el tipo de evento. Para la evaluación del motor de reglas, el prefijo comienza udm., mientras que el prefijo del normalizador basado en la configuración (CBN) comienza con event.idm.read_only_udm.

Propagación de metadatos del evento

La sección de metadatos del evento para los eventos de UDM almacena información general sobre cada evento.

Metadata.event_type

  • Propósito: Especifica el tipo de evento. Si un evento tiene varios tipos posibles, este valor debe especificar el tipo más específico.
  • Obligatorio:
  • Codificación: Debe ser uno de los tipos mencionados de event_type de UDM predefinidos.
  • Valores posibles: A continuación, se enumeran todos los valores posibles para event_type dentro del UDM.

Eventos de correo electrónico:

  • EMAIL_TRANSACTION
  • EMAIL_UNCATEGORIZED

Eventos de archivo realizados en un extremo:

  • FILE_UNCATEGORIZED
  • FILE_CREATION
  • FILE_DELETION
  • FILE_MODIFICATION
  • FILE_READ (por ejemplo, leer un archivo de contraseñas)
  • FILE_COPY (por ejemplo, copiar un archivo a una memoria USB)
  • FILE_OPEN (por ejemplo, abrir un archivo puede indicar una violación de la seguridad)

Eventos que no pertenecen a ninguna otra categoría, incluidos los eventos de Windows sin clasificar.

  • GENERIC_EVENT

Eventos de exclusión mutua (objeto de exclusión mutua):

  • MUTEX_UNCATEGORIZED
  • MUTEX_CREATION

Telemetría de red, incluidas cargas útiles de protocolo sin procesar, como DHCP y DNS, así como resúmenes de protocolos como HTTP, SMTP y FTP, y eventos de flujo y conexión de Netflow y firewalls.

  • NETWORK_UNCATEGORIZED
  • NETWORK_FLOW (por ejemplo, estadísticas de flujo agregadas de Netflow)
  • NETWORK_CONNECTION (por ejemplo, detalles de conexión de red de un firewall)
  • NETWORK_FTP
  • NETWORK_DHCP
  • NETWORK_DNS
  • NETWORK_HTTP
  • NETWORK_SMTP

Cualquier evento relacionado con un proceso, como el inicio de un proceso, un proceso que crea algo malicioso, un proceso que se inserta en otro proceso, un cambio de una clave de registro, la creación de un archivo malicioso en el disco, etcétera

  • PROCESS_INJECTION
  • PROCESS_LAUNCH
  • PROCESS_MODULE_LOAD
  • PROCESS_OPEN
  • PROCESS_PRIVILEGE_ESCALATION
  • PROCESS_TERMINATION
  • PROCESS_UNCATEGORIZED

Usa los eventos REGISTRY en lugar de los eventos SETTING cuando se trate de eventos de registro específicos de Microsoft Windows:

  • REGISTRY_UNCATEGORIZED
  • REGISTRY_CREATION
  • REGISTRY_MODIFICATION
  • REGISTRY_DELETION

Eventos orientados a análisis. Incluye análisis a pedido y detecciones de comportamiento que realizan los productos de seguridad de extremos (EDR, AV y DLP). Solo se usa cuando se adjunta un SecurityResult a otro tipo de evento (como PROCESS_LAUNCH).

  • SCAN_UNCATEGORIZED
  • SCAN_FILE
  • SCAN_HOST
  • SCAN_PROCESS
  • SCAN_VULN_HOST
  • SCAN_VULN_NETWORK

Eventos de tareas programadas (Programador de tareas de Windows, cron, etc.):

  • SCHEDULED_TASK_UNCATEGORIZED
  • SCHEDULED_TASK_CREATION
  • SCHEDULED_TASK_DELETION
  • SCHEDULED_TASK_ENABLE
  • SCHEDULED_TASK_DISABLE
  • SCHEDULED_TASK_MODIFICATION

Eventos de servicio:

  • SERVICE_UNSPECIFIED
  • SERVICE_CREATION
  • SERVICE_DELETION
  • SERVICE_START
  • SERVICE_STOP

Configuración de eventos, incluso cuando se cambia la configuración del sistema en un extremo. Para establecer los requisitos de los eventos, consulta aquí.

  • SETTING_UNCATEGORIZED
  • SETTING_CREATION
  • SETTING_MODIFICATION
  • SETTING_DELETION

Mensajes de estado de productos de seguridad para indicar que los agentes están activos y enviar la versión, la huella digital y otros tipos de datos.

  • STATUS_UNCATEGORIZED
  • STATUS_HEARTBEAT (indica que el producto está activo)
  • STATUS_STARTUP
  • STATUS_SHUTDOWN
  • STATUS_UPDATE (actualización de software o huella digital)

Eventos de registro de auditoría del sistema:

  • SYSTEM_AUDIT_LOG_UNCATEGORIZED
  • SYSTEM_AUDIT_LOG_WIPE

Eventos de actividad de autenticación del usuario:

  • USER_UNCATEGORIZED
  • USER_BADGE_IN (por ejemplo, cuando un usuario accede físicamente a un sitio)
  • USER_CHANGE_PASSWORD
  • USER_CHANGE_PERMISSIONS
  • USER_COMMUNICATION
  • USER_CREATION
  • USER_DELETION
  • USER_LOGIN
  • USER_LOGOUT
  • USER_RESOURCE_ACCESS
  • USER_RESOURCE_CREATION
  • USER_RESOURCE_DELETION
  • USER_RESOURCE_UPDATE_CONTENT
  • USER_RESOURCE_UPDATE_PERMISSIONS

Metadata.collected_timestamp

  • Propósito: Codifica la marca de tiempo de GMT cuando la infraestructura de recopilación local del proveedor recopiló el evento.
  • Codificación: RFC 3339, según corresponda para el formato de marca de tiempo JSON o Proto3.
  • Ejemplo:
    • RFC 3339: “2019-09-10T20:32:31-08:00”
    • Formato de Proto3: "2012-04-23T18:25:43.511Z"

Metadata.event_timestamp

  • Propósito: Codifica la marca de tiempo GMT cuando se generó el evento.
  • Obligatorio:
  • Codificación: RFC 3339, según corresponda para el formato de marca de tiempo JSON o Proto3.
  • Ejemplo:
    • RFC 3339: 2019-09-10T20:32:31-08:00
    • Formato Proto3: 2012-04-23T18:25:43.511Z

Metadata.description

  • Propósito: Descripción legible del evento.
  • Codificación: Una string alfanumérica, la puntuación permitida, un máximo de 1,024 bytes.
  • Ejemplo: El archivo c:\bar\foo.exe no puede acceder al documento sensible c:\documents\earnings.docx.

Metadata.product_event_type

  • Propósito: Nombre o tipo de evento corto, descriptivo, legible y específico del producto
  • Codificación: Es una string alfanumérica, se permite la puntuación y se permite un máximo de 64 bytes.
  • Ejemplos:
    • Evento de creación del registro
    • ProcessRollUp
    • Se detectó una elevación de privilegios
    • Software malicioso bloqueado

Metadata.product_log_id

  • Propósito: Codifica un identificador de evento específico del proveedor para identificar el evento de forma única (un GUID). Los usuarios pueden usar este identificador para buscar el evento en cuestión en la consola de propiedad del proveedor.
  • Codificación: Se distingue entre mayúsculas y minúsculas, es una string alfanumérica, se permite la puntuación y se permite un máximo de 256 bytes.
  • Ejemplo: ABcd1234-98766

Metadata.product_name

  • Propósito: Especifica el nombre del producto.
  • Codificación: Se distingue entre mayúsculas y minúsculas, es una string alfanumérica, se permite la puntuación y se permite un máximo de 256 bytes.
  • Ejemplos:
    • Halcón
    • Protección de extremos de Symantec

Metadata.product_version

  • Propósito: Especifica la versión del producto.
  • Codificación: Se permiten una cadena alfanumérica, puntos y guiones. Se permite un máximo de 32 bytes.
  • Ejemplos:
    • 1.2.3b
    • 10.3:rev1

Metadata.url_back_to_product

  • Propósito: URL que vincula a un sitio web relevante donde puedes ver más información sobre este evento específico (o la categoría del evento general).
  • Codificación: una URL RFC 3986 válida con parámetros opcionales, como información del puerto, etc. Debe tener un prefijo de protocolo antes de la URL (por ejemplo, https:// o http://).
  • Ejemplo: https://newco.altostrat.com:8080/event_info?event_id=12345

Metadata.vendor_name

  • Propósito: Especifica el nombre del proveedor del producto.
  • Codificación: Se distingue entre mayúsculas y minúsculas, es una string alfanumérica, se permite la puntuación y se permite un máximo de 256 bytes.
  • Ejemplos:
    • CrowdStrike
    • Symantec

Población de metadatos del sustantivo

En esta sección, la palabra Noun es un término general utilizado para representar las entidades: Noun, Noun, Noun, Noun, Noun y Noun. Estas entidades tienen atributos comunes, pero representan objetos diferentes en un evento. Para obtener más información sobre las entidades y lo que cada una representa en un evento, consulta Cómo dar formato a los datos de registro como UDM.

Noun.asset_id

  • Propósito: Identificador de dispositivo único específico del proveedor (por ejemplo, un GUID que se genera cuando se instala el software de seguridad de extremos en un dispositivo nuevo que se usa para hacer un seguimiento de ese dispositivo único a lo largo del tiempo)
  • Codificación: VendorName.ProductName:ID, en el que VendorName.ProductName:ID no distingue entre mayúsculas y minúsculas* *nombre del proveedor como "Carbon Black", VendorName.ProductName:ID es un nombre de producto que no distingue mayúsculas de minúsculas, como "Response" o "Endpoint Protection" y el ID es un identificador de cliente específico del proveedor que es único a nivel global dentro del entorno de su cliente (por ejemplo, un GUID o un valor único que identifica un dispositivo único). VendorName y ProductName son alfanuméricos y no deben tener más de 32 caracteres. El ID puede tener un máximo de 128 caracteres y puede incluir caracteres alfanuméricos, guiones y puntos.
  • Ejemplo: CrowdStrike.Falcon:0bce4259-4ada-48f3-a904-9a526b01311f

Noun.email

  • Propósito: Dirección de correo electrónico
  • Codificación: Es el formato estándar de dirección de correo electrónico.
  • Ejemplo: johns@test.altostrat.com

Noun.file

Noun.hostname

  • Propósito: Nombre de host del cliente o campo de nombre de dominio. No lo incluyas si hay una URL.
  • Codificación: es un nombre de host RFC 1123 válido.
  • Ejemplos:
    • userwin10
    • www.altostrat.com

Noun.platform

  • Propósito: Sistema operativo de la plataforma.
  • Codificación: Enum
  • Valores posibles:
    • LINUX
    • MAC
    • WINDOWS
    • UNKNOWN_PLATFORM

Noun.platform_patch_level

  • Propósito: Nivel de parche del sistema operativo de la plataforma.
  • Codificación: Es una string alfanumérica con puntuación, un máximo de 64 caracteres.
  • Ejemplo: compilación 17134.48

Noun.platform_version

  • Propósito: La versión del sistema operativo de la plataforma.
  • Codificación: Es una string alfanumérica con puntuación, un máximo de 64 caracteres.
  • Ejemplo: Microsoft Windows 10 versión 1803

Noun.process

Noun.ip

  • Propósito:
    • Dirección IP única asociada con una conexión de red.
    • Una o más direcciones IP asociadas con el dispositivo de un participante en el momento del evento (por ejemplo, si un producto EDR conoce todas las direcciones IP asociadas con un dispositivo, puede codificarlas todas dentro de los campos de IP)
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.
  • Repetibilidad:
    • Si un evento describe una conexión de red específica (por ejemplo, srcip:srcport > dstip:dstport), el proveedor debe proporcionar una sola dirección IP.
    • Si un evento describe la actividad general que ocurre en el dispositivo de un participante, pero no una conexión de red específica, el proveedor podría proporcionar todas las direcciones IP asociadas del dispositivo en el momento del evento.
  • Ejemplos:
    • 192.168.1.2
    • 2001:db8:1:3::1

Noun.port

  • Propósito: Número de puerto de red de origen o destino cuando se describe una conexión de red específica dentro de un evento.
  • Codificación: un número de puerto TCP/IP válido del 1 al 65,535.
  • Ejemplos:

    • 80
    • 443

Noun.mac

  • Propósito: Una o más direcciones MAC asociadas con un dispositivo.
  • Codificación: Una dirección MAC válida (EUI-48) en ASCII.
  • Repetibilidad: El proveedor puede proporcionar todas las direcciones MAC asociadas del dispositivo en el momento del evento.
  • Ejemplos:
    • fedc:ba98:7654:3210:fedc:ba98:7654:3210
    • 1080:0:0:0:8:800:200c:417a
    • 00:a0:0:0:c9:14:c8:29

Noun.administrative_domain

  • Propósito: Es el dominio al que pertenece el dispositivo (por ejemplo, el dominio de Windows).
  • Codificación: Es una string de nombre de dominio válida (128 caracteres como máximo).
  • Ejemplo: corp.altostrat.com

Noun.registry

Noun.url

  • Propósito: URL estándar
  • Codificación: URL (RFC 3986). Debe tener un prefijo de protocolo válido (por ejemplo, https:// o ftp://). Debe incluir el dominio completo y la ruta de acceso. Puede incluir los parámetros de la URL.
  • Ejemplo: https://foo.altostrat.com/bletch?a=b;c=d

Noun.user

Propagación de metadatos de Authentication

Authentication.AuthType

  • Propósito: Tipo de sistema con el que se asocia un evento de autenticación (UDM de Chronicle).
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • AUTHTYPE_UNSPECIFIED
    • MACHINE: Autenticación de máquina
    • FÍSICA: Autenticación física (por ejemplo, un lector de insignias)
    • SSO
    • TACACS: protocolo de la familia TACACS para la autenticación de sistemas en red (por ejemplo, TACACS o TACACS+)
    • VPN

Authentication.Authentication_Status

  • Propósito: Describe el estado de autenticación de un usuario o una credencial específica.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_AUTHENTICATION_STATUS: Estado de autenticación predeterminado
    • ACTIVE: el método de autenticación está activo.
    • SUSPENDED: El método de autenticación está en estado suspendido o inhabilitado
    • BORRADO: Se borró el método de autenticación
    • NO_ACTIVE_CREDENTIALS: El método de autenticación no tiene credenciales activas.

Authentication.auth_details

  • Propósito: Detalles de autenticación definidos por el proveedor.
  • Codificación: Es una cadena.

Authentication.Mechanism

  • Propósito: Son los mecanismos que se usan para la autenticación.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • MECHANISM_UNSPECIFIED: Mecanismo de autenticación predeterminado.
    • BADGE_READER
    • BATCH: Autenticación por lotes.
    • CACHED_INTERACTIVE: autenticación interactiva con credenciales almacenadas en caché.
    • HARDWARE_KEY
    • LOCAL
    • MECHANISM_OTHER: otro mecanismo que no se define aquí.
    • RED: Autenticación de la red.
    • NETWORK_CLEAR_TEXT: Autenticación de texto no encriptado de la red.
    • NEW_CREDENTIALS: Autenticación con credenciales nuevas.
    • OTP
    • REMOTE: Autenticación remota
    • REMOTE_INTERACTIVE: RDP, servicios de terminal, Virtual Network Computing (VNC), etcétera.
    • SERVICE: Autenticación del servicio.
    • DESBLOQUEAR: Autenticación de desbloqueo interactivo y directa.
    • USERNAME_PASSWORD

Población de metadatos de DHCP

Los campos de metadatos del protocolo de control dinámico de host (DHCP) capturan información de registro del protocolo de administración de red DHCP.

Dhcp.client_hostname

  • Propósito: Es el nombre de host para el cliente. Consulta el documento RFC 2132, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: Es una cadena.

Dhcp.client_identifier

  • Propósito: Es el identificador del cliente. Consulta el documento RFC 2132, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: Bytes.

Dhcp.file

  • Propósito: Nombre de archivo para la imagen de arranque.
  • Codificación: Es una cadena.

Dhcp.flags

  • Propósito: Es el valor del campo de marcas DHCP.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.hlen

  • Propósito: Longitud de la dirección de hardware.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.hops

  • Propósito: recuento de saltos de DHCP.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.htype

  • Propósito: Tipo de dirección de hardware.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.lease_time_seconds

  • Propósito: Tiempo de concesión solicitado por el cliente para una dirección IP en segundos. Consulta el documento RFC 2132, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.opcode

  • Propósito: Código de operación BOOTP (consulta la sección 3 de RFC 951).
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_OPCODE
    • SOLICITUD DE ARRANQUE
    • BOOTREPLY

Dhcp.requested_address

  • Propósito: Es el identificador del cliente. Consulta el documento RFC 2132, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Dhcp.seconds

  • Propósito: Segundos transcurridos desde que el cliente comenzó el proceso de adquisición o renovación de la dirección.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.sname

  • Propósito: Nombre del servidor desde el que el cliente solicitó iniciar.
  • Codificación: Es una cadena.

Dhcp.transaction_id

  • Propósito: ID de transacción del cliente.
  • Codificación: Es un número entero de 32 bits sin firma.

Dhcp.type

  • Propósito: Tipo de mensaje DHCP. Consulta RFC 1533 para obtener más información.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_MESSAGE_TYPE
    • DESCUBRE
    • OFERTA
    • SOLICITUD
    • RECHAZAR
    • Confirmación
    • NÚMERO
    • RELEASE
    • INFORMAR
    • WIN_DELECTED
    • WIN_EXPIRED

Dhcp.chaddr

  • Propósito: Dirección IP para el hardware del cliente.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Dhcp.ciaddr

  • Propósito: Dirección IP del cliente.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Dhcp.giaddr

  • Propósito: Dirección IP del agente de retransmisión.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Dhcp.siaddr

  • Propósito: Dirección IP para el próximo servidor de arranque.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Dhcp.yiaddr

  • Propósito: Tu dirección IP.
  • Codificación: una dirección IPv4 o IPv6 válida (RFC 5942) codificada en ASCII.

Población de metadatos de la opción DHCP

Los campos de metadatos de la opción DHCP capturan la información de registro de la opción DHCP.

Option.code

  • Propósito: Almacena el código de opción DHCP. Consulta el documento RFC 1533, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: Es un número entero de 32 bits sin firma.

Option.data

  • Propósito: Almacena los datos de la opción DHCP. Consulta el documento RFC 1533, Opciones de DHCP y extensiones de proveedor de BOOTP para obtener más información.
  • Codificación: Bytes.

Población de metadatos de DNS

Los campos de metadatos de DNS capturan información relacionada con la solicitud de DNS y los paquetes de respuesta. Tienen una correspondencia uno a uno con los datos que se encuentran en los datagramas de solicitud y respuesta de DNS.

Dns.authoritative

  • Objetivo: Se establece como verdadero para servidores DNS autorizados.
  • Codificación: Booleano.

Dns.id

  • Propósito: Almacena el identificador de consulta de DNS.
  • Codificación: Número entero de 32 bits

Dns.response

  • Propósito: Se configura como verdadero si el evento es una respuesta DNS.
  • Codificación: Booleano.

Dns.opcode

  • Propósito: Almacena el código operativo DNS que se usa para especificar el tipo de consulta de DNS (estándar, inverso, estado del servidor, etcétera).
  • Codificación: Número entero de 32 bits

Dns.recursion_available

  • Propósito: Se establece como verdadero si hay una búsqueda de DNS recurrente disponible.
  • Codificación: Booleano.

Dns.recursion_desired

  • Propósito: Se establece como verdadero si se solicita una búsqueda de DNS recurrente.
  • Codificación: Booleano.

Dns.response_code

  • Propósito: Almacena el código de respuesta de DNS según se define en RFC 1035, Implementación y especificación de nombres de dominio.
  • Codificación: Número entero de 32 bits

Dns.truncated

  • Propósito: Se establece como verdadero si se trata de una respuesta DNS truncada.
  • Codificación: Booleano.

Dns.questions

Dns.answers

Dns.authority

Dns.additional

Población de metadatos de la pregunta de DNS

Los campos de metadatos de la pregunta de DNS capturan la información que se incluye en la sección de pregunta de un mensaje de protocolo de dominio.

Question.name

  • Propósito: Almacena el nombre de dominio.
  • Codificación: Es una cadena.

Question.class

  • Propósito: Almacena el código que especifica la clase de la consulta.
  • Codificación: Número entero de 32 bits

Question.type

  • Propósito: Almacena el código que especifica el tipo de consulta.
  • Codificación: Número entero de 32 bits

Población de metadatos del Registro de recursos de DNS

Los campos de metadatos del registro de recursos DNS capturan la información contenida en el registro de recursos de un mensaje de protocolo de dominio.

ResourceRecord.binary_data

  • Propósito: Almacena los bytes sin procesar de cualquier string que no sea UTF8 que podría incluirse como parte de una respuesta DNS. Este campo solo se debe utilizar si los datos de respuesta que muestra el servidor DNS contienen datos que no son UTF8. De lo contrario, coloca la respuesta DNS en el campo de datos que aparece a continuación. Este tipo de información se debe almacenar aquí en lugar de en ResourceRecord.data.
  • Codificación: Bytes.

ResourceRecord.class

  • Propósito: Almacena el código que especifica la clase del registro de recursos.
  • Codificación: Número entero de 32 bits

ResourceRecord.data

  • Propósito: Almacena la carga útil o la respuesta a la pregunta de DNS para todas las respuestas codificadas en formato UTF-8. Por ejemplo, el campo de datos podría mostrar la dirección IP de la máquina a la que hace referencia el nombre de dominio. Si el registro de recursos es para una clase o un tipo diferente, puede contener otro nombre de dominio (cuando un nombre de dominio se redirecciona a otro). Los datos se deben almacenar tal como están en la respuesta de DNS.
  • Codificación: Es una cadena.

ResourceRecord.name

  • Propósito: Almacena el nombre del propietario del registro de recursos.
  • Codificación: Es una cadena.

ResourceRecord.ttl

  • Propósito: Almacena el intervalo de tiempo durante el cual el registro de recursos se puede almacenar en caché antes de que se vuelva a consultar la fuente de la información.
  • Codificación: Número entero de 32 bits

ResourceRecord.type

  • Propósito: Almacena el código que especifica el tipo de registro de recursos.
  • Codificación: Número entero de 32 bits

Propagación de metadatos de correo electrónico

La mayoría de los campos de metadatos de correo electrónico capturan las direcciones de correo electrónico incluidas en el encabezado del mensaje y deben cumplir con el formato de dirección de correo electrónico estándar (buzón de correo local@dominio) como se define en RFC 5322. Por ejemplo, felipe@correo.example.com.

Email.from

  • Propósito: Almacena la dirección de correo electrónico from.
  • Codificación: Es una cadena.

Email.reply_to

  • Propósito: Almacena la dirección de correo electrónico reply_to.
  • Codificación: Es una cadena.

Email.to

  • Propósito: Almacena las direcciones de correo electrónico to.
  • Codificación: Es una cadena.

Email.cc

  • Propósito: Almacena las direcciones de correo electrónico cc.
  • Codificación: Es una cadena.

Email.bcc

  • Propósito: Almacena las direcciones de correo electrónico Cco.
  • Codificación: Es una cadena.

Email.mail_id

  • Propósito: Almacena el ID de correo electrónico (o mensaje).
  • Codificación: Es una cadena.
  • Ejemplo: 192544.132632@email.example.com

Email.subject

  • Propósito: Almacena el asunto del correo electrónico.
  • Codificación: Es una cadena.
  • Ejemplo: "Lee este mensaje".

Propagación de metadatos de extensiones

Tipos de eventos con metadatos de primera clase que el UDM de Chronicle aún no clasificó. Extensions.auth

  • Propósito: Extensión de los metadatos de autenticación.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Metadatos de la zona de pruebas (todos los comportamientos que muestra un archivo, por ejemplo, FireEye)
    • Datos de Control de acceso a la red (NAC).
    • Son detalles de LDAP sobre un usuario (por ejemplo, función, organización, etc.).

Extensions.auth.auth_details

  • Objetivo: Especificar los detalles específicos del proveedor para el tipo o mecanismo de autenticación. Los proveedores de autenticación suelen definir tipos, como via_mfa, via_ad, etc., que proporcionan información útil sobre el tipo de autenticación. Estos tipos aún se pueden generalizar en auth.type o auth.mechanism para mejorar la usabilidad y la compatibilidad con reglas entre conjuntos de datos.
  • Codificación: Es una cadena.
  • Ejemplos: via_mfa o via_ad.

Extensions.vulns

  • Propósito: Extensión de los metadatos de vulnerabilidad.
  • Codificación: Es una cadena.
  • Ejemplo:
    • Datos del análisis de vulnerabilidades del host.

Propagación de metadatos de archivos

File.file_metadata

  • Propósito: Metadatos asociados con el archivo.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Autor
    • Número de revisión
    • Número de versión
    • Fecha en que se guardó por última vez

File.full_path

  • Propósito: Ruta de acceso completa que identifica la ubicación del archivo en el sistema.
  • Codificación: Es una cadena.
  • Ejemplo: \Archivos de programa\Utilidades personalizadas\Prueba.exe

File.md5

  • Propósito: Valor de hash MD5 para el archivo.
  • Codificación: Es una cadena, en minúscula.
  • Ejemplo: 35bf623e7db9bf0d68d0dda764fd9e8c

File.mime_type

  • Propósito: Es el tipo de extensiones multipropósito de correo de Internet (MIME) para el archivo.
  • Codificación: Es una cadena.
  • Ejemplos:
    • PE
    • PDF
    • secuencia de comandos de PowerShell

File.sha1

  • Propósito: Valor de hash SHA-1 para el archivo.
  • Codificación: Es una cadena, en minúscula.
  • Ejemplo: eb3520d53b45815912f2391b713011453ed8abcf

File.sha256

  • Propósito: Es un valor de hash SHA-256 para el archivo.
  • Codificación: Es una cadena, en minúscula.
  • Ejemplo:
    • d7173c568b8985e61b4050f81b3fd8e75bc922d2a0843d7079c81ca4b6e36417

File.size

  • Propósito: Es el tamaño del archivo.
  • Codificación: Es un número entero de 64 bits sin firma.
  • Ejemplo: 342135.

Propagación de metadatos de FTP

Ftp.command

  • Propósito: Almacena el comando de FTP.
  • Codificación: Es una cadena.
  • Ejemplos:
    • binary
    • borrar
    • get
    • put

Población de metadatos del grupo

Información sobre un grupo organizativo.

Group.creation_time

  • Propósito: Hora de creación del grupo.
  • Codificación: RFC 3339, según corresponda para el formato de marca de tiempo JSON o Proto3.

Group.email_addresses

  • Propósito: Información de contacto del grupo.
  • Codificación: Correo electrónico.

Group.group_display_name

  • Propósito: Nombre visible del grupo.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Finanzas
    • RR.HH.
    • Marketing

Group.product_object_id

  • Propósito: Es el identificador de objeto de usuario único a nivel global para el producto, como un identificador de objeto LDAP.
  • Codificación: Es una cadena.

Group.windows_sid

  • Propósito: Campo de atributo del grupo del identificador de seguridad (SID) de Microsoft Windows.
  • Codificación: Es una cadena.

Población de metadatos de HTTP

Http.method

  • Propósito: Almacena el método de solicitud HTTP.
  • Codificación: Es una cadena.
  • Ejemplos:
    • GET
    • HEAD
    • POST

Http.referral_url

  • Propósito: Almacena la URL para la URL de referencia HTTP.
  • Codificación: una URL RFC 3986 válida.
  • Ejemplo: https://www.altostrat.com

Http.response_code

  • Propósito: Almacena el código de estado de respuesta HTTP, que indica si una solicitud HTTP específica se completó correctamente.
  • Codificación: Número entero de 32 bits
  • Ejemplos:
    • 400
    • 404

Http.useragent

  • Propósito: Almacena el encabezado de la solicitud de usuario-agente, que incluye el tipo de aplicación, el sistema operativo, el proveedor de software o la versión de software del usuario-agente del software solicitante.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Mozilla/5.0 (X11; Linux x86_64)
    • AppleWebKit/534.26 (KHTML, como Gecko)
    • Chrome/41.0.2217.0
    • Safari/527.33

Población de metadatos de ubicación

Location.city

  • Propósito: Almacena el nombre de la ciudad.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Sunnyvale
    • Chicago
    • Málaga

Location.country_or_region

  • Propósito: Almacena el nombre del país o la región del mundo.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Estados Unidos
    • Reino Unido
    • España

Location.name

  • Propósito: Almacena el nombre específico de la empresa, como un edificio o campus.
  • Codificación: Es una cadena.
  • Ejemplos:
    • Campus 7B
    • Edificio A2

Location.state

  • Propósito: Almacena el nombre del estado, la provincia o el territorio.
  • Codificación: Es una cadena.
  • Ejemplos:
    • California
    • Illinois
    • Ontario

Población de metadatos de la red

Network.application_protocol

  • Propósito: Indica el protocolo de aplicación de red.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_APPLICATION_PROTOCOL
    • QUIC
    • HTTP
    • HTTPS
    • DNS
    • DHCP

Network.direction

  • Propósito: Indica la dirección del tráfico de red.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_DIRECTION
    • ENTRANTE
    • SALIENTE
    • TRANSMISIONES

Network.email

  • Propósito: Especifica la dirección de correo electrónico del remitente o destinatario.
  • Codificación: Es una cadena.
  • Ejemplo: jcheng@empresa.example.com

Network.ip_protocol

  • Propósito: Indica el protocolo IP.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_IP_PROTOCOL
    • EIGRP: Protocolo mejorado de enrutamiento de puerta de enlace interna
    • ESP: carga útil de seguridad de encapsulación
    • ETHERIP: encapsulamiento Ethernet dentro de IP
    • GRE: Encapsulamiento de enrutamiento genérico
    • ICMP: Protocolo de mensajes de control de Internet
    • IGMP: Protocolo de administración de grupos de Internet
    • IP6IN4: encapsulamiento IPv6
    • PIM: multidifusión independiente del protocolo
    • TCP: Protocolo de control de transmisión
    • UDP: protocolo de datagramas de usuario
    • VRRP: Protocolo de redundancia de router virtual

Network.received_bytes

  • Propósito: Especifica la cantidad de bytes recibidos.
  • Codificación: Es un número entero de 64 bits sin firma.
  • Ejemplo: 12,453,654,768

Network.sent_bytes

  • Propósito: Especifica la cantidad de bytes enviados.
  • Codificación: Es un número entero de 64 bits sin firma.
  • Ejemplo: 7,654,876

Network.session_duration

  • Propósito: Almacena la duración de la sesión de red, que por lo general se muestra en un evento de soltar para la sesión. Para establecer la duración, puedes establecer network.session_duration.seconds = 1 (escribe int64) o network.session_duration.nanos = 1 (escribe int32).
  • Codificación:
    • Número entero de 32 bits: para segundos (network.session_duration.seconds).
    • Número entero de 64 bits: Para nanosegundos (network.session_duration.nanos)

Network.session_id

  • Propósito: Almacena el identificador de sesión de red.
  • Codificación: Es una cadena.
  • Ejemplo: SID:ANON:www.w3.org:j6oAOxCWZh/CD723LGeXlf-01:34

Población de metadatos de proceso

Process.command_line

  • Propósito: Almacena la string de la línea de comandos para el proceso.
  • Codificación: Es una cadena.
  • Ejemplo: c:\windows\system32\net.exe.

Process.product_specific_process_id

  • Propósito: Almacena el ID de proceso específico del producto.
  • Codificación: Es una cadena.
  • Ejemplos: MySQL:78778 o CS:90512

Process.parent_process.product_specific_process_id

  • Propósito: Almacena el ID de proceso específico del producto para el proceso superior.
  • Codificación: Es una cadena.
  • Ejemplos: MySQL:78778 o CS:90512

Process.file

  • Propósito: Almacena el nombre del archivo que usa el proceso.
  • Codificación: Es una cadena.
  • Ejemplo: report.xls

Process.parent_process

  • Propósito: Almacena los detalles del proceso superior.
  • Codificación: Sustantivo (proceso).

Process.pid

  • Propósito: Almacena el ID del proceso.
  • Codificación: Es una cadena.
  • Ejemplos:
    • 308
    • 2002

Población de metadatos del registro

Registry.registry_key

  • Propósito: Almacena la clave de registro asociada con una aplicación o un componente del sistema.
  • Codificación: Es una cadena.
  • Ejemplo: HKEY_LOCAL_MACHINE/SYSTEM/DriverDatabase

Registry.registry_value_name

  • Propósito: Almacena el nombre del valor del registro asociado con una aplicación o un componente del sistema.
  • Codificación: Es una cadena.
  • Ejemplo: TEMP

Registry.registry_value_data

  • Propósito: Almacena los datos asociados con un valor de registro.
  • Codificación: Es una cadena.
  • Ejemplo: %USERPROFILE%\Configuración local\Temp

Propagación de metadatos de los resultados de seguridad

Los metadatos de Resultados de seguridad incluyen detalles sobre los riesgos y las amenazas de seguridad que encontró un sistema de seguridad, así como las acciones que se tomaron para mitigar esos riesgos y amenazas.

SecurityResult.about

  • Propósito: Proporciona una descripción del resultado de seguridad.
  • Codificación: Sustantivo.

SecurityResult.action

  • Propósito: Especificar una acción de seguridad.
  • Codificación: Es el tipo enumerado.
  • Valores posibles: Chronicle UDM define las siguientes acciones de seguridad:
    • ALLOW
    • ALLOW_WITH_MODIFICATION: El archivo o el correo electrónico se desinfectó o reescribió y, de todos modos, se reenvió.
    • BLOQUEAR
    • CUARENTENA: Almacenar para análisis posterior (no significa bloquear).
    • UNKNOWN_ACTION

SecurityResult.action_details

  • Propósito: Detalles proporcionados por el proveedor sobre las medidas que se tomaron como resultado del incidente de seguridad. Por lo general, las acciones de seguridad se traducen mejor en el campo del UDM Security_Result.action, que es más general. Sin embargo, es posible que debas escribir reglas para la descripción exacta de la acción proporcionada por el proveedor.
  • Codificación: Es una cadena.
  • Ejemplos: Soltar, bloquear, desencriptar, encriptar

SecurityResult.category

  • Propósito: Especificar una categoría de seguridad
  • Codificación: Es una enumeración.
  • Valores posibles: Chronicle UDM define las siguientes categorías de seguridad:
    • LCA_VIOLATION: Intento de acceso no autorizado, incluido el intento de acceso a archivos, servicios web, procesos, objetos web, etc.
    • AUTH_VIOLATION: Falló la autenticación, por ejemplo, una contraseña incorrecta o una autenticación de dos factores incorrecta.
    • DATA_AT_REST—DLP: Se encontraron datos de sensores en reposo en un análisis.
    • DATA_DESTRUCTION: Intenta destruir o borrar datos.
    • DATA_EXFILTRATION: DLP: transmisión de datos de sensores, copia a unidad de memoria USB.
    • EXPLOIT: Intentos de desbordamiento, codificaciones de protocolo incorrectas, ROP, inyección de SQL, etc., basadas en la red y en el host.
    • CORREO_PHISHING: correos electrónicos de suplantación de identidad (phishing), mensajes de chat, etc.
    • EMAIL_SPAM: Correo electrónico, mensaje y otros elementos de spam
    • POST_SPOOFING: dirección de correo electrónico de origen falsa, etc.
    • NETWORK_CATEGORIZED_CONTENT
    • NETWORK_COMMAND_AND_CONTROL: si se conoce el canal de comando y control.
    • NETWORK_DENIAL_OF_SERVICE
    • NETWORK_MALICIOUS: Comando y control, exploit de red, actividad sospechosa, posible túnel inverso, etcétera.
    • NETWORK_SUSPICIOUS: No relacionada con la seguridad; por ejemplo, la URL está vinculada a juegos de apuestas, etc.
    • NETWORK_RECON: Análisis de puerto detectado por un IDS, que sondea por una aplicación web.
    • POLICY_VIOLATION: Incumplimiento de la política de seguridad, lo que incluye incumplimientos de firewall, proxy y reglas de HIPS o acciones de bloqueo de NAC.
    • SOFTWARE_MALICIOUS: Software malicioso, software espía, rootkits, etc.
    • SOFTWARE_PUA: Aplicación potencialmente no deseada, como software con anuncios, etc.
    • SOFTWARE_SUSPICIOUS
    • UNKNOWN_CATEGORY

SecurityResult.confidence

  • Propósito: Especificar un nivel de confianza con respecto a un evento de seguridad según las estimaciones del producto
  • Codificación: Es una enumeración.
  • Valores posibles: Chronicle UDM define las siguientes categorías de confianza del producto:
    • UNKNOWN_CONFIDENCE
    • LOW_CONFIDENCE
    • MEDIUM_CONFIDENCE
    • HIGH_CONFIDENCE

SecurityResult.confidence_details

  • Propósito: Detalles adicionales sobre la confianza de un evento de seguridad según las estimaciones del proveedor del producto.
  • Codificación: Es una cadena.

SecurityResult.priority

  • Propósito: Especifica una prioridad con respecto a un evento de seguridad según la estimación del proveedor del producto.
  • Codificación: Es una enumeración.
  • Valores posibles: Chronicle UDM define las siguientes categorías de prioridad de producto:
    • UNKNOWN_PRIORITY
    • LOW_PRIORITY
    • MEDIUM_PRIORITY
    • HIGH_PRIORITY

SecurityResult.priority_details

  • Propósito: Información específica del proveedor sobre la prioridad del resultado de seguridad.
  • Codificación: Es una cadena.

SecurityResult.rule_id

  • Propósito: Identificador de la regla de seguridad.
  • Codificación: Es una cadena.
  • Ejemplos:
    • 08123
    • 5d2b44d0-5ef6-40f5-a704-47d61d3babbe

SecurityResult.rule_name

  • Propósito: Nombre de la regla de seguridad.
  • Codificación: Es una cadena.
  • Ejemplo: BlockInboundToOracle.

SecurityResult.severity

  • Propósito: Gravedad de un evento de seguridad según la estimación del proveedor del producto con los valores definidos por el UDM de Chronicle.
  • Codificación: Es una enumeración.
  • Valores posibles: Chronicle UDM define la siguiente gravedad del producto:
    • UNKNOWN_SEVERITY: no malicioso
    • INFORMATIVO: No malicioso
    • ERROR: No malicioso
    • BAJO: Malicioso
    • MEDIA: Malicioso
    • ALTA: Malicioso

SecurityResult.severity_details

  • Propósito: Gravedad de un evento de seguridad según la estimación del proveedor del producto
  • Codificación: Es una cadena.

SecurityResult.threat_name

  • Propósito: El nombre de la amenaza de seguridad.
  • Codificación: Es una cadena.
  • Ejemplos:
    • W32/Archivo-A
    • Vencedor

SecurityResult.url_back_to_product

  • Propósito: Es la URL que te dirige a la consola del producto de origen para este evento de seguridad.
  • Codificación: Es una cadena.

Población de metadatos de usuarios

User.email_addresses

  • Propósito: Almacena las direcciones de correo electrónico del usuario.
  • Codificación: Es una cadena repetida.
  • Ejemplo: juanlocke@empresa.ejemplo.com

User.employee_id

  • Propósito: Almacena el ID de empleado de recursos humanos para el usuario.
  • Codificación: Es una cadena.
  • Ejemplo: 11223344.

User.first_name

  • Propósito: Almacena el nombre del usuario.
  • Codificación: Es una cadena.
  • Ejemplo: Juan.

User.middle_name

  • Propósito: Almacena el segundo nombre del usuario.
  • Codificación: Es una cadena.
  • Ejemplo: Antonio.

User.last_name

  • Propósito: Almacena el apellido del usuario.
  • Codificación: Es una cadena.
  • Ejemplo: Locke.

User.group_identifiers

  • Propósito: Almacena los ID del grupo (un GUID, un OID de LDAP o uno similar) asociados con un usuario.
  • Codificación: Es una cadena repetida.
  • Ejemplo: admin-users.

User.phone_numbers

  • Propósito: Almacena los números de teléfono del usuario.
  • Codificación: Es una cadena repetida.
  • Ejemplo: 800-555-0101

User.title

  • Propósito: Almacena el cargo para el usuario.
  • Codificación: Es una cadena.
  • Ejemplo: Administrador de relaciones con clientes.

User.user_display_name

  • Propósito: Almacena el nombre visible del usuario.
  • Codificación: Es una cadena.
  • Ejemplo: John Locke.

User.userid

  • Propósito: Almacena el ID del usuario.
  • Codificación: Es una cadena.
  • Ejemplo: jlocke.

User.windows_sid

  • Propósito: Almacena el identificador de seguridad (SID) de Microsoft Windows asociado con un usuario.
  • Codificación: Es una cadena.
  • Ejemplo: S-1-5-21-1180649209-123456789-3582944384-1064

Población de metadatos de vulnerabilidad

Vulnerability.about

  • Propósito: Si la vulnerabilidad se trata de un sustantivo específico (por ejemplo, ejecutable), agrégalo aquí.
  • Codificación: Sustantivo. Consulta Población de metadatos de sustantivos
  • Ejemplo: ejecutable.

Vulnerability.cvss_base_score

  • Objetivo: Puntuación base para el Sistema Común de Puntuación de Vulnerabilidades (CVSS).
  • Codificación: Es de punto flotante.
  • Rango: de 0.0 a 10.0
  • Ejemplo: 8.5

Vulnerability.cvss_vector

  • Propósito: Vector de las propiedades CVSS de la vulnerabilidad. Una puntuación del CVSS se compone de las siguientes métricas:

    • Vector de ataque (AV)
    • Complejidad de acceso (AC)
    • Autenticación (Au)
    • Impacto en la confidencialidad (C)
    • Impacto de integridad (I)
    • Impacto en la disponibilidad (A)

    Para obtener más información, consulta https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator.

  • Codificación: Es una cadena.

  • Ejemplo: AV:L/AC:H/Au:N/C:N/I:P/A:C

Vulnerability.cvss_version

  • Propósito: Versión de CVSS para el vector o la puntuación de vulnerabilidad.
  • Codificación: Es una cadena.
  • Ejemplo: 3.1

Vulnerability.description

  • Propósito: Descripción de la vulnerabilidad.
  • Codificación: Es una cadena.

Vulnerability.first_found

  • Propósito: Los productos que mantienen un historial de análisis de vulnerabilidades deben propagar first_found con el momento en que se detectó la vulnerabilidad de este recurso por primera vez.
  • Codificación: Es una cadena.

Vulnerability.last_found

  • Propósito: Los productos que mantienen un historial de análisis de vulnerabilidades deben propagar last_found con la hora en la que se detectó la vulnerabilidad de este recurso más recientemente.
  • Codificación: Es una cadena.

Vulnerability.name

  • Propósito: Nombre de la vulnerabilidad.
  • Codificación: Es una cadena.
  • Ejemplo: Se detectó una versión del SO no compatible.

Vulnerability.scan_end_time

  • Propósito: Si se descubrió la vulnerabilidad durante un análisis de recursos, propaga este campo con la hora en que finalizó el análisis. Deja este campo vacío si la hora de finalización no está disponible o no es aplicable.
  • Codificación: Es una cadena.

Vulnerability.scan_start_time

  • Propósito: Si la vulnerabilidad se descubrió durante un análisis de recursos, propaga este campo con el momento en que comenzó el análisis. Deja este campo vacío si la hora de inicio no está disponible o no es aplicable.
  • Codificación: Es una cadena.

Vulnerability.severity

  • Propósito: Gravedad de la vulnerabilidad.
  • Codificación: Es el tipo enumerado.
  • Valores posibles:
    • UNKNOWN_SEVERITY
    • BAJO
    • MEDIO
    • ALTO

Vulnerability.severity_details

  • Propósito: Detalles de gravedad específicos del proveedor.
  • Codificación: Es una cadena.

Propagación de metadatos de alertas

idm.is_significant

  • Propósito: Especifica si se muestra la alerta en Enterprise Insights.
  • Codificación: Booleano

idm.is_alert

  • Propósito: Identifica si el evento es una alerta.
  • Codificación: Booleano

Campos obligatorios y opcionales según el tipo de evento

En esta sección, se describen los campos obligatorios frente a los opcionales que se deben propagar según el tipo de evento de UDM. Para obtener una descripción de estos campos, consulta la lista de campos del Modelo de datos unificado.

EMAIL_TRANSACTION

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal: Propaga con información sobre la máquina en la que se originó el mensaje de correo electrónico. Por ejemplo, la dirección IP del remitente.

Campos opcionales:

  • about: URL, IP, dominios y cualquier archivo adjunto incorporado en el cuerpo del correo electrónico.
  • securityResult.about: Las URLs, las IP y los archivos no válidos incorporados en el cuerpo del correo electrónico.
  • network.email: Es la información del remitente o el destinatario del correo electrónico.
  • principal: Si hay datos de la máquina cliente sobre quien envió el correo electrónico, propaga los detalles del servidor en la principal (por ejemplo, el proceso del cliente, los números de puerto, el nombre de usuario, etcétera).
  • target: Si hay datos del servidor de correo electrónico de destino, propaga los detalles del servidor en el destino (por ejemplo, la dirección IP).
  • intermediario: Si hay datos del servidor de correo electrónico o datos del proxy de correo electrónico, propaga los detalles del servidor en el intermediario.

Notas:

  • Nunca propagues principal.email ni target.email.
  • Solo propaga el campo de correo electrónico en security_result.about o network.email.
  • Por lo general, los resultados de seguridad de nivel superior tienen un sustantivo establecido (opcional para spam).

FILE_CREATION, FILE_DELETION, FILE_MODIFICATION, FILE_READ y FILE_OPEN

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • (Opcional) Propaga principal.process con la información sobre el proceso que accede al archivo.
  • target:
    • Si el archivo es remoto (por ejemplo, un recurso compartido SMB), el destino debe incluir al menos un identificador de máquina para la máquina de destino; de lo contrario, todos los identificadores de máquina deben quedar en blanco.
    • Propaga target.file con información sobre el archivo.

Opcional:

  • security_result: Describe la actividad maliciosa que se detectó.
  • principal.user: Propaga si la información del usuario está disponible sobre el proceso.

FILE_COPY

Campos obligatorios:

  • metadata: Incluye los campos obligatorios como se describe.
  • principal:
    • Al menos un identificador de máquina.
    • (Opcional) Propaga principal.process con información sobre el proceso en el que se realiza la operación de copia del archivo.
  • src:
    • Propaga src.file con información sobre el archivo de origen.
    • Si el archivo es remoto (por ejemplo, uso compartido SMB), src debe incluir al menos un identificador de máquina para la máquina de origen que almacena el archivo de origen.
  • target:
    • Propaga target.file con información sobre el archivo de destino.
    • Si el archivo es remoto (por ejemplo, un recurso compartido SMB), el campo target debe incluir al menos un identificador de máquina para la máquina de destino que contiene el archivo de destino.

Campos opcionales:

  • security_result: Describe la actividad maliciosa que se detectó.
  • principal.user: Propaga si la información del usuario está disponible sobre el proceso.

MUTEX_CREATION

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • Propaga principal.process con información sobre el proceso de creación de la exclusión mutua.
  • target:
    • Propaga target.resource.
    • Propaga target.resource.type con MUTEX.
    • Propaga target.resource.name con el nombre de la exclusión mutua creada.

Opcional:

  • security_result: Describe la actividad maliciosa que se detectó.
  • principal.user: Propaga si la información del usuario está disponible sobre el proceso.
Ejemplo de UDM para MUTEX_CREATION

En el siguiente ejemplo, se muestra cómo se formatearía un evento de tipo MUTEX_CREATION para el UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: MUTEX_CREATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "test.altostrat.com"
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}
target {
  resource {
    type: "MUTEX"
    name: "test-mutex"
  }
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Detalles del dispositivo y el proceso.
  • target: Información sobre la exclusión mutua.

NETWORK_CONNECTION

Campos obligatorios:

  • metadata: event_timestamp
  • principal: Incluye detalles sobre la máquina que inició la conexión de red (por ejemplo, la fuente).
  • target: Incluye detalles sobre la máquina de destino si es diferente de la máquina principal.
  • network: Captura detalles sobre la conexión de red (puertos, protocolo, etcétera).

Campos opcionales:

  • principal.process y target.process: incluyen la información del proceso asociada con la principal y el destino de la conexión de red (si están disponibles).
  • principal.user y target.user: Incluye la información del usuario asociada con la principal y el destino de la conexión de red (si está disponible).

NETWORK_HTTP

El tipo de evento NETWORK_HTTP representa una conexión de red HTTP de una principal a un servidor web de destino.

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal: Representa al cliente que inicia la solicitud web. Incluye al menos un identificador de máquina (por ejemplo, nombre de host, IP, MAC o identificador de activo propio) o un identificador de usuario (por ejemplo, nombre de usuario). Si se describe una conexión de red específica y hay un número de puerto de cliente disponible, solo se debe especificar una dirección IP junto con el número de puerto asociado con esa conexión de red (aunque se pueden proporcionar otros identificadores de máquina para describir mejor el dispositivo participante). Si no hay puertos de origen disponibles, se pueden especificar todas las direcciones IP y MAC, identificadores de elementos y valores de nombre de host que describan el dispositivo principal.
  • target: Representa el servidor web y, además, incluye información del dispositivo y, opcionalmente, un número de puerto. Si hay un número de puerto de destino disponible, especifica solo una dirección IP además del número de puerto asociado con esa conexión de red (aunque se pueden proporcionar muchos otros identificadores de máquina para el destino). Para target.url, propague con la URL a la que se accedió.
  • network y network.http: Incluye detalles sobre la conexión de red HTTP. Debes propagar los siguientes campos:
    • network.ip_protocol
    • network.application_protocol
    • network.http.method

Campos opcionales:

  • about: Representa otras entidades encontradas en la transacción HTTP (por ejemplo, un archivo subido o descargado).
  • intermediario: Representa un servidor proxy (si es diferente de la principal o de destino).
  • metadata: Propaga los otros campos de metadatos.
  • network: Propaga los demás campos de red.
  • network.email: Si la conexión de red HTTP se originó de una URL que apareció en un mensaje de correo electrónico, propaga network.email con los detalles.
  • observador: Representa un detector pasivo (si está presente).
  • security_result: Agrega uno o más elementos al campo security_result para representar la actividad maliciosa detectada.
Ejemplo de UDM para NETWORK_HTTP

En el siguiente ejemplo, se muestra cómo se convertiría un evento de antivirus de Sophos de tipo NETWORK_HTTP al formato de UDM de Chronicle.

El siguiente es el evento antivirus original de Sophos:

date=2013-08-07 time=13:27:41 timezone="GMT" device_name="CC500ia" device_id= C070123456-ABCDE log_id=030906208001 log_type="Anti-Virus" log_component="HTTP" log_subtype="Virus" status="" priority=Critical fw_rule_id=0 user_name="john.smith" iap=7 av_policy_name="" virus="TR/ElderadoB.A.78" url="altostrat.fr/img/logo.gif" domainname="altostrat.fr" src_ip=10.10.2.10 src_port=60671 src_country_code= dst_ip=203.0.113.31 dst_port=80 dst_country_code=FRA

A continuación, se muestra cómo dar formato a la misma información en Proto3 con la sintaxis de Chronicle UM:

metadata {
  event_timestamp: "2013-08-07T13:27:41+00:00"
  event_type: NETWORK_HTTP
  product_name: "Sophos Antivirus"
  product_log_id: "030906208001"
}

principal {
  hostname: "CC500ia"
  asset_id: "Sophos.AV:C070123456-ABCDE"
  ip: "10.10.2.10"
  port: 60671
  user {  userid: "john.smith" }
}

target {
  hostname: "altostrat.fr"
  ip: "203.0.113.31"
  port: 80
  url: "altostrat.fr/img/logo.gif"
}

network {
  ip_protocol: TCP
 }

security_result {
  about {
    url: "altostrat.fr/img/logo.gif"
    category: SOFTWARE_MALICIOUS
    category_details: "Virus"
    threat_name: "TR/ElderadoB.A.78"
    severity: HIGH                   # Chronicle-normalized severity
    severity_details: "Critical"    # Vendor-specific severity string
  }
}

additional { "dst_country_code" : "FRA", "iap" : "7" "fw_rule_id" : "0" }

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Dispositivo de seguridad que detectó el evento.
  • target: Dispositivo que recibió el software malicioso.
  • red: Información de la red sobre el host malicioso.
  • security_result: Detalles de seguridad sobre el software malicioso.
  • adicional: Información del proveedor que actualmente se encuentra fuera del alcance del UDM.

PROCESS_INJECTION, PROCESS_LAUNCH, PROCESS_OPEN, PROCESS_TERMINATION y PROCESS_UNCATEGORIZED

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • Para los eventos de inserción y finalización de procesos, si están disponibles, principal.process debe incluir información sobre el proceso que inicia la acción (por ejemplo, para un evento de inicio de un proceso, principal.process debe incluir detalles sobre el proceso superior, si está disponible).
  • target:
    • target.process: incluye información sobre el proceso que se inserta, se abre, se inicia o se finaliza.
    • Si el proceso de destino es remoto, el destino debe incluir al menos un identificador de máquina para la máquina de destino (por ejemplo, una dirección IP, MAC, nombre de host o identificador de elementos de terceros).

Campos opcionales:

  • security_result: Describe la actividad maliciosa que se detectó.
  • principal.user y target.user: Propaga el proceso de inicio (principal) y el proceso de destino si la información del usuario está disponible.
Ejemplo de UDM para PROCESS_LAUNCH

En el siguiente ejemplo, se muestra cómo dar formato a un evento PROCESS_LAUNCH con la sintaxis de UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: PROCESS_LAUNCH
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "altostrat.com"
}
target {
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Detalles del dispositivo.
  • target: Detalles del proceso.

PROCESS_MODULE_LOAD

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • principal.process: Procesa la carga del módulo.
  • target:
    • target.process: Incluye información sobre el proceso.
    • target.process.file: Es el módulo cargado (por ejemplo, la DLL o el objeto compartido).

Campos opcionales:

  • security_result: Describe la actividad maliciosa que se detectó.
  • principal.user: Propaga si la información del usuario está disponible sobre el proceso.
Ejemplo de UDM para PROCESS_MODULE_LOAD

En el siguiente ejemplo, se muestra cómo dar formato a un evento PROCESS_MODULE_LOAD con la sintaxis de UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: PROCESS_MODULE_LOAD
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "example.com"
  process {
    pid: "0x123"
  }
}
target {
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Detalles sobre el dispositivo y el proceso de carga del módulo.
  • target: Detalles del proceso y el módulo.

PROCESS_PRIVILEGE_ESCALATION

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • principal.process: Procesa la carga del módulo.
    • principal.user: Usuario que carga el módulo.

Campos opcionales:

  • security_result: Describe la actividad maliciosa que se detectó.
Ejemplo de UDM para PROCESS_PRIVILEGE_ESCALATION

En el siguiente ejemplo, se muestra cómo dar formato a un evento PROCESS_PRIVILEGE_ESCALATION con la sintaxis de UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: PROCESS_PRIVILEGE_ESCALATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "example.com"
  process {
    pid: "0x123"
  }
  user {
    userid: "test"
    windows_sid: "ABCDEFGH-123456789-1111111-1000"
  }
}
target {
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Detalles sobre el dispositivo, el usuario y el proceso de carga del módulo
  • target: Detalles del proceso y el módulo.

REGISTRY_CREATION, REGISTRY_MODIFICATION, REGISTRY_DELETION

Campos obligatorios:

  • metadata: Incluye los campos obligatorios.
  • principal:
    • Al menos un identificador de máquina.
    • Si un proceso en modo de usuario realiza la modificación del registro, principal.process debe incluir información sobre el proceso que modifica el registro.
    • Si un proceso de kernel realiza la modificación del registro, la principal no debe incluir información del proceso.
  • target:
    • target.registry: Si el registro de destino es remoto, el destino debe incluir al menos un identificador para la máquina de destino (por ejemplo, una dirección IP, un MAC, un nombre de host o un identificador de elementos de terceros).
    • target.registry.registry_key: Todos los eventos de registro deben incluir la clave de registro afectada.

Opcional:

  • security_result: Describe la actividad maliciosa que se detectó. Por ejemplo, una clave de registro incorrecta.
  • principal.user: Propaga si la información del usuario está disponible sobre el proceso.
Ejemplo de UDM para REGISTRY_MODIFICATION

En el siguiente ejemplo, se muestra cómo dar formato a un evento REGISTRY_MODIFICATION en Proto3 con la sintaxis de UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: REGISTRY_MODIFICATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "test-win"
  user {
    userid: "test"
    windows_sid: "ABCDEFGH-123456789-1111111-1000"
  }
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}
target {
  registry {
    registry_key: "\\REGISTRY\\USER\\TEST_USER\\Control Panel\\PowerCfg\\PowerPolicy"
    registry_value_name: "Description"
    registry_value_data: "For extending battery life."
  }
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Detalles del dispositivo, el usuario y el proceso.
  • target: Entrada de registro afectada por la modificación.

SCAN_FILE, SCAN_HOST, SCAN_PROCESS, SCAN_VULN_HOST, SCAN_VULN_NETWORK

Campos obligatorios:

  • extensions: Para SCAN_VULN_HOST y SCAN_VULN_NETWORK, define la vulnerabilidad con el campo extensions.vuln.
  • metadata: event_timestamp
  • observar: captura información sobre el escáner. Si el escáner es remoto, el campo del observador debe capturar los detalles de la máquina. Para un escáner local, déjalo vacío.
  • target: Captura información sobre la máquina que contiene el objeto que se analiza. Si se analiza un archivo, target.file debe capturar información sobre este. Si se analiza un proceso, target.process debe capturar información sobre este proceso.

Campos opcionales:

  • target: Los detalles del usuario sobre el objeto de destino (por ejemplo, el creador del archivo o el propietario del proceso) se deben capturar en target.user.
  • security_result: Describe la actividad maliciosa que se detectó.
Ejemplo de UDM para SCAN_HOST

En el siguiente ejemplo, se muestra cómo se formatearía un evento de tipo SCAN_HOST para el UDM de Chronicle:

metadata: {
  event_timestamp: {
    seconds: 1571386978
  }
  event_type: SCAN_HOST
  vendor_name: "vendor"
  product_name: "product"
  product_version: "1.0"
}
target: {
  hostname: "testHost"
  asset_id: "asset"
  ip: "192.168.200.200"
}
observer: {
  hostname: "testObserver"
  ip: "192.168.100.100"
}
security_result: {
  severity: LOW
  confidence: HIGH_CONFIDENCE
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • target: Dispositivo que recibió el software malicioso.
  • observador: dispositivo que observa e informa el evento en cuestión.
  • security_result: Detalles de seguridad sobre el software malicioso.

SCHEDULED_TASK_CREATION, SCHEDULED_TASK_DELETION, SCHEDULED_TASK_DISABLE, SCHEDULED_TASK_ENABLE, SCHEDULED_TASK_MODIFICATION, SCHEDULED_TASK_UNCATEGORIZED

Campos obligatorios:

  • principal: Para todos los eventos SCHEDULED_TASK, la principal debe incluir un identificador de máquina y un identificador de usuario.
  • target: El destino debe incluir un recurso válido y un tipo de recurso definido como "TASK".

Campos opcionales:

  • security_result: Describe la actividad maliciosa que se detectó.
Ejemplo de UDM para SCHEDULED_TASK_CREATION

En el siguiente ejemplo, se muestra cómo se puede formatear un evento de tipo SCHEDULED_TASK_CREATION para el UDM de Chronicle:

metadata: {
  event_timestamp: {
    seconds: 1577577998
  }
  event_type: SCHEDULED_TASK_CREATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal: {
  hostname: "fake-host.altostrat.com"
  user: {
    userid: "TestUser"
    windows_sid: "AB123CDE"
  }
  process {
    pid: "1234"
  }
}
target: {
  resource: {
    type: "TASK"
    name: "\\Adobe Acrobat Update Task"
  }
}
intermediary: {
  hostname: "fake-intermediary.altostrat.com"
}
security_result: {
  rule_name: "EventID: 6789"
  summary: "A scheduled task was created."
  severity: INFORMATIONAL
}

Como se muestra en este ejemplo, el evento se dividió en las siguientes categorías de UDM:

  • metadatos: Información de contexto sobre el evento.
  • principal: Dispositivo que programó la tarea sospechosa.
  • target: Software orientado por la tarea sospechosa.
  • Intermediario: Es el intermediario involucrado en la tarea sospechosa.
  • security_result: Detalles de seguridad sobre la tarea sospechosa.

SETTING_UNCATEGORIZED, SETTING_CREATION, SETTING_MODIFICATION, SETTING_DELETION

Campos obligatorios:

  • principal: Debe estar presente, no vacío y, además, incluir un identificador de máquina.
  • target: Debe estar presente, no debe estar vacío y, además, debe incluir un recurso con su tipo especificado como SETTING.
Ejemplo de UDM para el tipo de evento SETTING_MODIFICATION

En el siguiente ejemplo, se muestra cómo se formatearía un evento de tipo SETTING_MODIFICATION para la UDM de Chronicle:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: SETTING_MODIFICATION
  vendor_name: "Microsoft"
  product_name: "Wind