Traga o seu próprio Machine Learning (ML) para o Microsoft Sentinel

Nota

Para obter informações sobre a disponibilidade de funcionalidades nas clouds do Governo dos EUA, consulte as tabelas do Microsoft Sentinel na Disponibilidade de funcionalidades da Cloud para clientes do Governo norte-americano.

O Machine Learning (ML) é um dos principais fundamentos do Microsoft Sentinel e um dos principais atributos que o distinguem. O Microsoft Sentinel oferece ML em várias experiências: incorporado no motor de correlação de fusão e blocos de notas do Jupyter e na plataforma Build-Your-Own ML (BYO ML) recentemente disponível.

Os modelos de deteção de ML podem adaptar-se a ambientes individuais e a alterações no comportamento do utilizador, para reduzir falsos positivos e identificar ameaças que não seriam encontradas com uma abordagem tradicional. Muitas organizações de segurança compreendem o valor do ML para a segurança, embora poucos deles tenham o luxo de profissionais que têm conhecimentos tanto em segurança como em ML. Concebemos o quadro aqui apresentado para que as organizações de segurança e os profissionais cresçam connosco no seu percurso de ML. As organizações novas no ML, ou sem os conhecimentos necessários, podem obter um valor de proteção significativo das capacidades de ML incorporadas do Microsoft Sentinel.

arquitetura de machine learning

Qual é a plataforma Bring Your Own Machine Learning (BYO-ML)?

Para organizações com recursos de ML e que gostariam de criar modelos de ML personalizados para as suas necessidades empresariais exclusivas, oferecemos a plataforma BYO-ML. A plataforma utiliza o ambiente doApache Spark do Azure Databricks/ e o Jupyter Notebook para produzir o ambiente de ML. Fornece os seguintes componentes:

  • um pacote BYO-ML, que inclui bibliotecas para o ajudar a aceder aos dados e enviar os resultados novamente para o Log Analytics (LA), para que possa integrar os resultados na sua deteção, investigação e investigação.

  • Modelos de algoritmo de ML para personalizar para se ajustar a problemas de segurança específicos na sua organização.

  • blocos de notas de exemplo para preparar o modelo e agendar a classificação do modelo.

Além de tudo isto, pode trazer os seus próprios modelos de ML e/ou o seu próprio ambiente do Spark para integrar com o Microsoft Sentinel.

Com a plataforma BYO-ML, pode começar a criar os seus próprios modelos de ML:

  • O bloco de notas com dados de exemplo ajuda-o a obter experiência prática ponto a ponto, sem se preocupar em processar dados de produção.

  • O pacote integrado no ambiente do Spark reduz os desafios e os atritos na gestão da infraestrutura.

  • As bibliotecas suportam movimentos de dados. Os blocos de notas de formação e classificação demonstram a experiência ponto a ponto e servem como um modelo para se adaptar ao seu ambiente.

Casos de utilização

A plataforma e o pacote BYO-ML reduzem significativamente o tempo e o esforço necessários para criar as suas próprias deteções de ML e libertam a capacidade de resolver problemas de segurança específicos no Microsoft Sentinel. A plataforma suporta os seguintes casos de utilização:

Preparar um algoritmo ML para obter um modelo personalizado: Pode utilizar um algoritmo de ML existente (partilhado pela Microsoft ou pela comunidade de utilizadores) e treiná-lo facilmente nos seus próprios dados para obter um modelo de ML personalizado que melhor se ajuste aos seus dados e ambiente.

Modificar um modelo de algoritmo de ML para obter um modelo personalizado: Pode modificar um modelo de algoritmo de ML (partilhado pela Microsoft ou pela comunidade de utilizadores) e preparar o algoritmo modificado nos seus próprios dados, para derivar um modelo personalizado que se ajuste ao seu problema específico.

Crie o seu próprio modelo: Crie o seu próprio modelo de raiz com a plataforma e os utilitários BYO-ML do Microsoft Sentinel.

Integrar o ambiente do Databricks/Spark: Integre o seu ambiente do Databricks/Spark existente no Microsoft Sentinel e utilize bibliotecas e modelos BYO-ML para criar modelos de ML para as suas situações únicas.

Importe o seu próprio modelo de ML: Pode importar os seus próprios modelos de ML e utilizar a plataforma e os utilitários BYO-ML para integrá-los no Microsoft Sentinel.

Partilhar um algoritmo ML: Partilhe um algoritmo ML para que a comunidade adote e se adapte.

Utilize o ML para capacitar o SecOps: utilize o seu próprio modelo de ML personalizado e resultados para investigação, deteções, investigação e resposta.

Este artigo mostra-lhe os componentes da plataforma BYO-ML e como tirar partido da plataforma e do algoritmo de Acesso a Recursos Anómalos para fornecer uma deteção de ML personalizada com o Microsoft Sentinel.

Ambiente do Azure Databricks/Spark

O Apache Spark deu um passo em frente na simplificação dos macrodados ao fornecer uma arquitetura unificada para a criação de pipelines de dados. O Azure Databricks vai mais longe ao fornecer uma plataforma de cloud de gestão zero criada em torno do Spark. Recomendamos que utilize o Databricks para a sua plataforma BYO-ML, para que se possa concentrar em encontrar respostas que afetam imediatamente a sua empresa, em vez de abordar os pipelines de dados e os problemas da plataforma.

Se já tiver o Databricks ou qualquer outro ambiente do Spark e preferir utilizar a configuração existente, o pacote BYO-ML também funcionará bem nos mesmos.

Pacote BYO-ML

O pacote BYO ML inclui as melhores práticas e a investigação da Microsoft no front-end do ML para segurança. Neste pacote, fornecemos a seguinte lista de utilitários, blocos de notas e modelos de algoritmo para problemas de segurança.

Nome de ficheiro Descrição
azure_sentinel_utilities.whl Contém utilitários para ler blobs do Azure e escrever no Log Analytics.
AnomalousRASampleData O Bloco de Notas demonstra a utilização do modelo de Acesso a Recursos Anómalos no Microsoft Sentinel com dados de exemplo de preparação e teste gerados.
AnomalousRATraining.ipynb Bloco de notas para preparar o algoritmo, compilar e guardar os modelos.
AnomalousRAScoring.ipynb Bloco de notas para agendar a execução do modelo, visualizar o resultado e escrever a classificação no Microsoft Sentinel.

O primeiro modelo de algoritmo ML que oferecemos destina-se à deteção de Acesso a Recursos Anómalos. Baseia-se num algoritmo de filtragem colaborativo e é preparado com registos de acesso de partilha de ficheiros do Windows (Eventos de Segurança com o ID de Evento 5140). As principais informações necessárias para este modelo no registo são o emparelhamento de utilizadores e recursos acedidos.

Instruções de Exemplo: Deteção de Acesso anómalo à Partilha de Ficheiros

Agora que já conhece os componentes principais da plataforma BYO-ML, eis um exemplo para lhe mostrar como utilizar a plataforma e os componentes para fornecer uma deteção de ML personalizada.

Configurar o Ambiente do Databricks/Spark

Terá de configurar o seu próprio ambiente do Databricks se ainda não tiver um. Veja o documento de início rápido do Databricks para obter instruções.

Instruções de exportação automática

Para criar modelos de ML personalizados com base nos seus próprios dados no Microsoft Sentinel, terá de exportar os seus dados do Log Analytics para um armazenamento de Blobs ou um recurso do Hub de Eventos, para que o modelo de ML possa aceder aos mesmos a partir do Databricks. Saiba como ingerir dados no Microsoft Sentinel.

Para este exemplo, precisa de ter os seus dados de preparação para o registo do Acesso à Partilha de Ficheiros no armazenamento de blobs do Azure. O formato dos dados está documentado no bloco de notas e nas bibliotecas.

Pode exportar automaticamente os seus dados do Log Analytics com a CLI do Azure.

Tem de lhe ser atribuída a função Contribuidor na área de trabalho do Log Analytics, na conta de Armazenamento e no recurso do EventHub para executar os comandos.

Eis um conjunto de comandos de exemplo para configurar a exportação 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"

Exportar dados personalizados

Para dados personalizados que não são suportados pela exportação automática do Log Analytics, pode utilizar a Aplicação Lógica ou outras soluções para mover os seus dados. Pode consultar o blogue e script Exportar Dados do Log Analytics para o Blob Store .

Correlacionar com dados fora do Microsoft Sentinel

Também pode trazer dados de fora do Microsoft Sentinel para o armazenamento de blobs ou o Hub de Eventos e correlacioná-los com os dados do Microsoft Sentinel para criar os seus modelos de ML.

Copie o pacote BYO-ML do repositório do GitHub do Microsoft Sentinel mencionado anteriormente para o seu ambiente do Databricks. Em seguida, abra os blocos de notas e siga as instruções no bloco de notas para instalar as bibliotecas necessárias nos clusters.

Preparação e classificação de modelos

Siga as instruções nos dois blocos de notas para alterar as configurações de acordo com o seu próprio ambiente e recursos, siga os passos para preparar e criar o modelo e, em seguida, agende o modelo para classificar os registos de acesso de partilha de ficheiros recebidos.

Escrever resultados no Log Analytics

Assim que tiver a classificação agendada, pode utilizar o módulo no bloco de notas de classificação para escrever os resultados da classificação na área de trabalho do Log Analytics associada à sua instância do Microsoft Sentinel.

Verificar os resultados no Microsoft Sentinel

Para ver os resultados classificados juntamente com os detalhes de registo relacionados, regresse ao portal do Microsoft Sentinel. Em Registos Personalizados> , verá os resultados na tabela AnomalousResourceAccessResult_CL (ou no seu próprio nome de tabela personalizado). Pode utilizar esses resultados para melhorar as suas experiências de investigação e investigação.

registos de acesso a recursos anómalos

Criar uma regra de análise personalizada com resultados de ML

Depois de confirmar que os resultados do ML estão na tabela de registos personalizados e estiver satisfeito com a fidelidade das classificações, pode criar uma deteção com base nos resultados. Aceda a Análise a partir do portal do Microsoft Sentinel e crie uma nova regra de deteção. Segue-se um exemplo que mostra a consulta utilizada para criar a deteção.

criar uma regra de análise personalizada para deteções B Y O M L

Ver e responder a incidentes

Depois de configurar a regra de análise com base nos resultados do ML, se existirem resultados acima do limiar que definiu na consulta, será gerado um incidente e apresentado na página Incidentes no Microsoft Sentinel.

Passos seguintes

Neste documento, aprendeu a utilizar a plataforma BYO-ML do Microsoft Sentinel para criar ou importar os seus próprios algoritmos de machine learning para analisar dados e detetar ameaças.