Traiga su propio aprendizaje automático a Microsoft Sentinel

Nota

Azure Sentinel ahora se denomina Microsoft Sentinel y se actualizarán estas páginas en las próximas semanas. Obtenga más información sobre las recientes mejoras de seguridad de Microsoft.

Nota

Para obtener información sobre la disponibilidad de características en las nubes de la Administración Pública de Estados Unidos, consulte las tablas de Microsoft Sentinel en Disponibilidad de características en la nube para clientes de la Administración Pública de Estados Unidos.

El aprendizaje automático es uno de los principales fundamentos de Microsoft Sentinel y uno de los principales atributos que lo diferencian. Microsoft Sentinel ofrece el aprendizaje automático en varias experiencias: integrado en el motor de correlación de Fusion y en los cuadernos de Jupyter Notebook, así como en la nueva plataforma Traiga su propio aprendizaje automático (BYO ML).

Los modelos de detección de aprendizaje automático se pueden adaptar a entornos individuales y a cambios en el comportamiento del usuario para reducir falsos positivos e identificar amenazas que no se podrían encontrar con un enfoque tradicional. Muchas organizaciones de seguridad son conscientes del valor del aprendizaje automático para la seguridad, aunque solo algunas tienen la suerte de contar con profesionales con experiencia en ambas materias: seguridad y aprendizaje automático. Hemos diseñado la plataforma que se presenta aquí para poder acompañar a los profesionales y organizaciones de seguridad en su recorrido hacia la adopción del aprendizaje automático. Las organizaciones no familiarizadas con el aprendizaje automático, o que no cuentan con la necesaria experiencia, pueden obtener un valor de protección significativo de las funcionalidades de aprendizaje automático integradas de Microsoft Sentinel.

machine learning framework

¿Qué es la plataforma Traiga su propio aprendizaje automático (BYO-ML)?

Para aquellas organizaciones que tienen recursos de aprendizaje automático y desean crear modelos de aprendizaje automático personalizados para sus necesidades empresariales exclusivas, ofrecemos la plataforma BYO-ML. La plataforma utiliza el entorno Azure Databricks/Apache Spark y Jupyter Notebook para generar el entorno de aprendizaje automático. Ofrece los siguientes componentes:

  • un paquete BYO-ML, que incluye bibliotecas para ayudarle a acceder a los datos y a insertar los resultados en Log Analytics, de forma que pueda integrar los resultados con la detección, la investigación y la búsqueda.

  • Plantillas de algoritmos de aprendizaje automático que puede personalizar para ajustarse a problemas de seguridad específicos de su organización.

  • Cuadernos de ejemplo para entrenar el modelo y programar la puntuación de este.

Además de todo esto, puede traer sus propios modelos de aprendizaje automático y/o su propio entorno de Spark para integrarlos con Microsoft Sentinel.

Con la plataforma BYO-ML, puede empezar a crear sus propios modelos de aprendizaje automático:

  • El cuaderno con datos de ejemplo le ayuda a obtener una experiencia práctica completa, sin preocuparse por el control de los datos de producción.

  • El paquete integrado con el entorno de Spark reduce los desafíos y dificultades en la administración de la infraestructura.

  • Las bibliotecas admiten los movimientos de datos. Los cuadernos de entrenamiento y puntuación muestran la experiencia completa y sirven como plantilla que el usuario puede adaptar a su entorno.

Casos de uso

La plataforma y el paquete BYO-ML reducen significativamente el tiempo y el esfuerzo que necesitará para crear sus propias detecciones de aprendizaje automático y liberar la funcionalidad necesaria para afrontar problemas de seguridad específicos en Microsoft Sentinel. La plataforma admite los siguientes casos de uso:

Entrenamiento de un algoritmo de aprendizaje automático para obtener un modelo personalizado: puede tomar un algoritmo de aprendizaje automático existente (que haya compartido Microsoft o la comunidad de usuarios) y entrenarlo fácilmente con sus propios datos para obtener un modelo de aprendizaje automático personalizado que se adapte mejor a sus datos y entorno.

