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

En este documento, se proporciona una descripción general de los conjuntos de reglas en la categoría Amenazas de Linux, las fuentes de datos requeridas y la configuración que puedes usar para ajustar las alertas que generan estos conjuntos de reglas.

Los conjuntos de reglas en la categoría de amenazas de Linux ayudan a identificar amenazas en entornos de Linux con 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 escalación de privilegios de SO: Detecta el comportamiento que se ve comúnmente en las herramientas de elevación de privilegios de Linux de código abierto.
  • Mecanismos de persistencia: actividad que usan los adversarios para establecer y mantener el acceso persistente en los hosts de Linux.
  • Modificaciones de privilegios: Actividad asociada con intentos y acciones de autenticación con privilegios, que por lo general se usa para la elevación de privilegios o la persistencia en hosts de Linux.
  • Indicadores de software malicioso: actividad binaria de LOTL sospechosa: Detecta situaciones de uso sospechoso de herramientas nativas (Living Off the Land) en función de la actividad observada del software malicioso de Linux en entornos reales.
  • Indicadores de software malicioso: Actividad de descarga sospechosa: Detecta el comportamiento observado en relación con la actividad de descarga maliciosa en Linux en entornos del mundo real.
  • Indicadores de software malicioso: Ejecución sospechosa: Detecta indicadores generados a partir de comportamientos observados de software malicioso de Linux detectado en entornos del mundo real con un enfoque en los comportamientos de la ejecución (TA0002).

Dispositivos y tipos de registros compatibles

Los conjuntos de reglas de la categoría Amenazas de Linux se probaron y son compatibles con las siguientes fuentes de datos compatibles con las operaciones de seguridad de Google:

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

Para obtener una lista de todas las fuentes de datos compatibles con Google Security Operations, consulta Analizadores predeterminados admitidos.

Configura dispositivos para generar datos de registro correctos

Para que las reglas de la categoría Amenazas de Linux funcionen según lo diseñado, 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 recopilarás registros y los enviarás a Google Security Operations.

Si quieres obtener detalles 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

Ajuste de alertas que muestra la categoría de amenazas de Linux

Puedes reducir la cantidad de detecciones que genera una regla o un conjunto de reglas mediante las exclusiones de reglas.

En la exclusión de reglas, defines los criterios de un evento de UDM que excluye el evento para que el conjunto de reglas no lo evalúe.

Crea una o más exclusiones de reglas para identificar los criterios en un evento de UDM que excluyan el evento y que no sea evaluado por este conjunto de reglas o por reglas específicas del conjunto de reglas. Consulta Configura exclusiones de reglas para obtener más información sobre cómo hacerlo.

Por ejemplo, puedes excluir eventos basados en los siguientes campos de UDM:

  • principal.hostname
  • target.user.userid