Introdução ao serviço de proteção de runtime do Microsoft Defender para Ponto de Extremidade
O serviço de proteção de runtime do MDE (Microsoft Defender para Ponto de Extremidade) fornece as ferramentas para configurar e gerenciar a proteção de runtime para um cluster do Nexus.
A CLI do Azure permite que você configure o Nível de Imposição da proteção de runtime e a capacidade de disparar a Verificação do MDE em todos os nós. Este documento apresenta as etapas para realizar essas tarefas.
Observação
O serviço de proteção de runtime do MDE se integra ao Microsoft Defender para Ponto de Extremidade, que oferece funcionalidades abrangentes de EDR (detecção e resposta de ponto de extremidade). Com a integração do Microsoft Defender para Ponto de Extremidade, você pode detectar anormalidades e vulnerabilidades.
Antes de começar
- Instale a última versão das extensões apropriadas da CLI.
Definir variáveis
Para ajudar a configurar e disparar as verificações do MDE, defina estas variáveis de ambiente usadas pelos vários comandos neste guia.
Observação
Esses valores de variável de ambiente não refletem uma implantação real e os usuários DEVEM alterá-los para que eles correspondam aos respectivos ambientes.
# SUBSCRIPTION_ID: Subscription of your cluster
export SUBSCRIPTION_ID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
# RESOURCE_GROUP: Resource group of your cluster
export RESOURCE_GROUP="contoso-cluster-rg"
# MANAGED_RESOURCE_GROUP: Managed resource group managed by your cluster
export MANAGED_RESOURCE_GROUP="contoso-cluster-managed-rg"
# CLUSTER_NAME: Name of your cluster
export CLUSTER_NAME="contoso-cluster"
Padrões da proteção de runtime do MDE
A proteção de runtime define os valores padrão a seguir quando você implanta um cluster
- Nível de Imposição:
Disabled
, se não for especificado ao criar o cluster - Serviço do MDE:
Disabled
Observação
O argumento --runtime-protection enforcement-level="<enforcement level>"
serve a duas finalidades: habilitar/desabilitar o serviço do MDE e atualizar o nível de imposição.
Caso você deseje desabilitar o serviço do MDE em seu cluster, use um <enforcement level>
igual a Disabled
.
Configurar o nível de imposição
O comando az networkcloud cluster update
permite que você atualize as configurações para o nível de imposição de proteção de runtime do cluster usando o argumento --runtime-protection enforcement-level="<enforcement level>"
.
O comando a seguir configura o enforcement level
para o cluster.
az networkcloud cluster update \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${RESOURCE_GROUP} \
--cluster-name ${CLUSTER_NAME} \
--runtime-protection enforcement-level="<enforcement level>"
Valores permitidos para <enforcement level>
: Disabled
, RealTime
, OnDemand
e Passive
.
Disabled
: a proteção em tempo real está desativada e nenhuma verificação é feita.RealTime
: a proteção em tempo real (verifica os arquivos conforme eles são modificados) está habilitada.OnDemand
: os arquivos são verificados apenas sob demanda. Nesta configuração:- A proteção em tempo real está desativada.
Passive
: executa o mecanismo antivírus no modo passivo. Nesta configuração:- A proteção em tempo real está desativada: as ameaças não são corrigidas pelo Microsoft Defender Antivírus.
- A verificação sob demanda está ativada: ainda usa as funcionalidades de verificação no ponto de extremidade.
- A correção automática de ameaças está desativada: nenhum arquivo será movido e espera-se que o administrador de segurança tome as medidas necessárias.
- As atualizações de inteligência de segurança estão ativadas: os alertas estarão disponíveis no locatário dos administradores de segurança.
Confirme se o nível de imposição foi atualizado inspecionando a saída em busca do seguinte snippet JSON:
"runtimeProtectionConfiguration": {
"enforcementLevel": "<enforcement level>"
}
Disparar a verificação do MDE em todos os nós
Para disparar uma verificação do MDE em todos os nós de um cluster, use o seguinte comando:
az networkcloud cluster scan-runtime \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${RESOURCE_GROUP} \
--cluster-name ${CLUSTER_NAME} \
--scan-activity Scan
OBSERVAÇÃO: a ação de verificação do MDE exige que o serviço do MDE seja habilitado. Caso ele não esteja habilitado, ocorrerá uma falha no comando. Nesse caso, defina
Enforcement Level
com um valor diferente deDisabled
para habilitar o serviço do MDE.
Recuperar as informações de verificação do MDE de cada nó
Esta seção apresenta as etapas para recuperar as informações de verificação do MDE. Primeiro, você precisa recuperar a lista de nomes de nós do cluster. O comando a seguir atribui a lista de nomes de nós a uma variável de ambiente.
nodes=$(az networkcloud baremetalmachine list \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${MANAGED_RESOURCE_GROUP} \
| jq -r '.[].machineName')
Com a lista de nomes de nós, podemos iniciar o processo para extrair informações do agente do MDE para cada nó do cluster. O comando a seguir vai preparar as informações do agente do MDE de cada nó.
for node in $nodes
do
echo "Extracting MDE agent information for node ${node}"
az networkcloud baremetalmachine run-data-extract \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${MANAGED_RESOURCE_GROUP} \
--name ${node} \
--commands '[{"command":"mde-agent-information"}]' \
--limit-time-seconds 600
done
O resultado do comando incluirá uma URL na qual você poderá baixar o relatório detalhado de verificações do MDE. Confira o exemplo a seguir para ver o resultado das informações do agente do MDE.
Extracting MDE agent information for node rack1control01
====Action Command Output====
Executing mde-agent-information command
MDE agent is running, proceeding with data extract
Getting MDE agent information for rack1control01
Writing to /hostfs/tmp/runcommand
================================
Script execution result can be found in storage account:
<url to download mde scan results>
...
Extrair os resultados da verificação do MDE
A extração da verificação do MDE exige algumas etapas manuais: baixar o relatório de verificação do MDE e extrair as informações de execução da verificação e analisar o relatório detalhado de resultados. Esta seção orientará você em cada uma dessas etapas.
Baixar o relatório de verificação
Conforme indicado anteriormente, a resposta de informações do agente do MDE fornece a URL que armazena os dados detalhados do relatório.
Baixe o relatório da URL <url to download mde scan results>
retornada e abra o arquivo mde-agent-information.json
.
O arquivo mde-agent-information.json
contém muitas informações sobre a verificação e pode ser complexo analisar um relatório detalhado tão longo.
Este guia traz alguns exemplos de extração de algumas informações essenciais que podem ajudar você a decidir se precisa analisar o relatório detalhadamente.
Extrair a lista de verificações do MDE
O arquivo mde-agent-information.json
contém um relatório de verificação detalhado, mas o ideal é se concentrar primeiro em alguns detalhes.
Esta seção mostra em detalhes as etapas usadas para extrair a lista de execuções de verificações, fornecendo informações como hora de início e término de cada verificação, ameaças encontradas, estado (bem-sucedido ou com falha) etc.
O comando a seguir extrai esse relatório simplificado.
cat <path to>/mde-agent-information.json| jq .scanList
O exemplo a seguir mostra o relatório de verificação extraído de mde-agent-information.json
.
[
{
"endTime": "1697204632487",
"filesScanned": "1750",
"startTime": "1697204573732",
"state": "succeeded",
"threats": [],
"type": "quick"
},
{
"endTime": "1697217162904",
"filesScanned": "1750",
"startTime": "1697217113457",
"state": "succeeded",
"threats": [],
"type": "quick"
}
]
Use o comando date
do UNIX para converter a hora em um formato mais legível.
Para sua conveniência, confira um exemplo para converter o carimbo de data/hora UNIX (em milissegundos) em ano-mês-dia e hora:min:s.
Por exemplo:
date -d @$(echo "1697204573732/1000" | bc) "+%Y-%m-%dT%H:%M:%S"
2023-10-13T13:42:53
Extrair os resultados da verificação do MDE
Esta seção mostra em detalhes as etapas usadas para extrair o relatório sobre a lista de ameaças identificadas durante as verificações do MDE.
Para extrair o relatório de resultados da verificação do arquivo mde-agent-information.json
, execute o comando a seguir.
cat <path to>/mde-agent-information.json| jq .threatInformation
O exemplo a seguir mostra o relatório de ameaças identificadas pela verificação extraída do arquivo mde-agent-information.json
.
{
"list": {
"threats": {
"scans": [
{
"type": "quick",
"start_time": 1697204573732,
"end_time": 1697204632487,
"files_scanned": 1750,
"threats": [],
"state": "succeeded"
},
{
"type": "quick",
"start_time": 1697217113457,
"end_time": 1697217162904,
"files_scanned": 1750,
"threats": [],
"state": "succeeded"
}
]
}
},
"quarantineList": {
"type": "quarantined",
"threats": []
}
}