Vai al contenuto
← Il malware e l’internet nascosto

Lezione 4 di 7 · 8 min

Rootkit: il software dannoso che si nasconde da te

Il compito di un rootkit è restare nascosto e restare al suo posto. Scopri come funzionano, perché più sono in profondità più sono pericolosi e come il macOS moderno complica loro la vita.

La maggior parte del software dannoso vuole fare qualcosa: rubare, cifrare, spiare. Un rootkit vuole non essere visto mentre succede. Il NIST definisce un rootkit come un insieme di strumenti usato da un aggressore dopo aver ottenuto un accesso di livello root su una macchina, per nascondere le proprie attività e mantenere un accesso privilegiato con mezzi occulti. Il nome viene da Unix, dove «root» è l’onnipotente account amministratore, e il «kit» era il pacchetto di strumenti modificati che un intruso lasciava per conservare quel potere in silenzio.

Due compiti: persistere e nascondersi

Un rootkit di solito unisce due capacità. La persistenza è sopravvivere a riavvii e aggiornamenti, così l’aggressore non perde l’accesso. L’occultamento è nascondere file, processi e connessioni di rete proprio agli strumenti che useresti per cercarli. MITRE ATT&CK descrive direttamente il secondo trucco: i rootkit nascondono programmi, file, connessioni di rete e servizi intercettando e modificando le chiamate del sistema operativo che li riportano. Se la parte del sistema a cui chiedi «che cosa è in esecuzione?» è stata manomessa, può semplicemente omettere la risposta.

Più è profondo, più è difficile da trovare

LivelloDove si trovaQuanto è difficile rilevarlo e rimuoverlo
Livello utenteSostituisce o intercetta programmi e librerie comuni che girano con il tuo accountDifficile, ma strumenti con privilegi più alti spesso notano la manomissione
Livello kernelSi carica nel cuore del sistema operativo, da dove può mentire a ogni programmaMolto difficile: è il sistema stesso a riportare informazioni false
Livello avvio e firmwareParte prima del sistema operativo, nell’avvio o nel firmware di un componenteIl più difficile: può sopravvivere a una reinstallazione completa del sistema

La regola generale è che il codice che gira a un livello più basso e più privilegiato può ingannare il codice che gira sopra. Per questo i rootkit puntano il più in basso possibile, e per questo chi difende si impegna tanto a rendere i livelli più bassi di un computer resistenti alla manomissione.

Come si difende macOS

Il macOS moderno è costruito per togliere ai rootkit i nascondigli che usavano. Apple documenta diversi livelli nella sua guida alla sicurezza delle piattaforme:

  • La protezione dell’integrità del sistema (SIP) impedisce anche all’account amministratore di modificare le parti protette del sistema, come le cartelle e i processi di sistema. Apple consiglia di lasciarla attiva.
  • Il volume di sistema è sigillato e firmato: all’avvio macOS verifica che i file di sistema siano esattamente quelli distribuiti da Apple e rifiuta di usare un sistema modificato.
  • L’avvio sicuro su Apple silicon (e sui Mac con chip T2) verifica ogni fase dell’avvio prima di eseguirla, così nessun codice può infilarsi prima del sistema operativo.
  • Le estensioni del kernel di terze parti sono limitate e richiedono un’approvazione esplicita; Apple ha spostato gran parte di ciò che facevano nelle estensioni di sistema, che girano fuori dal kernel.

Insieme, questi livelli rendono il classico rootkit del kernel molto più difficile da installare su un Mac recente con le impostazioni predefinite. È anche il motivo per cui oggi gli aggressori tendono a restare a livello utente e a puntare su trucchi di persistenza come gli elementi di login e i launch agent, che non devono rompere i sigilli del sistema.

La persistenza che puoi controllare da solo

Dato che i rootkit profondi sono difficili da installare, la maggior parte della persistenza sui Mac di oggi è visibile se sai dove guardare. macOS elenca gli elementi di login e quelli in background in Impostazioni di Sistema, sotto Generali e poi Elementi login ed estensioni, e ti avvisa quando viene aggiunto un nuovo elemento in background. Tutto ciò che lì non riconosci merita un’occhiata. MITRE ATT&CK elenca launch agent e launch daemon tra le tecniche di persistenza comuni su macOS proprio per questo.