Modificación de una plantilla de algoritmo de aprendizaje automático para la obtención de un modelo personalizado: puede modificar una plantilla de algoritmo de aprendizaje automático (que haya compartido Microsoft o la comunidad de usuarios) y entrenar el algoritmo modificado con sus propios datos para derivar un modelo personalizado que se ajuste a su problema concreto.

Cree su propio modelo: Cree su propio modelo desde cero con las utilidades y la plataforma BYO-ML de Microsoft Sentinel.

Integre el entorno existente de Databricks/Spark: Integre el entorno existente de Databricks/Spark en Microsoft Sentinel y use las bibliotecas y plantillas de BYO-ML para crear modelos de aprendizaje automático para su situación concreta.

Importe sus propios modelos de aprendizaje automático: Puede importar sus propios modelos de aprendizaje automático y usar la plataforma y utilidades de BYO-ML para integrarlos con Microsoft Sentinel.

Uso compartido de un algoritmo de aprendizaje automático: comparta un algoritmo de aprendizaje automático para que la comunidad lo adopte y lo adapte.

Uso del aprendizaje automático para habilitar SecOps: use su propio modelo de aprendizaje automático personalizado y los resultados para la búsqueda, las detecciones, la investigación y la respuesta.

En este artículo se muestran los componentes de la plataforma BYO-ML y cómo aprovechar la plataforma y el algoritmo de acceso a recursos anómalo para ofrecer una detección personalizada de aprendizaje automático con Microsoft Sentinel.

Entorno de Azure Databricks/Spark

Apache Spark ha supuesto un gran avance en la simplificación de los macrodatos al ofrecer una plataforma unificada para la creación de canalizaciones de datos. Azure Databricks ha llevado esto aún más lejos al proporcionar una plataforma en la nube que no necesita administración creada en torno a Spark. Le recomendamos que use Databricks para su plataforma BYO-ML, de modo que pueda centrarse en buscar respuestas que tengan un efecto inmediato en su negocio, en lugar de tener que abordar las canalizaciones de datos y los problemas de la plataforma.

Si ya dispone de Databricks o de cualquier otro entorno de Spark, y prefiere usar la configuración ya existente, el paquete BYO-ML funcionará también correctamente.

Paquete BYO-ML

El paquete BYO-ML incluye los procedimientos recomendados y la experiencia en investigación de Microsoft sobre el aprendizaje automático en relación con la seguridad. En este paquete, se proporciona la siguiente lista de utilidades, cuadernos y plantillas de algoritmos para problemas de seguridad.

Nombre de archivo Descripción
azure_sentinel_utilities.whl Contiene utilidades para la lectura de blobs de Azure y la escritura en Log Analytics.
AnomalousRASampleData Notebook muestra el uso del modelo de acceso a recursos anómalo en Microsoft Sentinel con datos de ejemplo de entrenamiento y prueba generados.
AnomalousRATraining.ipynb Cuaderno para entrenar el algoritmo, crear los modelos y guardarlos.
AnomalousRAScoring.ipynb Notebook para programar el modelo que se va a ejecutar, visualizar el resultado y escribir la puntuación de nuevo en Microsoft Sentinel.

La primera plantilla de algoritmo de aprendizaje automático que se ofrece es para la detección del acceso a recursos anómalo. Se basa en un algoritmo de filtrado colaborativo y se entrena con los registros de acceso de los recursos compartidos de archivos de Windows (eventos de seguridad con el identificador de evento 5140). La información clave que necesita para este modelo en el registro es el emparejamiento de los usuarios y los recursos a los que se ha accedido.

Tutorial de ejemplo: Detección del acceso a recursos compartidos de archivos anómalo

Ahora que está familiarizado con los componentes clave de la plataforma BYO-ML, este es un ejemplo que muestra el uso de la plataforma y los componentes para proporcionar una detección de aprendizaje automático personalizada.

Configuración del entorno Databricks/Spark

Deberá configurar su propio entorno de Databricks si no dispone ya de uno. Consulte el documento de inicio rápido de Databricks para obtener instrucciones.

Instrucción de exportación automática

Para crear modelos de Machine Learning personalizados basados en sus propios datos en Microsoft Sentinel, deberá exportar los datos de Log Analytics a un recurso de Blob Storage o de Event Hubs, de forma que el modelo de aprendizaje automático pueda acceder a él desde Databricks. Aprenda a ingerir datos en Microsoft Sentinel.

