Recopilación de eventos de microagente

Los agentes de seguridad de Defender para IoT recopilan datos y eventos del sistema del dispositivo local y los envían a la nube de Azure para su procesamiento.

Si ha configurado y conectado un área de trabajo de Log Analytics, verá estos eventos en Log Analytics. Para más información, consulte Tutorial: Investigación de alertas de seguridad.

El microagente de Defender para IoT recopila muchos tipos de eventos de dispositivo, incluidos los nuevos procesos y todos los nuevos eventos de conexión. Tanto el nuevo proceso como los nuevos eventos de conexión pueden producirse con frecuencia en un dispositivo. Esta capacidad es importante para proporcionar una seguridad completa; sin embargo, el número de mensajes que envían los agentes de seguridad puede alcanzar rápidamente, o incluso superar, los límites de cuota y costo de IoT Hub. Estos mensajes y eventos contienen información de seguridad muy valiosa que es crucial para proteger el dispositivo.

Para reducir el número de mensajes y los costos al mismo tiempo que se mantiene la seguridad del dispositivo, los agentes de Defender para IoT agregan los siguientes tipos de eventos:

  • Eventos de proceso (solo Linux)

  • Eventos de actividad de red

  • Eventos del sistema de archivos

  • Eventos de estadísticas

Para obtener más información, consulte agregación de eventos para recopiladores de procesos y redes.

Los recopiladores basados en eventos son recopiladores que se desencadenan en función de la actividad correspondiente en el dispositivo. Por ejemplo, a process was started in the device.

Los recopiladores basados en desencadenados son recopiladores que se desencadenan de forma programada en función de las configuraciones del cliente.

Procesar eventos (recopilador basado en eventos)

Los eventos de proceso se admiten en los sistemas operativos Linux.

Los eventos de proceso se consideran idénticos cuando la línea de comandos y el identificador de usuario son idénticos.

El búfer predeterminado para los eventos de proceso es de 256 procesos. Cuando se alcanza este límite, el búfer vuelve a comenzar el ciclo y el evento más antiguo se descarta para dar paso al evento procesado más reciente. Se registrará una advertencia para aumentar el tamaño de la caché.

Los datos recopilados para cada evento:

Parámetro Descripción
Timestamp La primera vez que se observó el proceso.
process_id El PID de Linux.
parent_process_id El PID principal de Linux, si existe.
Commandline Línea de comandos.
Tipo Puede ser fork o exec.
hit_count El recuento agregado. El número de ejecuciones del mismo proceso, durante el mismo período de tiempo, hasta que los eventos se envían a la nube.

Eventos de actividad de red (recopilador basado en eventos)

Los eventos de actividad de red se consideran idénticos cuando el puerto local, el puerto remoto, el protocolo de transporte, la dirección local y la dirección remota son idénticos.

El búfer predeterminado para los eventos de actividad de red es 256. En situaciones en las que la caché está llena:

  • Dispositivos de Eclipse ThreadX: no se almacenará en la caché ningún evento de red nuevo hasta el siguiente ciclo de recopilación.

  • Dispositivos Linux: el evento más antiguo se reemplazará por cada nuevo evento. Se registrará una advertencia para aumentar el tamaño de la caché.

En dispositivos Linux, solo se admite IPv4.

Los datos recopilados para cada evento:

Parámetro Descripción
Dirección local La dirección de origen de la conexión.
Dirección remota La dirección de destino de la conexión.
Puerto local El puerto de origen de la conexión.
Puerto remoto El puerto de destino de la conexión.
Bytes de entrada Los bytes de recepción totales agregados de la conexión.
Bytes de salida El bytes de transmisión totales agregados de la conexión.
Protocolo de transporte Puede ser TCP, UDP, or ICMP.
Protocolo de aplicación El protocolo de aplicación asociado a la conexión.
Propiedades extendidas Detalles adicionales de la conexión. Por ejemplo, host name.
Número de llamadas Recuento de paquetes observados

Recopilador de inicio de sesión (recopilador basado en eventos)

