Recopila registros de Microsoft Sentinel

Se admite en los siguientes países:

Descripción general

Este analizador extrae campos de los registros JSON de Microsoft Sentinel, realiza transformaciones como la extracción de direcciones IP y la manipulación de cadenas, y asigna los datos extraídos a la UDM, incluidos los campos principal, objetivo, security_result y metadatos. También controla varios tipos de datos y combina las entidades extraídas en la estructura de la UDM.

Antes de comenzar

  • Asegúrate de tener una instancia de Google SecOps.
  • Acceso a Microsoft Sentinel

Configura un feed en Google SecOps para transferir los registros de Microsoft Sentinel

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar nueva.
  3. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de Microsoft Sentinel).
  4. Selecciona Webhook como el Tipo de origen.
  5. Selecciona Microsoft Sentinel como el Tipo de registro.
  6. Haz clic en Siguiente.
  7. Opcional: Especifica valores para los siguientes parámetros de entrada:
    • Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como \n.
    • Espacio de nombres de activos: Espacio de nombres de activos.
    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed.
  8. Haz clic en Siguiente.
  9. Revisa la configuración de tu nuevo feed en la pantalla Finalizar y, luego, haz clic en Enviar.
  10. Haz clic en Generate Secret Key para generar una clave secreta que autentique este feed.
  11. Copia y almacena la clave secreta, ya que no podrás volver a verla. Puedes volver a generar una clave secreta nueva, pero la regeneración de la clave secreta hace que la clave secreta anterior quede obsoleta.
  12. En la pestaña Detalles, copia la URL del extremo del feed del campo Información del extremo. Debes especificar esta URL de extremo en tu aplicación cliente.
  13. Haz clic en Listo.

Crea una clave de API para el feed de webhook

  1. Ve a consola de Google Cloud > Credenciales.

    Ir a Credenciales

  2. Haz clic en Crear credenciales y selecciona Clave de API.

  3. Restringe el acceso de la clave de API a la API de Google Security Operations.

Especifica la URL del extremo

  1. En tu aplicación cliente, especifica la URL del extremo HTTPS que se proporciona en el feed de webhook.
  2. Para habilitar la autenticación, especifica la clave de API y la clave secreta como parte del encabezado personalizado en el siguiente formato:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Recomendación: Especifica la clave de API como un encabezado en lugar de hacerlo en la URL. Si tu cliente de webhook no admite encabezados personalizados, puedes especificar la clave de API y la clave secreta con parámetros de consulta en el siguiente formato:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

Reemplaza lo siguiente:

  • ENDPOINT_URL: Es la URL del extremo del feed.
  • API_KEY: Es la clave de API para autenticarse en Google Security Operations.
  • SECRET: Es la clave secreta que generaste para autenticar el feed.

Configura una app de lógica para incidentes de Microsoft Sentinel

Para configurar la app de lógica para incidentes de Microsoft Sentinel, sigue estos pasos:

  1. Accede al portal de Azure.
  2. Haz clic en Crear un recurso.
  3. Busca la app de lógica.
  4. Haz clic en Crear para iniciar el proceso de creación.
  5. Especifica valores para los siguientes parámetros de entrada:
    • Suscripción: Selecciona la suscripción.
    • Grupo de recursos: Selecciona el grupo de recursos.
    • Nombre: Ingresa un nombre para la app de lógica.
    • Región: Selecciona la región.
    • Lugar de trabajo de estadísticas de registros: Selecciona el lugar de trabajo de estadísticas de registros.
  6. Haz clic en Revisar + crear.
  7. Haz clic en Crear.
  8. Después de crear la app de lógica, haz clic en Ir al recurso.
  9. Haz clic en Herramientas de desarrollo > Diseño de apps lógicas.
  10. Haz clic en Agregar activador.
  11. Busca Microsoft Sentinel.
  12. Selecciona Incidente de Microsoft Sentinel como activador.
  13. Si aún no creaste una conexión a Microsoft Sentinel, deberás hacerlo ahora. Haz clic en Crear y sigue las indicaciones para autenticarte.
  14. Haz clic en Insertar un paso nuevo.
  15. Haz clic en Agregar una acción.
  16. Busca y selecciona HTTP como la acción.
  17. Especifica valores para los siguientes parámetros de entrada:
    • URI: Es la URL del extremo del feed.
    • Método: POST
    • Encabezados: Agrega los siguientes encabezados:
      • Content-Type: application/json
      • X-goog-api-key: Es la clave de API para autenticarse en Google Security Operations.
      • X-Webhook-Access-Key: Es la clave secreta que generaste para autenticar el feed.

Configura una app de lógica para las alertas de Microsoft Sentinel

