Compartir por


Esquemas del Modelo avanzado de información de seguridad (ASIM)

Un esquema del Modelo avanzado de información de seguridad (ASIM) es un conjunto de campos que representan una actividad. El uso de los campos de un esquema normalizado en una consulta garantiza que esta funcione con todos los orígenes normalizados.

Para entender cómo encajan los esquemas en la arquitectura de ASIM, consulte el diagrama de arquitectura de ASIM.

En las referencias de esquema se describen los campos que componen cada esquema. ASIM define actualmente los siguientes esquemas:

Schema Versión Estado
Evento de alerta 0,1 GA
Evento de auditoría 0.1.2 GA
Evento de autenticación 0.1.4 GA
Actividad de DNS 0.1.7 GA
Actividad de DHCP 0.1.1 GA
Actividad de archivo 0.2.2 GA
Sesión de red 0.2.7 GA
Evento de proceso 0.1.4 GA
Evento del Registro 0.1.3 GA
Administración de usuarios 0.1.2 GA
Sesión web 0.2.7 GA

Nomenclatura de campo

En el núcleo de cada esquema están sus nombres de campo. Los nombres de campo pertenecen a los siguientes grupos:

  • Campos comunes a todos los esquemas.
  • Campos específicos de un esquema.
  • Campos que representan entidades, como los usuarios, que participan en el esquema. Los campos que representan entidades son similares en todos los esquemas.

Cuando los orígenes tienen campos que no se presentan en el esquema documentado, se normalizan para mantener la coherencia. Si los campos adicionales representan una entidad, se normalizarán en función de las directrices de los campos de la entidad. De lo contrario, los esquemas tratan por todos los medios de mantener la coherencia en todos ellos.

Por ejemplo, aunque los registros de actividad de los servidores DNS no proporcionan información de usuario, los registros de actividad de DNS de un punto de conexión pueden incluir dicha información, que se puede normalizar según las directrices de la entidad del usuario.

Campos comunes

Algunos campos son comunes a todos los esquemas de ASIM. Cada esquema puede agregar directrices para usar algunos de los campos comunes en el contexto del esquema específico. Por ejemplo, los valores permitidos del campo EventType pueden variar según el esquema, al igual que el valor del campo EventSchemaVersion.

Clases de campo

Los campos pueden tener varias clases, que definen cuándo un analizador debe implementar los campos:

  • Los campos obligatorios deben aparecer en cada analizador. Si su origen no proporciona información para este valor, o no se pueden agregar los datos de otro modo, no admitirá la mayoría de los elementos de contenido que hacen referencia al esquema normalizado.
  • Los campos recomendados deben normalizarse si están disponibles. Sin embargo, es posible que no estén disponibles en todos los orígenes. Cualquier elemento de contenido que haga referencia a ese esquema normalizado debe tener en cuenta la disponibilidad.
  • Los campos opcionales , si están disponibles, se pueden normalizar o dejar en su forma original. Normalmente, un analizador mínimo no los normalizaría por motivos de rendimiento.
  • Los campos condicionales son obligatorios si el campo que siguen se rellena. Los campos condicionales se suelen usar para describir el valor en otro campo. Por ejemplo, el campo común DvcIdType describe el valor en el campo común DvcId y, por lo tanto, es obligatorio si se rellena este último.
  • Alias es un tipo especial de un campo condicional y es obligatorio si se rellena el campo con alias.

Entidades

Los eventos evolucionan en torno a entidades, como usuarios, hosts, procesos o archivos. Cada entidad puede requerir varios campos para su descripción. Por ejemplo, un host puede tener un nombre y una dirección IP.

Un único registro puede incluir varias entidades del mismo tipo, como un host de origen y uno de destino.

ASIM define cómo describir las entidades de forma coherente, y las entidades permiten ampliar los esquemas.

Por ejemplo, aunque el esquema de sesión de red no incluye información de proceso, algunos orígenes de eventos proporcionan información de este tipo que se puede agregar. Para obtener más información, consulte Entidades.

Para habilitar la funcionalidad de entidad, la representación de entidad tiene las siguientes directrices:

Directrices Descripción
Prefijos y alias Dado que un único evento suele incluir más de una entidad del mismo tipo, como hosts de origen y destino, se usan prefijos para identificar la entidad a la que está asociado un campo.

Para mantener la normalización, ASIM usa un pequeño conjunto de prefijos estándar, seleccionando los más adecuados para el rol específico de las entidades.

Si una sola entidad de un tipo es relevante para un evento, no es necesario usar un prefijo. Además, un conjunto de campos sin prefijo asigna un alias a la entidad más utilizada para cada tipo.
Identificadores y tipos Un esquema normalizado permite varios identificadores para cada entidad, que esperamos que coexistan en eventos. Si el evento de origen tiene otros identificadores de entidad que no se pueden asignar al esquema normalizado, manténgalos en el formato de origen o use el campo dinámico AdditionalFields.