El recopilador de registros recopila los inicios de sesión de los usuarios, los cierres de sesión de los usuarios y los intentos de inicio de sesión con errores.

El recopilador de inicios de sesión admite los siguientes tipos de métodos de recopilación:

  • UTMP y SYSLOG. UTMP detecta eventos interactivos SSH, eventos telnet e inicios de sesión de terminal, así como todos los eventos de inicio de sesión con errores de SSH, telnet y terminal. Si SYSLOG se habilita en el dispositivo, el recopilador de inicios de sesión recopila eventos de inicio de sesión SSH a través del archivo SYSLOG denominado auth.log.

  • Módulos de autenticación conectables (PAM). Recopila eventos SSH, telnet y de inicio de sesión local. Para obtener más información, consulte Configuración de módulos de autenticación conectables (PAM) para auditar eventos de inicio de sesión.

Se pueden recopilar los siguientes datos:

Parámetro Descripción
operation Uno de los siguientes: Login, Logout, LoginFailed
process_id El PID de Linux.
user_name El usuario de Linux.
executable El dispositivo terminal. Por ejemplo, tty1..6 o pts/n.
remote_address Origen de la conexión, ya sea una dirección IP remota en formato IPv6 o IPv4, o 127.0.0.1/0.0.0.0 para indicar la conexión local.

Información del sistema (recopilador basado en desencadenador)

Los datos recopilados para cada evento:

Parámetro Descripción
hardware_vendor Nombre del proveedor del dispositivo.
hardware_model El número de modelo del dispositivo.
os_dist Distribución del sistema operativo. Por ejemplo, Linux.
os_version La versión del sistema operativo. Por ejemplo, Windows 10 o Ubuntu 20.04.1.
os_platform Sistema operativo del dispositivo.
os_arch La arquitectura del sistema operativo. Por ejemplo, x86_64.
agent_type Tipo del agente (Edge/Independiente).
agent_version Versión del agente.
nics El controlador de interfaz de red. A continuación se incluye la lista completa de propiedades.

Las propiedades nics están formadas por los siguientes elementos:

Parámetro Descripción
type Uno de los siguientes valores: UNKNOWN, ETH, WIFI, MOBILE, o SATELLITE.
vlans La red LAN virtual asociada a la interfaz de red.
vendor El proveedor de la controladora de red.
info Direcciones IP y MAC asociadas a la controladora de red. Esto incluye los campos siguientes:
- ipv4_address: la dirección IPv4.
- ipv6_address: la dirección IPv6.
- mac: la dirección MAC.

Línea base (recopilador basado en desencadenadores)

El recopilador de línea de base realiza comprobaciones periódicas de CIS y los resultados de comprobación suspende, aprueba y pasa se envían al servicio en la nube de Defender para IoT. Defender para IoT agrega los resultados y proporciona recomendaciones basadas en los errores.

Los datos recopilados para cada evento:

Parámetro Descripción
Check ID En formato CIS. Por ejemplo, CIS-debian-9-Filesystem-1.1.2.
Check result Puede ser Fail, Pass, Skip o Error. Por ejemplo, Error en una situación en la que no se puede ejecutar la comprobación.
Error La información y la descripción del error.
Descripción La descripción de la comprobación de CIS.
Corrección La corrección recomendada de CIS.
Gravedad Nivel de gravedad.

SBoM (recopilador basado en desencadenadores)

El recopilador de SBoM (lista de materiales de software) recopila periódicamente los paquetes instalados en el dispositivo.

Los datos recopilados en cada paquete incluyen:

Parámetro Descripción
Nombre Nombre del paquete.
Versión Versión del paquete.
Proveedor El proveedor del paquete, que es el campo Mantenedor en paquetes deb.

Eventos periféricos (recopilador basado en eventos)

El recopilador de eventos periféricos recopila conexiones y desconexiones de eventos USB y Ethernet.

Los campos recopilados dependen del tipo de evento:

Eventos USB

