Recopila registros de actividad de Microsoft Graph
Descripción general
Este analizador extrae campos de los registros de actividad de Microsoft Graph y los transforma en el modelo de datos unificado (UDM). Inicializa los campos de la AUA, analiza la carga útil, extrae marcas de tiempo, asigna varias propiedades a los campos de la AUA, controla las direcciones IP y los puertos, y clasifica el tipo de evento según la presencia de información principal y de red.
Antes de comenzar
- Asegúrate de tener una instancia de Google SecOps.
- Asegúrate de tener acceso con privilegios a Microsoft Entra ID y a las cuentas de almacenamiento de Azure.
Configura la cuenta de almacenamiento de Azure
- En la consola de Azure, busca cuentas de almacenamiento.
- Haz clic en Crear.
- Especifica valores para los siguientes parámetros de entrada:
- Subscription: Selecciona la suscripción.
- Grupo de recursos: Selecciona el grupo de recursos.
- Región: Selecciona la región.
- Rendimiento: Selecciona el nivel de rendimiento que deseas (se recomienda el nivel estándar).
- Redundancia: Selecciona el nivel de redundancia que desees (se recomienda GRS o LRS).
- Nombre de la cuenta de almacenamiento: Ingresa un nombre para la cuenta de almacenamiento nueva.
- Haz clic en Revisar + crear.
- Revisa la descripción general de la cuenta y haz clic en Crear.
- En la página Descripción general de la cuenta de almacenamiento, selecciona el submenú Llaves de acceso en Seguridad y herramientas de redes.
- Haz clic en Mostrar junto a clave1 o clave2.
- Haz clic en Copiar en el portapapeles para copiar la clave.
- Guarda la clave en una ubicación segura para consultarla en el futuro.
- En la página Descripción general de la cuenta de almacenamiento, selecciona el submenú Extremos en Configuración.
- Haz clic en Copiar en el portapapeles para copiar la URL del extremo del servicio de almacenamiento en caché (por ejemplo, https://
.blob.core.windows.net ). - Guarda la URL del extremo en una ubicación segura para consultarla en el futuro.
Configura la exportación de registros de actividad de Microsoft Graph a la cuenta de almacenamiento
- En la consola de Azure, busca Entra ID.
- Selecciona Supervisión > Configuración de diagnóstico.
- Haz clic en + Agregar parámetro de configuración de diagnóstico.
- Asigna un nombre único a la configuración (por ejemplo, ms-graph-activity).
- Selecciona la categoría MicrosoftGraphActivityLog que deseas exportar a Google SecOps.
- En Detalles del destino, selecciona Archivar en una cuenta de almacenamiento.
- Selecciona tu suscripción y la cuenta de almacenamiento que creaste en el paso anterior.
- Haz clic en Guardar.
Configura un feed en Google SecOps para transferir los registros de actividad de Microsoft Graph
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Agregar nueva.
- En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de actividad de Microsoft Graph).
- Selecciona Microsoft Azure Blob Storage como el Tipo de fuente.
- Selecciona Registros de actividad de Microsoft Graph como Tipo de registro.
- Haz clic en Siguiente.
Especifica valores para los siguientes parámetros de entrada:
URI de Azure: Es la URL del extremo del blob.
ENDPOINT_URL/BLOB_NAME
Reemplaza lo siguiente:
ENDPOINT_URL
: La URL del extremo de blob (https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
: Es el nombre del blob (por ejemplo, insights-logs-).
URI is a: Selecciona el tipo de URI según la configuración del flujo de registros (Archivo único | Directorio | Directorio que incluye subdirectorios).
Opciones de eliminación de fuentes: Selecciona la opción de eliminación según tus preferencias.
- Clave compartida: Es la clave de acceso a Azure Blob Storage.
- Espacio de nombres de recursos: Es el espacio de nombres de recursos.
- Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed.
Haz clic en Siguiente.
Revisa la configuración de tu nuevo feed en la pantalla Finalizar y, luego, haz clic en Enviar.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
callerIpAddress |
principal.asset.ip |
El campo de registro sin procesar callerIpAddress se copia en el campo UDM. |
callerIpAddress |
principal.ip |
El campo de registro sin procesar callerIpAddress se copia en el campo UDM. |
category |
security_result.category_details |
El campo de registro sin procesar category se copia en el campo UDM. |
correlationId |
security_result.detection_fields.value |
El campo de registro sin procesar correlationId se copia en el campo UDM, donde la clave es correlationId . |
Level |
security_result.detection_fields.value |
El campo de registro sin procesar Level se convierte en una cadena y se copia en el campo de la UDM, donde la clave es Level . |
operationName |
metadata.product_event_type |
El campo de registro sin procesar operationName se copia en el campo UDM. |
operationVersion |
additional.fields.value.string_value |
El campo de registro sin procesar operationVersion se copia en el campo UDM, donde la clave es operationVersion . |
properties.apiVersion |
metadata.product_version |
El campo de registro sin procesar properties.apiVersion se copia en el campo UDM. |
properties.appId |
target.resource.product_object_id |
El campo de registro sin procesar properties.appId se copia en el campo UDM. |
properties.atContent |
additional.fields.value.string_value |
El campo de registro sin procesar properties.atContent se copia en el campo UDM, donde la clave es atContent . |
properties.clientAuthMethod |
extensions.auth.auth_details |
Según el valor de properties.clientAuthMethod , el campo de la UDM se establece en "Cliente público" (0), "ID de cliente/Secreto de cliente" (1) o "Certificado de cliente" (2). |
properties.clientRequestId |
additional.fields.value.string_value |
El campo de registro sin procesar properties.clientRequestId se copia en el campo UDM, donde la clave es clientRequestId . |
properties.durationMs |
network.session_duration.seconds |
El campo de registro sin procesar properties.durationMs se convierte de milisegundos a segundos y se copia en el campo de la UDM. |
properties.identityProvider |
security_result.detection_fields.value |
El campo de registro sin procesar properties.identityProvider se copia en el campo UDM, donde la clave es identityProvider . |
properties.ipAddress |
principal.asset.ip |
La dirección IP del campo de registro sin procesar properties.ipAddress se extrae y se copia en el campo UDM. |
properties.ipAddress |
principal.ip |
La dirección IP del campo de registro sin procesar properties.ipAddress se extrae y se copia en el campo UDM. |
properties.location |
principal.location.name |
El campo de registro sin procesar properties.location se copia en el campo UDM. |
properties.operationId |
security_result.detection_fields.value |
El campo de registro sin procesar properties.operationId se copia en el campo UDM, donde la clave es operationId . |
properties.requestMethod |
network.http.method |
El campo de registro sin procesar properties.requestMethod se copia en el campo UDM. |
properties.requestId |
metadata.product_log_id |
El campo de registro sin procesar properties.requestId se copia en el campo UDM. |
properties.responseSizeBytes |
network.received_bytes |
El campo de registro sin procesar properties.responseSizeBytes se convierte en un número entero sin signo y se copia en el campo UDM. |
properties.responseStatusCode |
network.http.response_code |
El campo de registro sin procesar properties.responseStatusCode se convierte en un número entero y se copia en el campo de la AUA. |
properties.roles |
additional.fields.value.string_value |
El campo de registro sin procesar properties.roles se copia en el campo UDM, donde la clave es roles . |
properties.scopes |
additional.fields.value.string_value |
El campo de registro sin procesar properties.scopes se copia en el campo UDM, donde la clave es Scopes . |
properties.servicePrincipalId |
principal.user.userid |
El campo de registro sin procesar properties.servicePrincipalId se copia en el campo UDM si properties.userId está vacío. |
properties.signInActivityId |
network.session_id |
El campo de registro sin procesar properties.signInActivityId se copia en el campo UDM. |
properties.tenantId |
metadata.product_deployment_id |
El campo de registro sin procesar properties.tenantId se copia en el campo UDM. |
properties.tokenIssuedAt |
additional.fields.value.string_value |
El campo de registro sin procesar properties.tokenIssuedAt se copia en el campo UDM, donde la clave es tokenIssuedAt . |
properties.userAgent |
network.http.user_agent |
El campo de registro sin procesar properties.userAgent se copia en el campo UDM. |
properties.userId |
principal.user.userid |
El campo de registro sin procesar properties.userId se copia en el campo UDM. |
properties.wids |
security_result.detection_fields.value |
El campo de registro sin procesar properties.wids se copia en el campo UDM, donde la clave es wids . |
resourceId |
target.resource.attribute.labels.value |
El campo de registro sin procesar resourceId se copia en el campo UDM, donde la clave es Resource ID . |
resultSignature |
additional.fields.value.string_value |
El campo de registro sin procesar resultSignature se copia en el campo UDM, donde la clave es resultSignature . |
time |
metadata.event_timestamp |
El campo de registro sin procesar time se analiza y se convierte en una marca de tiempo y se copia en el campo UDM. El campo event.idm.read_only_udm.metadata.event_type de la UDM se establece en "NETWORK_HTTP" si has_principal es verdadero y network.http no está vacío, en "STATUS_UPDATE" si has_principal es verdadero y network.http está vacío, o en "GENERIC_EVENT" de lo contrario. El campo UDM está configurado como "Microsoft Graph". El campo UDM se establece en "Microsoft". |
Cambios
2024-05-27
- Establece "metadata.vendor_name" como "Microsoft" y "metadata.product_name" como "Microsoft Graph".
2024-03-01
- Sin embargo, el analizador se creó recientemente.