Compartilhar via


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

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 de Disabled 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": []
  }
}