Para mantener la información de tipo de los identificadores, almacene el tipo, si procede, en un campo con el mismo nombre y un sufijo de Type. Por ejemplo, UserIdType.
Atributos Las entidades suelen tener otros atributos que no sirven de identificador y también se pueden calificar con un descriptor. Por ejemplo, si el usuario de origen tiene información de dominio, el campo normalizado es SrcUserDomain.

Para obtener más información sobre los tipos de entidad específicos, consulte:

Alias

Los alias permiten varios nombres para un valor especificado. En algunos casos, los distintos usuarios esperan que un campo tenga nombres diferentes. Por ejemplo, en la terminología de DNS, puede esperar un campo denominado DnsQuery, mientras que, en términos más generales, contiene un nombre de dominio. El alias Domain ayuda al usuario al permitir el uso de ambos nombres.

Nota:

Los alias están diseñados para ayudar a un analista con consultas interactivas. Al utilizar consultas en contenido reutilizable, como detecciones personalizadas, reglas analíticas o cuadernos de trabajo, use el campo apodado en lugar del alias. El uso del campo con alias garantiza un mejor rendimiento, menos errores y una mejor legibilidad de las consultas.

En algunos casos, un alias puede tener el valor de uno de varios campos, en función de los valores disponibles en el evento. Por ejemplo, el alias Dvc , corresponde a los campos DvcFQDN, DvcId, DvcHostname, DvcIpAddr o Event Product. Cuando un alias puede tener varios valores, su tipo tiene que ser una cadena para dar cabida a todos los posibles valores de alias. En consecuencia, cuando asigne un valor a un alias de este tipo, asegúrese de convertir el tipo a cadena usando la función KQL tostring.

Las tablas normalizadas nativas no incluyen alias, ya que esto implicaría el almacenamiento de datos duplicados. En su lugar, los analizadores de código auxiliar agregan los alias. Para implementar alias en los analizadores de código auxiliar, cree una copia del valor original usando el operador extend.

Tipos lógicos

Cada campo de esquema tiene un tipo. El área de trabajo de Log Analytics tiene un conjunto limitado de tipos de datos. Por este motivo, Microsoft Sentinel usa un tipo lógico para muchos campos de esquema, que Log Analytics no aplica, pero que es necesario para la compatibilidad de esquemas. Los tipos de campo lógicos garantizan que los valores y los nombres de campo sean coherentes entre orígenes.

Tipo de datos Tipo físico Formato y valor
Boolean Bool Utilice el tipo de datosbool integrados en KQL en lugar de una representación numérica o de cadena de valores booleanos.
Enumerado String Lista de valores definidos explícitamente para el campo. En la definición de esquema se enumeran los valores aceptados.
Date/Time Dependiendo de la funcionalidad del método de ingesta, use cualquiera de las siguientes representaciones físicas en prioridad descendente:

- Tipo datetime integrado de Log Analytics
- Campo de entero que usa la representación numérica de datetime de Log Analytics
- Campo de cadena que usa la representación numérica de datetime de Log Analytics
- Campo de cadena que almacena un formato de fecha y hora de Log Analytics admitido.
La representación de fecha y hora de Log Analytics es similar, pero diferente de la representación de hora de Unix. Para obtener más información, consulte las directrices de conversión.

Nota: Cuando sea aplicable, la hora debe ajustarse a la zona horaria.
MAC address (Dirección MAC) String Notación hexadecimal con dos puntos.
Dirección IP String Los esquemas de Microsoft Sentinel no tienen direcciones IPv4 e IPv6 independientes. Cualquier campo de dirección IP puede incluir una dirección IPv4 o IPv6, del siguiente modo:

- IPv4 en notación de punto decimal.
- IPv6 en notación de ocho hextetos, que permite el formato corto.

Por ejemplo:
- IPv4: 192.168.10.10
- IPv6: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
- Formato corto de IPv6: 1080::8:800:200C:417A
FQDN String Nombre de dominio completo que usa una notación de puntos, por ejemplo, learn.microsoft.com. Para obtener más información, consulte Entidad de dispositivo.
Nombre de host String Un nombre de host, que no es un FQDN, incluye hasta 63 caracteres, incluidas letras, números y guiones. Para obtener más información, consulte Entidad de dispositivo.
Domain String la parte de dominio de un FQDN, sin incluir el nombre de host, por ejemplo, learn.microsoft.com. Para obtener más información, consulte Entidad de dispositivo.
DomainType Enumerated Tipo de dominio almacenado en los campos de dominio y FQDN. Para obtener una lista de valores y más información, consulte La entidad de dispositivo.
DvcIdType Enumerated Tipo del identificador de dispositivo almacenado en los campos DvcId. Para obtener una lista de valores permitidos e información adicional, consulte DvcIdType.
DeviceType Enumerated Tipo del dispositivo almacenado en los campos DeviceType. Los valores posibles son:
- Computer
- Mobile Device
- IOT Device
- Other. Para obtener más información, consulte Entidad de dispositivo.
Nombre de usuario String Nombre de usuario válido en uno de los tipos admitidos. Para obtener más información, consulte Entidad de usuario.
UsernameType Enumerated Tipo de nombre de usuario almacenado en los campos de nombre de usuario. Para obtener más información y una lista de los valores admitidos, consulte La entidad de usuario.
UserIdType Enumerated Tipo de identificador almacenado en los campos de identificador de usuario.

Los valores admitidos son SID, UIS, AADID, OktaId, AWSId y PUID. Para obtener más información, consulte Entidad de usuario.
UserType Enumerated El tipo de usuario. Para obtener más información y una lista de los valores permitidos, consulte La entidad de usuario.
AppType Enumerated Tipo de una aplicación. Para obtener una lista de los valores admitidos, consulte La entidad de aplicación.
País String Cadena que usa ISO 3166-1 de acuerdo con la siguiente prioridad:

- Códigos alfa 2, como US para Estados Unidos.
- Códigos alfa 3, como USA para Estados Unidos.
- Nombre corto.

La lista de códigos se puede encontrar en el sitio web de la Organización Internacional de Normalización (ISO).
Región String Nombre de subdivisión de país o región, utilizando ISO 3166-2.

La lista de códigos se puede encontrar en el sitio web de la Organización Internacional de Normalización (ISO).
Ciudad String
Longitud Double Representación de coordenadas ISO 6709 (decimal con signo).
Latitud Double Representación de coordenadas ISO 6709 (decimal con signo).
MD5 String Caracteres hexadecimales de 32.
SHA1 String Caracteres hexadecimales de 40.
SHA256 String Caracteres hexadecimales de 64.
SHA512 String Caracteres hexadecimales de 128.
ConfidenceLevel Integer Nivel de confianza normalizado hasta el intervalo de 0 a 100.
RiskLevel Integer Nivel de riesgo normalizado hasta el intervalo de 0 a 100.
SchemaVersion String Una versión de esquema de ASIM con el formato <major>.<minor>.<sub-minor>
DnsQueryClassName String El nombre de clase DNS.
Nombre de usuario String Un nombre de usuario simple o calificado por dominio

Asignación de entidades de ejemplo

En esta sección se usa el evento 4624 de Windows como ejemplo para describir cómo se normalizan los datos de eventos para Microsoft Sentinel.

Este evento tiene las siguientes entidades:

Terminología de Microsoft Prefijo de campo de evento original Prefijo de campo de ASIM Descripción
Subject Subject Actor Usuario que ha notificado información sobre un inicio de sesión correcto.
Nuevo inicio de sesión Target TargetUser Usuario para el que se realizó el inicio de sesión.
Proceso - ActingProcess Proceso que intentó el inicio de sesión.
Información de red - Src Máquina desde la que se realizó un intento de inicio de sesión.

En función de estas entidades, el evento 4624 de Windows se normaliza como se muestra a continuación (algunos campos son opcionales):

Campo normalizado Campo original Valor en el ejemplo Notas
ActorUserId SubjectUserSid S-1-5-18
ActorUserIdType - SID
ActorUserName SubjectDomainName\ SubjectUserName WORKGROUP\WIN-GG82ULGC9GO$ Creado concatenando los dos campos
ActorUserNameType - Windows
ActorSessionId SubjectLogonId 0x3e7
TargetUserId TargetUserSid S-1-5-21-1377283216-344919071-3415362939-500
UserId TargetUserSid Alias
TargetUserIdType - SID
TargetUserName TargetDomainName\ TargetUserName Administrator\WIN-GG82ULGC9GO$ Creado concatenando los dos campos
Nombre de usuario TargetDomainName\ TargetUserName Alias
TargetUserNameType - Windows
TargetSessionId TargetLogonId 0x8dcdc
ActingProcessName ProcessName C:\Windows\System32\svchost.exe
ActingProcessId ProcessId 0x44c
SrcHostname WorkstationName Windows
SrcIpAddr IpAddress 127.0.0.1
SrcPortNumber IpPort 0
TargetHostname Computer WIN-GG82ULGC9GO
Nombre de host Computer Alias

Pasos siguientes

En este artículo se proporciona información general sobre la normalización en Microsoft Sentinel y ASIM.

Para más información, consulte: