Share via


Introducción al servicio Microsoft Defender for Endpoint Runtime Protection

El servicio de protección en tiempo de ejecución de Microsoft Defender para punto de conexión (MDE) proporciona las herramientas para configurar y administrar la protección en tiempo de ejecución para un clúster Nexus.

La CLI de Azure permite configurar el nivel de cumplimiento de la protección en tiempo de ejecución y la capacidad de desencadenar el examen de MDE en todos los nodos. En este documento se proporcionan los pasos para ejecutar esas tareas.

Nota:

El servicio de protección en tiempo de ejecución de MDE se integra con Microsoft Defender para punto de conexión, que proporciona funcionalidades completas de detección y respuesta de puntos de conexión (EDR). Con la integración de Microsoft Defender para punto de conexión, puede detectar anomalías y detectar vulnerabilidades.

Antes de empezar

  • Instale la versión más reciente de las extensiones de la CLI adecuadas.

Valor de variables

Para ayudar a configurar y desencadenar exámenes de MDE, defina estas variables de entorno usadas por los distintos comandos de esta guía.

Nota:

Estos valores de variable de entorno no reflejan una implementación real y los usuarios DEBEN cambiarlos para que coincidan con sus entornos.

# 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"

Valores predeterminados para la protección en tiempo de ejecución de MDE

La protección en tiempo de ejecución establece en los siguientes valores predeterminados al implementar un clúster.

  • Nivel de cumplimiento: Disabled si no se especifica al crear el clúster
  • Servicio MDE: Disabled

Nota:

El argumento --runtime-protection enforcement-level="<enforcement level>" sirve para dos propósitos: habilitar o deshabilitar el servicio MDE y actualizar el nivel de cumplimiento.

Si desea deshabilitar el servicio MDE en el clúster, use un <enforcement level> de Disabled.

Configuración del nivel de cumplimiento

El comando az networkcloud cluster update permite actualizar la configuración de protección en tiempo de ejecución del clúster nivel de cumplimiento mediante el argumento --runtime-protection enforcement-level="<enforcement level>".

El comando siguiente configura para el enforcement level clúster.

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, Passive.

  • Disabled: la protección en tiempo real está desactivada y no se realiza ningún examen.
  • RealTime: la protección en tiempo real (examinar archivos a medida que se modifican) está habilitada.
  • OnDemand: los archivos solo se examinan a petición. En esto:
    • La protección en tiempo real está desactivada.
  • Passive: ejecuta el motor antivirus en modo pasivo. En esto:
    • La protección en tiempo real está desactivada: el Antivirus de Microsoft Defender no corrige las amenazas.
    • El examen a petición está activado: sigue usando las funcionalidades de examen en el punto de conexión.
    • La corrección automática de amenazas está desactivada: no se moverá ningún archivo y se espera que el administrador de seguridad realice las acciones necesarias.
    • Las actualizaciones de inteligencia de seguridad están activadas: las alertas estarán disponibles en el inquilino de administradores de seguridad.

Puede confirmar que el nivel de cumplimiento se actualizó inspeccionando la salida del siguiente fragmento de código JSON:

  "runtimeProtectionConfiguration": {
    "enforcementLevel": "<enforcement level>"
  }

Desencadenamiento del examen de MDE en todos los nodos

Para desencadenar un examen de MDE en todos los nodos de un clúster, use el siguiente comando:

az networkcloud cluster scan-runtime \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${RESOURCE_GROUP} \
--cluster-name ${CLUSTER_NAME} \
--scan-activity Scan

NOTA: la acción de examen de MDE requiere que el servicio MDE esté habilitado. En caso de que no esté habilitado, se producirá un error en el comando. En este caso, establezca en Enforcement Level un valor diferente de Disabled para habilitar el servicio MDE.

Recuperación de información de examen de MDE de cada nodo

En esta sección se proporcionan los pasos para recuperar la información del examen de MDE. En primer lugar, debe recuperar la lista de nombres de nodo del clúster. El siguiente comando asigna la lista de nombres de nodo a una variable de entorno.

nodes=$(az networkcloud baremetalmachine list \
--subscription ${SUBSCRIPTION_ID} \
--resource-group ${MANAGED_RESOURCE_GROUP} \
| jq -r '.[].machineName')

Con la lista de nombres de nodo, podemos iniciar el proceso para extraer información del agente de MDE para cada nodo del clúster. El comando siguiente preparará la información del agente de MDE desde cada nodo.

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

El resultado del comando incluirá una dirección URL donde puede descargar el informe detallado de exámenes de MDE. Consulte el ejemplo siguiente para obtener el resultado de la información del agente de 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>
 ...

Extracción de resultados del examen de MDE

La extracción del examen de MDE requiere algunos pasos manuales: para descargar el informe de examen de MDE y extraer la información de ejecución del examen y examinar el informe de resultados detallado. Esta sección le guiará en cada uno de estos pasos.

Descargar el informe de examen

Como se indicó anteriormente, la respuesta de información del agente de MDE proporciona la dirección URL que almacena los datos detallados del informe.

Descargue el informe de la dirección URL devuelta <url to download mde scan results>y abra el archivo mde-agent-information.json.

El archivo mde-agent-information.json contiene mucha información sobre el examen y puede ser abrumador para analizar este informe detallado largo. En esta guía se proporcionan algunos ejemplos de extracción de información esencial que puede ayudarle a decidir si necesita analizar exhaustivamente el informe.

Extracción de la lista de exámenes de MDE

El archivo mde-agent-information.json contiene un informe de examen detallado, pero es posible que desee centrarse primero en algunos detalles. En esta sección se detallan los pasos para extraer la lista de exámenes que se ejecutan proporcionando la información, como la hora de inicio y finalización de cada examen, amenazas encontradas, estado (correcto o erróneo), etc.

El siguiente comando extrae este informe simplificado.

cat <path to>/mde-agent-information.json| jq .scanList

En el ejemplo siguiente se muestra el informe de examen 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"
  }
]

Puede usar el comando unix date para convertir la hora en un formato más legible. Para mayor comodidad, consulte un ejemplo para convertir la marca de tiempo de Unix (en milisegundos) a año-mes-día y hora:min:ss.

Por ejemplo:

date -d @$(echo "1697204573732/1000" | bc) "+%Y-%m-%dT%H:%M:%S"

2023-10-13T13:42:53

Extracción de los resultados del examen de MDE

En esta sección se detallan los pasos para extraer el informe sobre la lista de amenazas identificadas durante los exámenes de MDE. Para extraer el informe de resultados del examen del archivo mde-agent-information.json, ejecute el siguiente comando.

cat <path to>/mde-agent-information.json| jq .threatInformation

En el ejemplo siguiente se muestra el informe de amenazas identificadas por el examen extraído del mde-agent-information.json archivo.

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