Para configurar la app de lógica para alertas de Microsoft Sentinel, sigue estos pasos:

  1. Ve a la página principal del portal de Azure.
  2. Haz clic en Crear un recurso.
  3. Busca la app de lógica.
  4. Haz clic en Crear para iniciar el proceso de creación.
  5. Especifica valores para los siguientes parámetros de entrada:
    • Suscripción: Selecciona la suscripción.
    • Grupo de recursos: Selecciona el grupo de recursos.
    • Nombre: Ingresa un nombre para la app de lógica.
    • Región: Selecciona la región.
    • Lugar de trabajo de estadísticas de registros: Selecciona el lugar de trabajo de estadísticas de registros.
  6. Haz clic en Revisar + crear.
  7. Haz clic en Crear.
  8. Después de crear la app de lógica, haz clic en Ir al recurso.
  9. Haz clic en Herramientas de desarrollo > Logic App Designer.
  10. Haz clic en Agregar activador.
  11. Busca Microsoft Sentinel.
  12. Selecciona Alerta de Microsoft Sentinel como activador.
  13. Si aún no creaste una conexión a Microsoft Sentinel, deberás hacerlo ahora. Haz clic en Crear y sigue las instrucciones para autenticarte.
  14. Haz clic en Insertar un paso nuevo.
  15. Haz clic en Agregar una acción.
  16. Busca y selecciona HTTP como la acción.
  17. Especifica valores para los siguientes parámetros de entrada:
    • URI: Es la URL del extremo del feed.
    • Método: POST
    • Encabezados: Agrega los siguientes encabezados:
      • Content-Type: application/json
      • X-goog-api-key: Es la clave de API para autenticarse en Google Security Operations.
      • X-Webhook-Access-Key: Es la clave secreta que generaste para autenticar el feed.

Configura reglas de automatización para Microsoft Sentinel

Para configurar las reglas de automatización de Microsoft Sentinel, sigue estos pasos:

  1. Ve a tu espacio de trabajo de Microsoft Sentinel.
  2. Haz clic en Configuración > Automatización.
  3. Haz clic en Crear.
  4. Selecciona Regla de automatización.
  5. Especifica valores para los siguientes parámetros de entrada:
    • Nombre: Ingresa un nombre para la regla de automatización.
    • Activador: Selecciona Cuando se crea un incidente.
    • Acciones: Selecciona Ejecutar libro de jugadas > App lógica creada para incidentes.
  6. Haz clic en Aplicar.
  7. Haz clic en Crear.
  8. Selecciona Regla de automatización.
  9. Especifica valores para los siguientes parámetros de entrada:
    • Nombre: Ingresa un nombre para la regla de automatización.
    • Activador: Selecciona Cuando se actualiza el incidente.
    • Condición: Haz clic en Agregar > Condición (Y) > Estado > Cambió.
    • Acciones: Selecciona Ejecutar libro de jugadas > App lógica creada para incidentes.
  10. Haz clic en Aplicar.
  11. Haz clic en Crear.
  12. Selecciona Regla de automatización.
  13. Especifica valores para los siguientes parámetros de entrada:
    • Nombre: Ingresa un nombre para la regla de automatización.
    • Activador: Selecciona Cuando se crea la alerta.
    • Acciones: Selecciona Ejecutar libro de jugadas > App lógica creada para alertas.
  14. Haz clic en Aplicar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
AlertGenerationStatus security_result.detection_fields.AlertGenerationStatus Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
AlertLink principal.labels.AlertLink Se asignan directamente.
AlertName security_result.rule_name Se asignan directamente.
AlertSeverity security_result.severity Se asignan directamente y se convierten a mayúsculas. Si el valor es HIGH, MEDIUM, LOW, CRITICAL o UNKNOWN_SEVERITY, se asigna a security_result.severity. De lo contrario, se asigna a security_result.severity_details.
AlertType security_result.threat_name Se asignan directamente.
Category security_result.detection_fields.Category Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
CompromisedEntity principal.resource.attribute.labels.CompromisedEntity Se asignan directamente.
CompromisedEntityId security_result.detection_fields.CompromisedEntityId Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
ConfidenceLevel security_result.confidence_details Se asignan directamente.
ConfidenceScore security_result.detection_fields.ConfidenceScore Se asignan directamente.
cribl_pipe additional.fields.cribl_pipe Se asignan directamente.
Description security_result.description Se asignan directamente.
DestinationDevice security_result.detection_fields.DestinationDevice O target.ip Se asigna desde el campo ExtendedProperties después del análisis de JSON. Si el valor es una dirección IP válida, se asigna a target.ip. De lo contrario, se asigna como un campo de detección.
DestinationDeviceAddress target.ip Se asigna desde el campo ExtendedProperties después del análisis de JSON, solo si es una dirección IP válida.
DeviceId security_result.detection_fields.DeviceId Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
DisplayName security_result.summary Se asignan directamente.
EndTime about.labels.EndTime Se asignan directamente.
Entities.Address principal.asset.ip Se extrae del array Entities después del análisis de JSON. Solo se asignan direcciones IP.
Entities.HostName principal.asset.hostname O principal.asset.ip Se extrae del array Entities después del análisis de JSON. Si el valor es una dirección IP válida, se asigna a principal.asset.ip. De lo contrario, se asigna a principal.asset.hostname.
Entities.IoTDevice.DeviceId security_result.detection_fields.IoTDeviceID Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.DeviceType security_result.detection_fields.IoTDeviceType Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.DeviceTypeId security_result.detection_fields.IoTDeviceTypeId Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.Importance security_result.detection_fields.IoTDeviceImportance Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.IoTSecurityAgentId security_result.detection_fields.IoTSecurityAgentId Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.Manufacturer security_result.detection_fields.IoT Manufacturer Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.OperatingSystem principal.asset.platform_software.platform_version Se extrae del array Entities después del análisis de JSON y se quitan los espacios finales.
Entities.IoTDevice.PurdueLayer security_result.detection_fields.IoT PurdueLayer Se extrae del array Entities después del análisis de JSON.
Entities.IoTDevice.Sensor security_result.detection_fields.IoT Sensor Se extrae del array Entities después del análisis de JSON.
ExtendedProperties.Protocol security_result.detection_fields.Protocol Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
ExtendedProperties.SensorId security_result.detection_fields.SensorId Se asigna directamente desde el campo ExtendedProperties después del análisis de JSON.
ExtendedProperties.SourceDevice principal.ip O security_result.detection_fields.SourceDevice Se asigna desde el campo ExtendedProperties después del análisis de JSON. Si el valor es una dirección IP válida, se asigna a principal.ip. De lo contrario, se asigna como un campo de detección.
ExtendedProperties.SourceDeviceAddress principal.ip Se asigna desde el campo ExtendedProperties después del análisis de JSON, solo si es una dirección IP válida.
IsIncident security_result.detection_fields.IsIncident Se asignan directamente y se convierten en cadenas.
ProcessingEndTime about.labels.ProcessingEndTime Se asignan directamente.
ProductComponentName principal.resource.attribute.labels.ProductComponentName Se asignan directamente.
ProductName principal.resource.attribute.labels.ProductName Se asignan directamente.
ProviderName principal.resource.attribute.labels.ProviderName Se asignan directamente.
ResourceId principal.resource.product_object_id, target.resource.name Se asignan directamente.
SourceComputerId principal.asset.asset_id Se asignan directamente y tienen el prefijo "SourceComputerId:".
SourceSystem security_result.detection_fields.SourceSystem Se asignan directamente.
StartTime about.labels.StartTime Se asignan directamente.
Status security_result.detection_fields.Status Se asignan directamente.
SystemAlertId metadata.product_log_id Se asignan directamente.
Tactics security_result.attack_details.tactics.name Se extrae del campo Tactics después del análisis de JSON y la eliminación de la barra invertida.
Techniques security_result.attack_details.techniques.id Se extrae del campo Techniques después del análisis de JSON y la eliminación de la barra invertida.
TenantId additional.fields.TenantId Se asignan directamente.
TimeGenerated about.labels.TimeGenerated Se asignan directamente.
timestamp metadata.event_timestamp, events.timestamp Se asignan directamente.
VendorName metadata.vendor_name Se asignan directamente.
VendorOriginalId additional.fields.VendorOriginalId Se asignan directamente.
_time metadata.event_timestamp, events.timestamp Se analiza como una marca de tiempo con el formato UNIX o UNIX_MS.
(lógica del analizador) metadata.event_type Se establece en "USER_RESOURCE_ACCESS" si están presentes el principal, el destino y el ResourceId. De lo contrario, configúralo como "GENERIC_EVENT".
(lógica del analizador) metadata.log_type Se establece en "MICROSOFT_SENTINEL".
(lógica del analizador) metadata.product_name Se establece en "MICROSOFT_SENTINEL".

Cambios

2023-11-03

  • Se asignó “ResourceId” a “target.resource.name”.
  • Cuando "ResourceId" no sea nulo y el evento tenga uno de "principal" o "target" como no nulo, asigna "metadata.event_type" a "USER_RESOURCE_ACCESS".

2023-08-31

  • Sin embargo, el analizador se creó recientemente.