Perché la rete dice ancora la verità

Un rootkit può mentire ai programmi della stessa macchina, ma di solito deve comunque parlare con il suo operatore. Quel traffico deve attraversare la rete. Un firewall per app che si trova nel livello di filtraggio del sistema operativo vede le connessioni mentre il sistema le gestisce, e un router o un altro dispositivo della rete le vede dall’esterno, dove il rootkit non ha alcun controllo. Il filtro di rete di FireAI è un’estensione di sistema Apple; mostra quale app c’è dietro ogni connessione e chiede prima che nuove app si connettano. Non è un rilevatore di rootkit e non può vedere attraverso un kernel compromesso, ma un traffico inspiegabile da un processo che non sai giustificare è uno dei segnali classici che qualcosa si sta nascondendo.

Non solo computer: router e altri dispositivi

Gli impianti di tipo rootkit non si limitano ai portatili. Router domestici, NAS e altri dispositivi sempre accesi fanno girare i propri piccoli sistemi operativi, spesso aggiornati di rado o mai. Gli aggressori li hanno presi di mira più volte perché stanno su ogni connessione e quasi nessuno li controlla. Tenere aggiornato il firmware del router, cambiare la password amministratore predefinita e disattivare la gestione remota che non usi chiude le porte più comuni. Spiega anche perché guardare il traffico da più di un punto è prezioso: un problema che vive nel router non comparirà in nessuna scansione del Mac.

Se sospetti un rootkit

  • Parti dal presupposto che gli strumenti del sistema potrebbero non dire la verità; esaminalo dall’esterno quando puoi.
  • Verifica che la protezione dell’integrità del sistema sia attiva (Apple spiega come) e tieni macOS aggiornato.
  • Controlla Elementi login ed estensioni cercando voci sconosciute.
  • Davanti a un sospetto serio, la soluzione affidabile è salvare i documenti (non le app né i file di sistema), inizializzare il Mac, reinstallare macOS da Apple e ripristinare solo i tuoi dati.
  • Se la minaccia è mirata, per esempio contro un giornalista o un attivista, chiedi aiuto a esperti e valuta la modalità di isolamento.

Da ricordare

  • Lo scopo di un rootkit è nascondere la presenza di un aggressore e mantenere un accesso privilegiato.
  • Più un rootkit sta in basso (utente, kernel, avvio, firmware), più è difficile rilevarlo e rimuoverlo.
  • Protezione dell’integrità del sistema, volume di sistema firmato e avvio sicuro rendono molto più difficili i classici rootkit del kernel sui Mac moderni.
  • Un rootkit può mentire al computer, ma il suo traffico di rete resta visibile dall’esterno.

Mettiti alla prova

  1. 1. Quali sono i due compiti principali di un rootkit?

    • Cifrare i file e chiedere un pagamento
    • Mantenere un accesso privilegiato (persistenza) e nascondere l’attività dell’aggressore (occultamento) — Esatto.
    • Inviare spam e minare criptovalute
    • Mostrare pubblicità e cambiare la pagina iniziale

    Il NIST definisce i rootkit come strumenti che nascondono l’attività di un aggressore e mantengono un accesso privilegiato in modo occulto.

  2. 2. Perché i rootkit a livello kernel sono così difficili da rilevare?

    • Sono file molto piccoli
    • Girano nel cuore del sistema operativo e possono far riportare al sistema informazioni false a ogni programma — Esatto.
    • Girano solo di notte
    • Si cancellano a ogni riavvio

    Il codice a un livello più privilegiato può ingannare i programmi sopra di lui, compresi gli strumenti che useresti per cercarlo.

  3. 3. Quale funzione di macOS impedisce anche a un amministratore di modificare i file di sistema protetti?

    • FileVault
    • La protezione dell’integrità del sistema — Esatto.
    • AirDrop
    • Time Machine

    SIP protegge cartelle e processi di sistema dalle modifiche, anche da parte dell’account amministratore, e blocca così una tecnica classica dei rootkit.

Mettilo in pratica con FireAI

Metti in pratica questa lezione sul tuo Mac.

Fonti

Mettilo in pratica sul tuo Mac

Prova tutte le funzioni gratis per 17 giorni, senza carta.

Scarica per Mac Guide