En este ejemplo, debe tener los datos de entrenamiento para el registro de acceso a los recursos compartidos de archivos en Azure Blob Storage. El formato de los datos está documentado en el cuaderno y las bibliotecas.

Puede exportar automáticamente los datos desde Log Analytics mediante la CLI de Azure.

Debe tener asignado el rol Colaborador en el área de trabajo de Log Analytics, la cuenta de almacenamiento y el recurso de EventHub para poder ejecutar los comandos.

A continuación se muestra un conjunto de comandos de ejemplo para configurar la exportación automática:


az –version

# Login with Azure CLI
az login

# List all Log Analytics clusters
az monitor log-analytics cluster list

# Set to specific subscription
az account set --subscription "SUBSCRIPTION_NAME"
 
# Export to Storage - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIStr --destination “DESTINATION_NAME" --enable "true" --tables SecurityEvent
 
# Export to EventHub - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIEH --destination “DESTINATION_NAME" --enable "true" --tables SecurityEvent Heartbeat"]

# List export settings
az monitor log-analytics workspace data-export list --resource-group "RG_NAME" --workspace-name "WS_NAME"

# Delete export setting
az monitor log-analytics workspace data-export delete --resource-group "RG_NAME" --workspace-name "WS_NAME" --name "NAME"

Exportación de datos personalizados

En el caso de los datos personalizados que no admiten la exportación automática de Log Analytics, puede usar una aplicación lógica u otras soluciones para trasladar los datos. Puede consultar el blog y el script de Exportación de datos de Log Analytics a Blob Storage.

Correlación con datos fuera de Microsoft Sentinel

También puede traer datos desde fuera de Microsoft Sentinel a Blob Storage o Event Hubs y correlacionarlos con los datos de Microsoft Sentinel para crear sus modelos de Machine Learning.

Copie el paquete BYO-ML del repositorio de GitHub para Microsoft Sentinel mencionado anteriormente en el entorno de Databricks. Después, abra los cuadernos y siga las instrucciones del cuaderno para instalar las bibliotecas necesarias en los clústeres.

Entrenamiento y puntuación del modelo

Siga las instrucciones de los dos cuadernos para cambiar las configuraciones de acuerdo con su propio entorno y recursos, siga los pasos para entrenar y crear el modelo y, finalmente, programe el modelo para puntuar los registros de acceso de los recursos compartidos de archivos entrantes.

Escritura de resultados en Log Analytics

Una vez que obtenga la puntuación programada, puede usar el módulo en el cuaderno de puntuación para escribir los resultados de puntuación en el área de trabajo de Log Analytics asociada a la instancia de Microsoft Sentinel.

Comprobación del conjunto de resultados en Microsoft Sentinel

Para ver los resultados puntuados junto con los detalles de registro relacionados, vuelva al portal de Microsoft Sentinel. En Registros> Registros personalizados, verá los resultados en la tabla AnomalousResourceAccessResult_CL (o en una con su propio nombre de tabla personalizado). Puede utilizar estos resultados para mejorar su experiencia de investigación y búsqueda.

anomalous resource access logs

Creación de una regla de análisis personalizado con resultados de aprendizaje automático

Una vez que haya confirmado que los resultados de aprendizaje automático están en la tabla de registros personalizados y esté satisfecho con la fidelidad de las puntuaciones, puede crear una detección basada en los resultados. Vaya a Analytics desde el portal de Microsoft Sentinel y cree una nueva regla de detección. En el siguiente ejemplo se muestra la consulta utilizada para crear la detección.

create custom analytics rule for B Y O M L detections

Visualización de incidentes y respuesta a estos

Una vez que haya configurado la regla de análisis según los resultados del aprendizaje automático, si hay resultados por encima del umbral establecido en la consulta, se generará un incidente y se mostrará en la página Incidentes en Microsoft Sentinel.

Pasos siguientes

En este documento, ha aprendido a usar la plataforma BYO-ML de Microsoft Sentinel para crear o importar sus propios algoritmos de aprendizaje automático para analizar datos y detectar amenazas.