Panoramica della categoria Linux Threats

Questo documento fornisce una panoramica delle serie di regole della categoria Linux Threats, le origini dati richieste e la configurazione che puoi utilizzare per ottimizzare gli avvisi generati da queste serie di regole.

I set di regole della categoria Minacce di Linux consentono di identificare le minacce in ambienti Linux tramite CrowdStrike Falcon, Linux Auditing System (AuditD) e i log di sistema Unix. Questa categoria include le seguenti serie di regole:

  • Strumenti di escalation dei privilegi del sistema operativo: rileva il comportamento comunemente osservato negli strumenti di escalation dei privilegi Linux open source.
  • Meccanismi di persistenza: attività utilizzata dagli utenti malintenzionati per stabilire e mantenere un accesso permanente sugli host Linux.
  • Modifiche ai privilegi: attività associata ad azioni e tentativi di autenticazione con privilegi, comunemente utilizzata per riassegnare i privilegi o mantenere la persistenza sugli host Linux.
  • Indicatori di malware - Attività binaria LOTL sospetta: rileva gli scenari di utilizzo sospetto di strumenti nativi (Living Off the Land) in base all'attività osservata del malware Linux in ambienti reali.
  • Indicatori di malware - Attività di download sospette: rileva il comportamento rilevato in relazione ad attività di download dannose su Linux in ambienti reali.
  • Indicatori malware - Esecuzione sospetta: rileva gli indicatori generati dai comportamenti osservati del malware Linux rilevati in ambienti reali, con particolare attenzione ai comportamenti di esecuzione (TA0002).

Dispositivi e tipi di log supportati

I set di regole nella categoria Minacce Linux sono stati testati e sono supportati con le seguenti origini dati supportate da Google Security Operations:

  • Sistema di controllo Linux (AUDITD)
  • Sistema Unix (NIX_SYSTEM)
  • Falcon CrowdStrike (CS_EDR)

Per un elenco di tutte le origini dati supportate da Google Security Operations, consulta Analizzatori predefiniti supportati

Configura i dispositivi per generare i dati di log corretti

Affinché le regole nella categoria Minacce Linux funzionino come previsto, i dispositivi devono generare i dati di log nel formato previsto. Configura le seguenti regole di audit permanenti per Linux Audit Daemon su ogni dispositivo in cui raccogli i log e invierai a Google Security Operations.

Per maggiori dettagli su come implementare regole di audit permanenti per Linux Audit Daemon, consulta la documentazione specifica per il 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

Ottimizzazione degli avvisi restituiti dalla categoria Minacce Linux

Puoi ridurre il numero di rilevamenti generati da una regola o da una serie di regole utilizzando le esclusioni di regole.

Nell'esclusione della regola, devi definire i criteri di un evento UDM che esclude l'evento dalla valutazione del set di regole.

Crea una o più esclusioni di regole per identificare i criteri in un evento UDM che escludono l'evento dalla valutazione da parte di questa serie di regole o di regole specifiche nella serie. Per informazioni al riguardo, consulta Configurare le esclusioni delle regole.

Ad esempio, puoi escludere eventi in base ai seguenti campi UDM:

  • principal.hostname
  • target.user.userid