Parámetro Descripción
Timestamp Hora en que se produjo el evento.
ActionType Si el evento era un evento de conexión o desconexión.
bus_number Identificador de controlador específico, cada dispositivo USB puede tener varios.
kernel_device_number Representación en el kernel del dispositivo, no es única y es posible cada vez que el dispositivo está conectado.
device_class Identificador que especifica la clase de dispositivo.
device_subclass Identificador que especifica el tipo de dispositivo.
device_protocol Identificador que especifica el protocolo de dispositivo.
interface_class En caso de que la clase de dispositivo sea 0, indique el tipo de dispositivo.
interface_subclass En caso de que la clase de dispositivo sea 0, indique el tipo de dispositivo.
interface_protocol En caso de que la clase de dispositivo sea 0, indique el tipo de dispositivo.

Eventos Ethernet

Parámetro Descripción
Timestamp Hora en que se produjo el evento.
ActionType Si el evento era un evento de conexión o desconexión.
bus_number Identificador de controlador específico, cada dispositivo USB puede tener varios.
Nombre de la interfaz Nombre de la interfaz.

Eventos del sistema de archivos (recopilador basado en eventos)

El recopilador de eventos del sistema de archivos recopila eventos siempre que haya cambios en los directorios de inspección para: creación, eliminación, movimiento y modificación de directorios y archivos. Para definir qué directorios y archivos desea supervisar, consulte Configuración específica del recopilador de información del sistema.

Se pueden recopilar los siguientes datos:

Parámetro Descripción
Timestamp Hora en que se produjo el evento.
Mask Máscara de Linux inotify relacionada con el evento del sistema de archivos, la máscara identifica el tipo de la acción y puede ser una de las siguientes: Access/Modified/Metadata changed/Closed/Opened/Moved/Created/Deleted.
Path Ruta de acceso a directorios/archivos en la que se generó el evento.
Número de llamadas Número de veces que se agregó este evento.

Datos de estadísticas (recopilador basado en desencadenadores)

El recopilador de estadísticas genera varias estadísticas sobre los distintos recopiladores de microagentes. Estas estadísticas proporcionan información sobre el rendimiento de los recopiladores en el ciclo de recopilación anterior. Algunos ejemplos de estadísticas posibles incluyen el número de eventos que se enviaron correctamente y el número de eventos que se quitaron, junto con los motivos de los errores.

Campos recopilados:

Parámetro Descripción
Timestamp Hora en que se produjo el evento.
Nombre Nombre del recopilador.
Eventos Matriz de pares con formato JSON con descripción y número de llamadas.
Descripción Si el mensaje se envió o eliminó y el motivo de la eliminación.
Número de llamadas Número de mensajes correspondientes.

Agregación de eventos para recopiladores de procesos y redes

Cómo funciona la agregación de eventos para los Eventos de procesos y los eventos de actividad de red:

Los agentes de Defender para IoT agregan eventos durante el intervalo de envío definido en la configuración de frecuencia de mensaje para cada recopilador, como Process_MessageFrequency o NetworkActivity_MessageFrequency. Una vez transcurrido el período de intervalo, el agente envía los eventos agregados a la nube de Azure para su posterior análisis. Los eventos agregados se almacenan en memoria hasta que se envían a la nube de Azure.

Cuando el agente recopila eventos similares a otros que ya están guardados en la memoria, el agente aumenta el número de llamadas de este evento específico para reducir la superficie de memoria del agente. Cuando ha transcurrido el periodo de agregación, el agente envía el número de llamadas de cada tipo de evento que se ha producido. La agregación de eventos es la agregación de los recuentos de aciertos de eventos similares. Por ejemplo, la actividad de red con el mismo host remoto y en el mismo puerto se agrega como un evento, en lugar de como un evento independiente para cada paquete.

Nota

De forma predeterminada, el microagente envía registros y telemetría a la nube con fines de solución de problemas y supervisión. Este comportamiento se puede configurar o desactivar a través del gemelo.

Pasos siguientes

Para más información, consulte: