Descripción general de la categoría Amenazas de Linux

Disponible en:

En este documento se ofrece una descripción general de los conjuntos de reglas de la categoría Amenazas de Linux, las fuentes de datos necesarias y la configuración que puede usar para ajustar las alertas generadas por estos conjuntos de reglas.

Los conjuntos de reglas de la categoría Amenazas de Linux ayudan a identificar amenazas en entornos Linux mediante CrowdStrike Falcon, el sistema de auditoría de Linux (AuditD) y los registros del sistema Unix. Esta categoría incluye los siguientes conjuntos de reglas:

  • Herramientas de apropiación de privilegios del SO: detecta comportamientos habituales en herramientas de apropiación de privilegios de Linux de código abierto.
  • Mecanismos de persistencia: actividad usada por los adversarios para establecer y mantener el acceso persistente en hosts Linux.
  • Modificaciones de privilegios: actividad asociada a intentos de autenticación y acciones privilegiados, que se suele usar para aumentar los privilegios o mantenerlos en hosts Linux.
  • Señales de malware: actividad binaria sospechosa de LOTL: detecta escenarios de uso sospechoso de herramientas integradas (aprovechamiento de lo que ya está plantado) en función de la actividad observada de malware de Linux en entornos reales.
  • Señales de malware: actividad de descarga sospechosa: detecta comportamientos relacionados con la actividad de descarga maliciosa en Linux en entornos reales.
  • Señales de malware: ejecución sospechosa: detecta señales generadas a partir de comportamientos observados de malware de Linux detectado en entornos reales, centrándose en los comportamientos de ejecución (TA0002).
  • Amenazas de primera línea de Mandiant: este conjunto de reglas contiene reglas derivadas de la investigación y la respuesta de Mandiant a incidentes activos en todo el mundo. Estas reglas abarcan TTPs habituales, como la ejecución mediante intérpretes de scripts (T1059), el uso de servicios web para el control y los comandos (T1102) y el uso de tareas programadas para mantener la persistencia (T1053).
  • Amenazas emergentes de Mandiant Intel: este conjunto de reglas contiene reglas derivadas de las campañas y los eventos significativos de Mandiant Intelligence, que abarcan actividades geopolíticas y de amenazas de gran impacto, según la evaluación de Mandiant. Esta actividad puede incluir conflictos geopolíticos, explotación, phishing, malvertising, ransomware y vulneraciones de la cadena de suministro.

Dispositivos y tipos de registros admitidos

Los conjuntos de reglas de la categoría Amenazas de Linux se han probado y son compatibles con las siguientes fuentes de datos admitidas por Google Security Operations:

  • Sistema de auditoría de Linux (AUDITD)
  • Sistema Unix (NIX_SYSTEM)
  • CrowdStrike Falcon (CS_EDR)

Para ver una lista de todas las fuentes de datos admitidas por Google SecOps, consulta Analizadores predeterminados admitidos.

Configurar dispositivos para generar datos de registro correctos

Para que las reglas de la categoría Amenazas de Linux funcionen correctamente, los dispositivos deben generar datos de registro en el formato esperado. Configura las siguientes reglas de auditoría persistentes para el daemon de auditoría de Linux en cada dispositivo en el que vayas a recoger registros y enviarlos a Google SecOps.

Para obtener información sobre cómo implementar reglas de auditoría persistentes para el daemon de auditoría de Linux, consulta la documentación específica del sistema operativo.

# Inserts the machine hostname into each log event
name_format = hostname

# Process creation (32 and 64-bit)

-a exit,always -F arch=b32 -S execve
-a exit,always -F arch=b64 -S execve

# Persistence: Cron

-w /etc/cron.allow -p wa -k cron
-w /etc/cron.d/ -p wa -k cron
-w /etc/cron.daily/ -p wa -k cron
-w /etc/cron.deny -p wa -k cron
-w /etc/cron.hourly/ -p wa -k cron
-w /etc/cron.monthly/ -p wa -k cron
-w /etc/cron.weekly/ -p wa -k cron
-w /etc/crontab -p wa -k cron
-w /var/spool/cron/ -p wa -k cron

# Persistence: System Startup

-w /etc/init/ -p wa -k init
-w /etc/init.d/ -p wa -k init
-w /etc/inittab -p wa -k init

# Persistence: Systemd Units and Generators

-w /etc/systemd/user -p wa -k systemd
-w /usr/lib/systemd/user -p wa -k systemd
-w /var/lib/systemd/linger -p wa -k systemd
-w /root/.config/systemd/user -pa wa -k systemd

-w /etc/systemd/system -p wa -k systemd
-w /usr/lib/systemd/system -p wa -k systemd

-w /run/systemd/system-generators -p wa -k systemd
-w /etc/systemd/system-generators -p wa -k systemd
-w /usr/local/lib/systemd/system-generators -p wa -k systemd
-w /usr/lib/systemd/system-generators -p wa -k systemd

-w /run/systemd/user-generators -pa wa -k systemd
-w /etc/systemd/user-generators -pa wa -k systemd
-w /usr/local/lib/systemd/user-generators -pa wa -k systemd
-w /usr/lib/systemd/user-generators -pa wa -k systemd

# Persistence: IAM

-w /etc/group -p wa -k iam_etcgroup
-w /etc/passwd -p wa -k iam_etcpasswd
-w /etc/gshadow -k iam_etcgroup
-w /etc/shadow -k iam_etcpasswd

-w /etc/sudoers -p wa -k iam_sudoers
-w /etc/sudoers.d/ -p wa -k iam_sudoers_d

-w /usr/bin/passwd -p x -k iam_passwd

-w /usr/sbin/groupadd -p x -k iam_groupmod
-w /usr/sbin/groupmod -p x -k iam_groupmod
-w /usr/sbin/addgroup -p x -k iam_groupmod
-w /usr/sbin/useradd -p x -k iam_usermod
-w /usr/sbin/userdel -p x -k iam_usermod
-w /usr/sbin/usermod -p x -k iam_usermod
-w /usr/sbin/adduser -p x -k iam_usermod

# Privilege Escalation

-w /bin/su -p x -k privesc
-w /usr/bin/sudo -p x -k privesc

# Persistence: Libraries

-w /etc/ld.so.conf -p wa -k libmod
-w /etc/ld.so.conf.d -p wa -k libmod
-w /etc/ld.so.preload -p wa -k libmod

# Persistence: PAM

-w /etc/pam.d/ -p wa -k pam
-w /etc/security/ -p wa  -k pam

# Persistence: SSH

-w /etc/ssh/ -p wa -k sshconfig
-w /root/.ssh/ -p wa -k sshconfig

# Persistence: Shell Configuration

-w /etc/bashrc -p wa -k shellconfig
-w /etc/csh.cshrc -p wa -k shellconfig
-w /etc/csh.login -p wa -k shellconfig
-w /etc/fish/ -p wa -k shellconfig
-w /etc/profile -p wa -k shellconfig
-w /etc/profile.d/ -p wa -k shellconfig
-w /etc/shells -p wa -k shellconfig
-w /etc/zsh/ -p wa -k shellconfig

# Injection

-a always,exit -F arch=b32 -S ptrace
-a always,exit -F arch=b64 -S ptrace

# Failed Access Attempts

-a always,exit -F arch=b64 -S open -F dir=/bin -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/etc -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/home -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/sbin -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/srv -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/usr/bin -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/usr/sbin -F success=0 -k file_err
-a always,exit -F arch=b64 -S open -F dir=/var -F success=0 -k file_err

# Network connections

-a always,exit -F arch=b64 -S connect -F a2=16 -F success=1 -k net_v4
-a always,exit -F arch=b32 -S connect -F a2=16 -F success=1 -k net_v4
-a always,exit -F arch=b64 -S connect -F a2=28 -F success=1 -k net_v6
-a always,exit -F arch=b32 -S connect -F a2=28 -F success=1 -k net_v6
-a always,exit -F arch=b32 -S socket -F a0=2 -k sock_v4
-a always,exit -F arch=b64 -S socket -F a0=2 -k sock_v4
-a always,exit -F arch=b32 -S socket -F a0=10 -k sock_v6
-a always,exit -F arch=b64 -S socket -F a0=10 -k sock_v6

Campos necesarios para la categoría Amenazas de Linux

En la siguiente sección se describen los datos específicos que necesitan los conjuntos de reglas de la categoría Amenazas de Linux para obtener el máximo beneficio. Asegúrate de que tus dispositivos estén configurados para registrar los siguientes datos en los registros de eventos de dispositivos.

Conjunto de datos

Campo UDM (donde se almacenan los datos)

Definición

Ruta de proceso principal

principal.process.file.full_path

Ubicación en el disco del proceso en ejecución actual, si está disponible.

Línea de comandos de proceso principal

principal.process.command_line

Parámetros de línea de comandos del proceso, si están disponibles.

Target Process Path

target.process.file.full_path

Ubicación en el disco del proceso de destino, si está disponible.

Línea de comandos del proceso de destino

target.process.command_line

Línea de comandos

Dominio de consulta de DNS de red

network.dns.questions.name

Nombre de dominio de las consultas de DNS, si está disponible.

Ajustar las alertas devueltas por la categoría Amenazas de Linux

Puedes reducir el número de detecciones que genera una regla o un conjunto de reglas mediante exclusiones de reglas.

En la exclusión de reglas, se definen los criterios de un evento de UDM que excluye el evento de la evaluación del conjunto de reglas.

Crea una o más exclusiones de reglas para identificar criterios en un evento de datos de gestión unificados que excluyan el evento de la evaluación de este conjunto de reglas o de reglas específicas del conjunto de reglas. Consulta Configurar exclusiones de reglas para obtener información sobre cómo hacerlo.

Por ejemplo, puede excluir eventos en función de los siguientes campos de UDM:

  • principal.hostname
  • target.user.userid
  • principal.process.command_line
  • target.domain.name
  • target.process.command_line

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.