Conexión de Microsoft Sentinel a Amazon Web Services para ingerir datos de registro del servicio AWS
Artículo
Use los conectores de Amazon Web Services (AWS) para extraer los registros de servicio de AWS en Microsoft Sentinel. Estos conectores funcionan concediendo a Microsoft Sentinel acceso a los registros de recursos de AWS. La configuración del conector establece una relación de confianza entre Amazon Web Services y Microsoft Sentinel. Para ello, en AWS se crea un rol que concede a Microsoft Sentinel el permiso necesario para acceder a los registros de AWS.
Este conector está disponible en dos versiones: el conector heredado para la administración de CloudTrail y los registros de datos, y la nueva versión que puede ingerir registros de los siguientes servicios de AWS al extraerlos de un cubo S3 (los vínculos son a la documentación de AWS):
En esta pestaña se explica cómo configurar el conector de AWS S3. El proceso de configuración consta de dos partes: el lado de AWS y el lado de Microsoft Sentinel. El proceso de cada lado genera información usada por el otro lado. Esta autenticación bidireccional crea una comunicación segura.
Requisitos previos
Asegúrese de que los registros del servicio de AWS seleccionado usen el formato aceptado por Microsoft Sentinel:
Amazon VPC: archivo .csv en formato GZIP con encabezados; delimitador: espacio.
Amazon GuardDuty: formatos json-line y GZIP.
AWS CloudTrail: archivo .json en formato GZIP.
CloudWatch: archivo .csv en formato GZIP sin encabezado. Si necesita convertir los registros a este formato, puede usar esta función lambda de CloudWatch.
Debe tener permiso de escritura en el área de trabajo de Microsoft Sentinel.
Este gráfico y el texto siguiente muestran cómo interactúan las partes de esta solución de conector.
Los servicios de AWS están configurados para enviar sus registros a cubos de almacenamiento S3 (Simple Storage Service).
El cubo S3 envía mensajes de notificación a la cola de mensajes de SQS (Simple Queue Service) cada vez que recibe nuevos registros.
El conector de AWS S3 de Microsoft Sentinel sondea la cola de SQS a intervalos regulares y frecuentes. Si hay un mensaje en la cola, contendrá la ruta de acceso a los archivos de registro.
El conector lee el mensaje con la ruta de acceso y, a continuación, captura los archivos del cubo S3.
Para conectarse a la cola de SQS y al cubo de S3, Microsoft Sentinel usa un proveedor de identidades web federado (Microsoft Entra ID) para autenticarse con AWS a través de OpenID Connect (OIDC) y asumiendo un rol de AWS IAM. El rol se configura con una directiva de permisos que le proporciona acceso a esos recursos.
Conectar el conector S3
En el entorno de AWS:
Configure los servicios de AWS para enviar registros a un cubo S3.
Cree una cola de Simple Queue Service (SQS) para proporcionar una notificación.
Cree un proveedor de identidades web para autenticar a los usuarios en AWS a través de OpenID Connect (OIDC).
Cree un rol asumido para conceder permisos a los usuarios autenticados por el proveedor de identidades web de OIDC para acceder a los recursos de AWS.
Adjunte las directivas de permisos IAM adecuadas para conceder al rol asumido acceso a los recursos adecuados (cubo de S3, SQS).
Hemos puesto a disposición, en nuestro repositorio GitHub, un script que automatiza el lado de AWS de este proceso. Consulte las instrucciones para la configuración automática más adelante en este documento.
Para simplificar el proceso de incorporación, Microsoft Sentinel ha proporcionado un script de PowerShell para automatizar la configuración del lado AWS del conector: los recursos, las credenciales y los permisos necesarios de AWS.
El script realiza las siguientes acciones:
Crea un proveedor de identidades web de OIDC para autenticar a los usuarios de Microsoft Entra ID en AWS.
Crea un rol asumido por IAM con los permisos mínimos necesarios para conceder a usuarios autenticados por OIDC acceso a sus registros en un cubo de S3 y una cola de SQS determinados.
Permite a los servicios de AWS especificados enviar registros a ese cubo S3 y mensajes de notificación a esa cola de SQS.
Si es necesario, crea ese cubo S3 y esa cola de SQS para este fin.
Configura las directivas de permisos IAM necesarias y las aplica al rol IAM creado anteriormente.
En el caso de las nubes de Azure Government, un script especializado crea un proveedor de identidades web OIDC diferente, al que asigna el rol asumido de IAM.
Requisitos previos para la configuración automática
Debe tener PowerShell y la CLI de AWS en la máquina.
Para ejecutar el script para configurar el conector, siga estos pasos:
En el menú de navegación de Microsoft Sentinel, seleccione Conectores de datos.
Seleccione Amazon Web Services S3 en la galería de conectores de datos.
Si no ve el conector, instale la solución de Amazon Web Services desde el Centro de contenido de Microsoft Sentinel.
En el panel de detalles del conector, seleccione Abrir página del conector.
En la sección Configuración, en 1. Set up your AWS environment (1. Configure el entorno de AWS), expanda Setup with PowerShell script (Configuración con script de PowerShell [recomendado]).
Siga las instrucciones en pantalla para descargar y extraer el script de instalación de AWS S3 (el vínculo descarga un archivo ZIP que contiene el script de instalación principal y los scripts auxiliares) de la página del conector.
Antes de ejecutar el script, ejecute el comando aws configure desde la línea de comandos de PowerShell y escriba la información pertinente cuando se le solicite. Consulte Interfaz de la línea de comandos de AWS | Conceptos básicos de configuración (desde la documentación de AWS) para obtener más información.
Ahora ejecute el script. Copie el comando de la página del conector (en "Run script to set up the environment" [Ejecutar script para configurar el entorno]) y péguelo en la línea de comandos.
El script le pedirá que escriba el id. del área de trabajo. Este id. aparece en la página del conector. Cópielo y péguelo en el aviso del script.
Cuando el script termine de ejecutarse, copie el ARN de rol y la dirección URL de SQS de la salida del script (vea a continuación el ejemplo de la primera captura de pantalla) y péguelos en sus respectivos campos en la página del conector en 2. Agregar conexión (vea a continuación la segunda captura de pantalla).
Seleccione un tipo de datos en la lista desplegable Tabla de destino. Esto indica al conector en qué registros de servicio de AWS se establece esta conexión para la recopilación y en qué tabla de Log Analytics almacenará los datos ingeridos. Después, seleccione Agregar conexión.
Nota
El script puede tardar hasta 30 minutos en terminar de ejecutarse.
Instalación manual
Microsoft recomienda usar el script de instalación automática para implementar este conector. Si por cualquier motivo no desea aprovechar esta cómoda función, siga los pasos que se indican a continuación para configurar el conector manualmente.
En el panel de detalles del conector, seleccione Abrir página del conector.
En Configuración, expanda Configuración con script de PowerShell (recomendado) y, a continuación, copie el Identificador externo (id. de área de trabajo) en el Portapapeles.
Creación de un proveedor de identidades web de Open ID Connect (OIDC) y un rol asumido de AWS
En otra ventana o pestaña del explorador, abra la consola de AWS.
Audiencia que definió para el proveedor de identidades en el paso anterior.
Permisos para asignar
AmazonSQSReadOnlyAccess
AWSLambdaSQSQueueExecutionRole
AmazonS3ReadOnlyAccess
ROSAKMSProviderPolicy
Directivas adicionales para ingerir los distintos tipos de registros de servicio de AWS
Para obtener información sobre estas directivas, consulte la página correspondiente de directivas de permisos del conector de AWS S3, en el repositorio de GitHub de Microsoft Sentinel.
XXXXXXXXXXXX es su identificador de cuenta de AWS.
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX es el identificador del área de trabajo de Microsoft Sentinel.
Actualice (guarde) la directiva cuando haya terminado de editarla.
Adición de la información de rol y cola de AWS al conector de datos S3
En la pestaña del explorador abierta a la consola de AWS, introduzca el servicio Administración de identidad y acceso (IAM) y vaya a la lista de Roles. Seleccione el rol que creó anteriormente.
Copie el ARN en el Portapapeles.
Introduzca Simple Queue Service, seleccione la cola de SQS que creó y copie la dirección URL de la cola en el Portapapeles.
Vuelva a la pestaña del explorador de Microsoft Sentinel, que debe abrirse en la página del conector de datos de Amazon Web Services S3 (versión preliminar). En 2. Agregar conexión:
Pegue el ARN del rol IAM que copió hace dos pasos en el campo Rol que agregar.
Pegue la dirección URL de la cola de SQS que copió en el último paso en el campo SQS URL (Dirección URL de SQS).
Seleccione un tipo de datos en la lista desplegable Tabla de destino. Esto indica al conector en qué registros de servicio de AWS se establece esta conexión para la recopilación y en qué tabla de Log Analytics almacenará los datos ingeridos.
Seleccione Agregar conexión.
Configuración de un servicio de AWS para exportar registros a un cubo S3
Consulte la documentación de Amazon Web Services (vinculada a continuación) para obtener las instrucciones para enviar cada tipo de registro al cubo S3:
Si decide personalizar el formato del registro, debe incluir el atributo start, ya que se asigna al campo TimeGenerated en el área de trabajo de Log Analytics. De lo contrario, el campo TimeGenerated se rellenará con el tiempo ingerido del evento que no describe con precisión el evento de registro.
En AWS, los resultados se exportan de forma predeterminada cada 6 horas. Ajuste la frecuencia de exportación para los resultados activos actualizados en función de los requisitos del entorno. Para acelerar el proceso, puede modificar la configuración predeterminada para exportar los resultados cada 15 minutos. Consulte Establecimiento de la frecuencia para exportar los resultados activos actualizados.
El campo TimeGenerated se rellena con el valor Update at del resultado.
De forma predeterminada, los registros de AWS CloudTrail se almacenan en cubos S3.
Se pueden almacenar distintos tipos de registros en el mismo cubo S3, pero no se deben almacenar en la misma ruta de acceso.
Cada cola de SQS debe apuntar a un tipo de mensaje, por lo que si desea ingerir los resultados de GuardDuty y los registros de flujo de VPC, debe configurar colas independientes para cada tipo.
Del mismo modo, una sola cola de SQS solo puede servir a una ruta de acceso en un cubo S3, por lo que si por cualquier motivo está almacenando registros en varias rutas de acceso, cada ruta de acceso requiere su propia cola de SQS dedicada.
En esta pestaña se explica cómo configurar el conector AWS CloudTrail. El proceso de configuración consta de dos partes: el lado de AWS y el lado de Microsoft Sentinel. El proceso de cada lado genera información usada por el otro lado. Esta autenticación bidireccional crea una comunicación segura.
Nota
AWS CloudTrail tiene limitaciones integradas en su LookupEvents API. No permite más de dos transacciones por segundo (TPS) por cuenta y ninguna consulta puede devolver más de 50 registros. En consecuencia, si un único inquilino genera constantemente más de 100 registros por segundo en una región, se producirán trabajos pendientes y retrasos en la ingesta de datos.
Actualmente, solo puede conectar AWS Commercial CloudTrail a Microsoft Sentinel y no a AWS GovCloud CloudTrail.
Requisitos previos
Debe tener permiso de escritura en el área de trabajo de Microsoft Sentinel.
Para el tipo de cuenta, en lugar de Esta cuenta, elija Otra cuenta de AWS.
En el campo Id. de cuenta, escriba el número 197857026523 (o péguelo) (el identificador de cuenta de Microsoft que copió en el paso anterior del Portapapeles). Este número es el identificador de la cuenta de servicio de Microsoft Sentinel para AWS. Indica a AWS que la cuenta que usa este rol es un usuario de Microsoft Sentinel.
En las opciones, seleccione Requerir identificador externo (no seleccione Requerir MFA). En el campo Id. externo, pegue el identificador del área de trabajo de Microsoft Sentinel que copió en el paso anterior. Esto identifica la cuenta específica de Microsoft Sentinel en AWS.
Asigne la directiva de permisos AWSCloudTrailReadOnlyAccess. Agregue una etiqueta si lo desea.
Asigne al rol un nombre descriptivo que incluya una referencia a Microsoft Sentinel. Ejemplo: "MicrosoftSentinelRole".
Adición de la información del rol de AWS al conector de datos AWS CloudTrail
En la pestaña del explorador abierta a la consola de AWS, introduzca el servicio Administración de identidad y acceso (IAM) y vaya a la lista de Roles. Seleccione el rol que creó anteriormente.
Copie el ARN en el Portapapeles.
Vuelva a la pestaña del explorador de Microsoft Sentinel, que debe abrirse en la página del conector de datos de Amazon Web Services. En la sección Configuración, pegue el ARN de rol en el campo Rol que agregar y seleccione Agregar.
Para usar el esquema correspondiente de Log Analytics con los eventos de AWS, busque AWSCloudTrail.
Importante
A partir del 1 de diciembre de 2020, el campo AwsRequestId se ha reemplazado por el campo AwsRequestId_ (tenga en cuenta el guion bajo agregado). Los datos del campo anterior AwsRequestId se conservarán hasta el final del período de retención de datos especificado por el cliente.
Pasos siguientes
En este documento, ha aprendido a conectarse a los recursos de AWS para ingerir sus registros en Microsoft Sentinel. Para obtener más información sobre Microsoft Sentinel, consulte los siguientes artículos: