Présentation de la catégorie "Menaces Linux"

Ce document présente les ensembles de règles de la catégorie "Menaces Linux", les sources de données requises et la configuration que vous pouvez utiliser pour ajuster les alertes générées par ces ensembles de règles.

Les ensembles de règles de la catégorie "Menaces Linux" permettent d'identifier les menaces dans les environnements Linux à l'aide des journaux système CrowdStrike Falcon, Linux Auditing System (AuditD) et Unix. Cette catégorie comprend les jeux de règles suivants:

  • Outils d'élévation des privilèges du système d'exploitation: détecte les comportements couramment observés dans les outils d'élévation des privilèges Linux Open Source.
  • Mécanismes de persistance:activité utilisée par les pirates informatiques pour établir et maintenir un accès persistant aux hôtes Linux.
  • Modifications des privilèges: activité associée aux tentatives et actions d'authentification privilégiée, couramment utilisée pour escalader des privilèges ou persister sur les hôtes Linux.
  • Signaux de logiciel malveillant – Activité binaire LOTL suspecte: détecte les scénarios d'utilisation suspecte d'outils natifs (Living Off the Land) en fonction de l'activité observée de logiciels malveillants Linux dans des environnements réels.
  • Signaux de logiciels malveillants – Activité de téléchargement suspecte: détecte les comportements liés à l'activité de téléchargement malveillant sous Linux dans des environnements réels.
  • Signaux de logiciels malveillants - Exécution suspecte: détecte les signaux générés à partir des comportements observés de logiciels malveillants Linux détectés dans des environnements réels, en se concentrant sur les comportements d'exécution (TA0002).

Appareils et types de journaux compatibles

Les ensembles de règles de la catégorie "Menaces Linux" ont été testés et sont compatibles avec les sources de données compatibles avec Google Security Operations suivantes:

  • Système d'audit Linux (AUDITD)
  • Système Unix (NIX_SYSTEM)
  • CrowdStrike Falcon (CS_EDR)

Pour obtenir la liste de toutes les sources de données compatibles avec Google Security Operations, consultez la page Analyseurs par défaut compatibles.

Configurez les appareils pour générer des données de journaux correctes

Pour que les règles de la catégorie "Menaces Linux" fonctionnent comme prévu, les appareils doivent générer des données de journal au format attendu. Configurez les règles d'audit persistantes suivantes pour le daemon d'audit Linux sur chaque appareil où vous allez collecter des journaux et les envoyer à Google Security Operations.

Pour savoir comment mettre en œuvre des règles d'audit persistantes pour le daemon d'audit Linux, consultez la documentation spécifique au système d'exploitation.

# 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

Réglage des alertes renvoyées par la catégorie "Menaces Linux"

Vous pouvez réduire le nombre de détections qu'une règle ou un ensemble de règles génère à l'aide d'exclusions de règles.

Dans l'exclusion de règle, vous définissez les critères d'un événement UDM qui empêche l'événement d'être évalué par l'ensemble de règles.

Créez une ou plusieurs exclusions de règles pour identifier les critères d'un événement UDM qui empêchent l'événement d'être évalué par cet ensemble de règles ou par des règles spécifiques de l'ensemble de règles. Pour savoir comment procéder, consultez Configurer des exclusions de règles.

Par exemple, vous pouvez exclure des événements en fonction des champs UDM suivants:

  • principal.hostname
  • target.user.userid