Compartir vía


Solución Microsoft Sentinel para aplicaciones de SAP: referencia de funciones

En este artículo se describe una selección de funciones que están disponibles en el área de trabajo después de instalar una solución de Microsoft Sentinel para aplicaciones SAP. Para más funciones, vaya a Microsoft Sentinel y cargue el código de función.

Busque funciones como se indica a continuación:

  • En Azure Portal, en la página Registros generales>, en la pestaña Funciones y en funciones del área de trabajo.
  • En el portal de Defender, en la página Búsqueda avanzada de investigación y respuesta>, en la pestaña Funciones y se muestra en Funciones del área de trabajo de Sentinel.

El contenido de este artículo está pensado para los equipos de seguridad .

Uso de funciones en las consultas en lugar de registros o tablas subyacentes

Se recomienda encarecidamente usar las funciones enumeradas en este artículo como temas de su análisis siempre que sea posible, en lugar de los registros o tablas subyacentes.

Estas funciones están diseñadas para servir como interfaz de usuario principal para los datos. Conforman la base de todas las reglas y libros de análisis integrados disponibles de forma integrada. El uso de funciones permite realizar cambios en la infraestructura de datos debajo de las funciones, sin interrumpir el contenido creado por el usuario.

SAPUsersAssignments

La función SAPUsersAssignments recopila datos de varios orígenes de datos de SAP y crea una vista centrada en el usuario de los perfiles, incluidos los roles y datos maestros del usuario actual asignados en este momento.

Esta función resume las asignaciones del usuario a roles y perfiles y devuelve los datos siguientes:

Campo Descripción Origen de datos/Observaciones
Usuario Identificador de usuario de SAP Solo SAP
Correo electrónico Dirección SMTP USR21 (SMTP_ADDR)
UserType Tipo de usuario USR02 (USTYP)
Zona horaria Zona horaria USR02 (TZONE)
LockedStatus Estado de bloqueo USR02 (UFLAG)
LastSeenDate Fecha de la última visualización USR02 (TRDAT)
LastSeenTime Hora de la última visualización USR02 (LTIME)
UserGroupAuth Grupo de usuarios en el mantenimiento maestro del usuario USR02 (CLASS)
Profiles Conjunto de perfiles (tamaño máximo predeterminado del conjunto = 50) ["Profile 1", "Profile 2",...,"profile 50"]
DirectRoles Conjunto de roles asignados directamente (tamaño máximo predeterminado del conjunto = 50) ["Role 1", "Role 2",...,"”"Role 50"]
ChildRoles Conjunto de roles asignados indirectamente (tamaño máximo predeterminado del conjunto = 50) ["Role 1", "Role 2",...,"”"Role 50"]
Remoto Id. de cliente
SystemID Identificador del sistema Tal y como se define en el conector

SAPUsersGetPrivileged

La función SAPUsersGetPrivileged devuelve una lista de usuarios con privilegios por identificador de sistema y cliente.

Los usuarios se consideran con privilegios cuando coinciden con cualquiera de las descripciones siguientes:

  • Se muestran en la lista de reproducción SAP - Usuarios con privilegios
  • Se asignan a un perfil que aparece en la lista de reproducción de perfiles confidenciales de SAP
  • Se agregan a un rol que se muestra en la lista de reproducción de roles confidenciales de SAP

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
TimeAgo Opcionales Siete días Determina que la función busca datos maestros de usuario desde el momento definido por el TimeAgo valor hasta la hora definida por el now() valor.

La función SAPUsersGetPrivileged devuelve los datos siguientes:

Campo Descripción
Usuario Identificador de usuario de SAP
Remoto Id. de cliente
SystemID Identificador del sistema

SAPUsersAuthorizations

La función SAPUsersAuthorizations reúne datos de varias tablas para generar una vista centrada en el usuario de los roles y autorizaciones asignados actualmente. Solo se devuelven los usuarios con asignaciones activas de autorizaciones y roles.

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
TimeAgo Opcionales Siete días Determina que la función busca datos maestros de usuario desde el momento definido por el TimeAgo valor hasta la hora definida por el now() valor.

La función SAPUsersAuthorizations devuelve los datos siguientes:

Campo Descripción Notas
Usuario Identificador de usuario de SAP
Roles Conjunto de roles (tamaño máximo predeterminado del conjunto = 50) ["Role 1", "Role 2",...,"Role 50"]
AuthorizationsDetails Conjunto de autorizaciones (tamaño máximo predeterminado del conjunto = 100) {{AuthorizationsDetails1},
{AuthorizationsDetails2},
...,
{AuthorizationsDetails100}}
Remoto Id. de cliente
SystemID Identificador del sistema

SAPConnectorHealth

La función SAPConnectorHealth refleja el estado de la conectividad del agente y del sistema SAP subyacente. Según el registro de latidos SAP_HeartBeat_CL y otros indicadores de estado, devuelve los datos siguientes:

Campo Descripción
Agente Identificador de agente en la configuración del agente (generado automáticamente)
SystemID Identificador del sistema SAP
Estado Estado de conectividad general
Detalles Detalles acerca de la conectividad
ExtendedDetails Detalles ampliados de conectividad
LastSeen Marca de tiempo de la actividad más reciente
StatusCode Código que refleja el estado del sistema

SAPConnectorOverview

La función SAPConnectorOverview muestra los recuentos de filas de cada tabla de SAP por identificador de sistema. Devuelve una lista de registros de datos por identificador del sistema y su hora de generación.

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
TimeAgo Opcionales Siete días Determina que la función busca datos maestros de usuario desde el momento definido por el TimeAgo valor hasta la hora definida por el now() valor.

La función SAPConnectorOverview devuelve los datos siguientes:

Campo Descripción
TimeGenerated Valor de fecha y hora de la marca de tiempo de la generación del registro
SystemID_s Cadena que representa el identificador del sistema SAP

Use la siguiente consulta de Kusto para realizar un análisis de tendencias diario:

SAPConnectorOverview(7d)
| summarize count() by bin(TimeGenerated, 1d), SystemID_s

SAPUsersEmail

La función SAPUsersEmail permite una búsqueda orientada al rendimiento de una dirección de correo electrónico de un usuario de SAP por sistema SAP y cliente, que normalmente se usa para asociarla a una cuenta de Active Directory.

La función SAPUsersEmail usa datos extraídos de tablas de SAP USR21 (asignación de claves de nombre de usuario/dirección) y ADR6 (direcciones de correo electrónico) para buscar una dirección de correo electrónico. En caso de que no se encuentre ninguna dirección de correo electrónico, se devuelve el identificador de usuario en su lugar.

Este comportamiento garantiza que las cuentas de servicio de SAP, como DDIC, que a menudo no están asociadas a direcciones de correo electrónico, se registran como cuentas pseudoAD. Esto también abre algunas características de UEBA, ayudando en la investigación de incidentes y actividades de búsqueda.

La función SAPUsersEmail devuelve los datos siguientes:

Campo Descripción
ClientID Identificador de cliente de SAP
SystemID El id. del sistema SAP
Usuario Identificador de usuario de SAP
Correo electrónico Dirección de correo electrónico del usuario de SAP

SAPSystems

La función SAPSystems se usa para presentar de forma centralizada la configuración por sistema realizada mediante la lista de seguimiento de SAP - Systems .

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
SelectedSystems Opcionales All Systems Se usa para filtrar sistemas SAP específicos
SelectedSystemRoles Opcionales All System Roles Determina los roles de los sistemas SAP que se van a examinar, tal como se define en la lista de seguimiento de SAP - Systems .

La función SAPSystems devuelve los datos siguientes:

Campo Descripción Origen de datos/Observaciones
SearchKey Clave de búsqueda Campo indexado para el identificador del sistema SAP
SystemRole Rol del sistema SAP Producción, UAT
SystemUsage El uso principal del sistema SAP ERP, CRM
SystemID El id. del sistema SAP

SAPAuditLogConfiguration

La función SAPAuditLogConfiguration devuelve la configuración local de las alertas del registro de auditoría de SAP al área de trabajo de Log Analytics habilitada para Microsoft Sentinel. Esta configuración se usa para las alertas relacionadas con el registro de auditoría de SAP.

La función SAPAuditLogConfiguration combina los datos de la configuración del Monitor de registro de auditoría dinámica de SAP y las listas de seguimiento de SAP - Systems para proporcionar una configuración por sistema en un esfuerzo por rol por sistema.

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
SelectedSystems Opcionales All Systems Se usa para filtrar sistemas SAP específicos en la búsqueda.
SelectedSystemRoles Opcionales All System Roles Determina los roles de los sistemas SAP que se van a examinar (como se define en la lista de seguimiento de SAP - Systems ).
SelectedSeverities Opcionales [High, Medium] Se usa para determinar los eventos que se van a examinar en términos de gravedad. Las gravedades por identificador de mensaje de registro de auditoría de SAP y el rol del sistema se definen en la lista de seguimiento de SAP_Dynamic_Audit_Log_Monitor_Configuration .
SelectedRuleTypes Opcionales All RuleTypes Determina qué eventos son relevantes para detectar las anomalías. Los tipos de regla por identificador de mensaje de registro de auditoría de SAP y el rol del sistema se definen en la lista de seguimiento de SAP_Dynamic_Audit_Log_Monitor_Configuration .

La función SAPAuditLogConfiguration devuelve los datos siguientes:

Campo Descripción Origen de datos/Observaciones
nombreDeCategoría Categoría de eventos dado por SAP Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
DestinationEmail Dirección de correo electrónico del equipo asignado Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
DetailedDescription Texto con formato markdown que se mostrará en las alertas Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
MessageID Id. del mensaje de registro de auditoría de SAP Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
MessageText Un texto de mensaje de ejemplo Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
RolesTagsToExclude una etiqueta de texto libre, perfil o rol de ABAP Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
RuleType Anomalía o determinista Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
Tácticas La táctica DE MITRE ATTA&CK Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
TeamsChannelID Canal de Teams Lista de seguimiento de configuración del Monitor de registro de auditoría dinámica de SAP
SystemID El id. del sistema SAP SAP : lista de seguimiento de sistemas
SystemRole El rol del sistema SAP SAP : lista de seguimiento de sistemas
SystemUsage El uso principal del sistema SAP SAP : lista de seguimiento de sistemas
IsProd Marca del sistema de producción SAP : lista de seguimiento de sistemas
severity La gravedad derivada Gravedad por uso del sistema
Umbral El umbral derivado Recuento de eventos por uso del sistema
BagOfDetails Bolsa de detalles Un diccionario que detalla la definición de eventos

Para más información, consulte Listas de seguimiento disponibles.

SAPAuditLogAnomalies

La función SAPAuditLogAnomalies usa las funcionalidades de aprendizaje automático integradas de la base de datos kusto de Microsoft Sentinel para ayudar a detectar eventos anómalos observados en el registro de auditoría de SAP.

La función SAPAuditLogAnomalies se desarrolló para la regla de análisis de alertas del Monitor de registros de auditoría basado en SAP ( experimental). Aunque su diseño original es alertar sobre anomalías recientes, también puede ayudar a resaltar las anomalías históricas. Para obtener más información, consulte Usos de ejemplo.

La función SAPAuditLogAnomalies aprende el segmento del historial definido por los distintos parámetros de entrada, en los siguientes niveles:

  • Usuario
  • Atributos de red
  • Sistema
  • Estacionalidad
  • Niveles de actividad

A continuación, la función SAPAuditLogAnomalies juzga los eventos que se producen en el último DetectingTime intervalo de tiempo según lo aprendido, aplicando umbrales y otros criterios de exclusión configurables obtenidos de la lista de seguimiento de configuración del registro de auditoría de SAP.

Una vez que se considera anómala una ventana deslizante de la actividad del usuario, una segunda consulta devuelve toda la actividad del usuario como evidencia que respalda la decisión.

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
LearningTime Opcionales 14 días Determina el intervalo de tiempo usado para el aprendizaje del modelo.
DetectingTime Opcionales Una hora Determina el intervalo de tiempo que se va a examinar para detectar anomalías. Al llamar a esta función con DetectingTime = 0h se resaltan las anomalías en todo LearningTime el intervalo de tiempo.
SelectedSystems Opcionales All Systems Se usa para filtrar sistemas SAP específicos en la búsqueda.
SelectedSystemRoles Opcionales All System Roles Determina los roles de los sistemas SAP que se van a examinar, tal como se define en la lista de seguimiento de SAP - Systems .
SelectedSeverities Opcionales [High, Medium] Se usa para determinar los eventos que se van a examinar en términos de gravedad. Las gravedades por identificador de mensaje de registro de auditoría de SAP y el rol del sistema se definen en la lista de seguimiento de SAP_Dynamic_Audit_Log_Monitor_Configuration .
SelectedPrefixMask Opcionales 24 Se usa para determinar el nivel de máscara de subred que se usa para aprender y detectar.
SelectedRuleTypes Opcionales AnomaliesOnly Determina en qué eventos son relevantes para detectar las anomalías. Los tipos de regla por identificador de mensaje de registro de auditoría de SAP y el rol del sistema se definen en la lista de seguimiento de SAP_Dynamic_Audit_Log_Monitor_Configuration .

La función SAPAuditLogAnomalies devuelve los datos siguientes:

Campo Descripción
Varios campos de SAPAuditLog Campos clave del registro de auditoría de SAP
Varios campos de SAPAuditLogConfiguration Campos clave de la configuración del registro de auditoría de Microsoft Sentinel para SAP
DiscoveredOn Hora redondeada en la que se observó la anomalía
EventCount Número de eventos contados por fila devueltos
AnomalCount Número de eventos observados en la ventana deslizante pertinente
MinTime Hora del primer evento observado
MaxTime Hora del último evento observado
Puntuación las puntuaciones de anomalías generadas por el modelo de anomalías

Recomendaciones:

Al igual que con cualquier solución de aprendizaje automático, la función SAPAuditLogAnomalies funciona mejor con el tiempo y se puede ajustar según sea necesario a medida que pase el tiempo.

Se recomienda restringir el tamaño de la base de datos aprendida a menos de 100 millones de registros mediante los muchos parámetros de entrada disponibles.

Entre los usos de ejemplo se incluyen:

  • Para buscar anomalías en los eventos de gravedad alta que se produjeron en la última hora en los sistemas de producción para los tipos de eventos marcados como AnomalíasOnly en la lista de reproducción de SAP_Dynamic_Audit_Log_Monitor_Configuration , ejecute:

    SAPAuditLogAnomalies(LearningTime = 14d, DetectingTime=1h, SelectedSystemRoles= dynamic(["Production"]), 
    SelectedSeverities= dynamic(["High"]), SelectedRuleTypes= dynamic(["AnomaliesOnly"]))
    
  • Para buscar todas las anomalías en los últimos 14 días en el sistema BIP , ejecute:

    SAPAuditLogAnomalies(LearningTime = 14d, DetectingTime=0h, SelectedSystems= dynamic(["BIP"]))
    

Para obtener más información, consulte Reglas de análisis de SAP integradas para supervisar el registro de auditoría de SAP y la detección de anomalías en el registro de auditoría de SAP mediante la solución Microsoft Sentinel para SAP (blog).

SAPAuditLogConfigRecommend

SAPAuditLogConfigRecommend es una función auxiliar diseñada para ofrecer recomendaciones para la configuración de la regla de análisis SAP: alertas dinámicas del monitor de registro de auditoría basadas en anomalías (versión preliminar).

Para más información, consulte Supervisión del registro de auditoría de SAP.

SAPUsersGetVIP

La solución microsoft Sentinel para aplicaciones sap usa un concepto de etiquetado de usuarios central y exclusiones explícitas, diseñadas para ayudarle a reducir los falsos positivos con un esfuerzo mínimo.

Use la función SAPUsersGetVIP para excluir a los usuarios de desencadenar alertas especificando roles de usuario de SAP, funciones de usuario de SAP o etiquetas que representan a esos usuarios. Para obtener más información, consulte Control de falsos positivos en Microsoft Sentinel.

Las etiquetas especificadas como entrada para la función SAPUsersGetVIP excluyen a todos los usuarios con una etiqueta enumerada en la lista de reproducción de SAP_User_Config . La misma funcionalidad se amplía para trabajar con caracteres comodín, lo que permite asignar una sola etiqueta a un grupo de usuarios con la misma sintaxis de nomenclatura.

  1. Etiquete a los usuarios de la lista de seguimiento de SAP_User_Config de la siguiente manera:

    • Agregue varias etiquetas a cada usuario de la lista de seguimiento de SAP_User_Config , según sea necesario para cubrir varios escenarios. Cada regla de alerta tiene sus propias etiquetas pertinentes, si las hay, y puede agregar etiquetas personalizadas según sea necesario.

    • Use un asterisco (*) como carácter comodín para incluir usuarios con una plantilla de sintaxis de nomenclatura específica.

  2. Agregue la función SAPUsersGetVIP en las reglas de análisis para solicitar las listas de usuarios que ha definido para excluirse de las alertas. En la llamada de función, agregue una matriz con las etiquetas, los roles de SAP y los perfiles de SAP que desea excluir.

Por ejemplo, use la siguiente consulta KQL en la regla de análisis para excluir a los usuarios configurados con la etiqueta RunObsoleteProgOK en la lista de reproducción de SAP_User_Config, o cualquier usuario con el rol de SAP_BASIS_ADMIN_ROLE de ejemplo o el perfil de SAP_ADMIN_PROFILE de ejemplo.

Al copiar esta llamada de función de ejemplo, reemplace SAP_BASIS_ADMIN_ROLE rol y SAP_ADMIN_PROFILE perfil por sus propios roles o perfiles de SAP según sea necesario.

Por ejemplo:

// Execution of Obsolete/Insecure Program
let ObsoletePrograms = _GetWatchlist("SAP - Obsolete Programs");
// here you can exclude system users which are OK to run obsolete/ sensitive programs
// by adding those users in the SAP_User_Config watchlist with a tag of 'RunObsoleteProgOK'
// can also specify SAP roles or SAP profiles that group the users you would like to exclude
let excludeUsersTagsRolesProfiles= dynamic(["RunObsoleteProgOK","SAP_BASIS_ADMIN_ROLE", "SAP_ADMIN_PROFILE"]);
let excludedUsers= SAPUsersGetVIP(SearchForTags= excludeUsersTagsRolesProfiles)| summarize by User2Exclude=SAPUser;
// Query logic
SAPAuditLog
| where MessageID == 'AUW'
| where ABAPProgramName in (ObsoletePrograms) // The program is obsolete
| join kind=leftantisemi excludedUsers on $left.User == $right.User2Exclude

La función SAPUsersGetVIP se usa normalmente en alertas de Monitor de registro de auditoría anómalas y deterministas. Asocie una etiqueta con un identificador de mensaje de registro de auditoría de SAP o extienda la plantilla de regla a una regla personalizada que coincida con las necesidades de su organización.

Sugerencia

Se recomienda ponerse en contacto con el administrador del sistema SAP para comprender qué usuarios, roles y perfiles de SAP se van a incluir en la lista de seguimiento de SAP_User_Config .

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
SearchForTags Opcionales dynamic('All Tags') Cuando SearchForTags es igual a All Tags, se devuelven todos los usuarios junto con sus etiquetas.

De lo contrario, solo se devuelven los usuarios que tengan las etiquetas, los roles de SAP o los perfiles de SAP especificados en SearchForTags . TagsIntersect muestra las etiquetas que se encuentran y IntersectionSize contiene el número de etiquetas que se encuentran.
SpecialFocusTags Opcionales Do not return any in-focus users Devuelve todos los usuarios que contienen las etiquetas especificadas en SpecialFocusTagsy las marcan con specialFocusTagged = true.

La función SAPUsersGetVIP devuelve la siguiente salida:

Source Campo Descripción Notas
Lista de reproducción de SAP_User_Config SearchKey Clave de búsqueda
Lista de reproducción de SAP_User_Config SAPUser El usuario de SAP OSS, DDIC
Lista de reproducción de SAP_User_Config Tags Cadena de etiquetas asignadas al usuario RunObsoleteProgOK
Lista de reproducción de SAP_User_Config Id. de objeto de Microsoft Entra del usuario Id. de objeto de Microsoft Entra
Lista de reproducción de SAP_User_Config Identificador de usuario Identificador de usuario de Azure Directory
Lista de reproducción de SAP_User_Config SID local del usuario
Lista de reproducción de SAP_User_Config Nombre principal de usuario
Lista de reproducción de SAP_User_Config TagsList Una lista de etiquetas asignadas al usuario ChangeUserMasterDataOK;RunObsoleteProgOK
Lógica TagsIntersect Conjunto de etiquetas que coinciden SearchForTags [«ChangeUserMasterDataOK»,«RunObsoleteProgOK»]
Lógica SpecialFocusTagged Indicación de foco especial True, False
Lógica IntersectionSize Número de etiquetas intersecdas

SAPUsersHeader

La función SAPUsersHeader está diseñada para proporcionar una vista de alto nivel del usuario de SAP. Usa los datos extraídos de las tablas de datos maestros de usuario de SAP y de la actividad reciente en el registro de auditoría de SAP para recopilar direcciones IP y correo electrónico. A continuación, devuelve el último correo electrónico conocido y las direcciones IP, junto con el correo electrónico principal y las direcciones IP.

Parámetros:

Nombre Opcional/?Requerido Valor predeterminado Descripción
SelectedSystems Opcionales All Systems Se usa para filtrar sistemas SAP específicos para examinar
SelectedSystemRoles Opcionales All System Roles Determina los roles de los sistemas SAP que se van a examinar, tal como se define en la lista de seguimiento de SAP - Systems .
SelectedUsers Opcionales All Users Puede escribir listas de usuarios.
SelectedUser Opcionales All Users Acepta solo un solo usuario.

Por ejemplo:

SelectedSystemRoles:dynamic = dynamic(["All System Roles"]) SelectedSystems:dynamic = dynamic(["All Systems"]) SelectedUsers:dynamic = dynamic(["All Users"]) SelectedUser:string = "All Users"

Sugerencia

Para tener en cuenta las consideraciones de rendimiento, solo se tienen en cuenta algunos días de actividad de auditoría. Para obtener un historial completo de la actividad del usuario, ejecute una consulta de KQL personalizada en la función SAPAuditLog .

La función SAPUsersHeader devuelve la siguiente salida:

Source Campo Descripción Notas
Usuario El usuario de SAP
Tablas de SAP ADR6 y USR21 Correo electrónico Tomado de los datos maestros del usuario OSS, DDIC
Tabla DE SAP USR02 UserType Cadena de etiquetas asignadas al usuario RunObsoleteProgOK
Tabla DE SAP USR02 Zona horaria Id. de objeto de Microsoft Entra
Tabla DE SAP USR02 LockedStatus Identificador de usuario de Azure Directory
Registro de auditoría SAP LastSeen Una marca de tiempo Último evento de auditoría observado para el usuario
Registro de auditoría SAP LastSeenDaysAgo Días pasados desde LastSeen
Registro de auditoría SAP PrimaryIP Dirección IP usada con más frecuencia ChangeUserMasterDataOK;RunObsoleteProgOK
Registro de auditoría SAP LastKnownIP Dirección IP usada más recientemente [«ChangeUserMasterDataOK»,«RunObsoleteProgOK»]
Registro de auditoría SAP primaryEmail Dirección de correo electrónico usada con más frecuencia True, False
Registro de auditoría SAP KnownIPs Lista de direcciones IP conocidas Ordenado por la primera vez más frecuente
Registro de auditoría SAP KnownEmails Lista de direcciones de correo electrónico conocidas Ordenado por la primera vez más frecuente
Cliente Identificador de cliente de SAP
SystemID El id. del sistema SAP
SystemRole Rol del sistema SAP Producción, UAT
SystemUsage El uso principal del sistema SAP ERP, CRM

Para más información, vea: