Gli attacchi informatici non sono tutti uguali ma differiscono per tipologia e obiettivi. Gli esperti di Sicurezza.net in questo articolo esaminano nel dettaglio i fork bomb: cosa sono, come funzionano e come proteggersi da questo tipo di attacco.
Cosa è un fork bomb
«Un fork bomb è un attacco informatico di tipo denial of service contro un computer che utilizza la funzione fork.
Con il termine fork ci si riferisce ad una modalità attraverso cui un processo crea in memoria una copia di sé stesso: la copia prenderà il nome di processo figlio, mentre il processo originale verrà chiamato processo padre. Questa modalità è tipica, ad esempio, nei sistemi operativi UNIX.
Il termina denial of service, invece, indica un malfunzionamento dovuto ad un attacco informatico in cui si fanno esaurire deliberatamente le risorse di un sistema informatico fino a renderlo non più in grado di erogare il servizio ai client richiedenti.
Un attacco fork bomb, quindi, consiste nel tentativo di creare un gran numero di processi in modo da saturare lo spazio nella tabella dei processi disponibile in un sistema operativo.
Quando si raggiunge questa saturazione non è più possibile avviare altri programmi finché un altro non termina. Il fork bomb, però, è programmato per creare processi in continuazione, rendendo effettivamente impossibile all’utente di avviare altri programmi.
Le fork bomb non si limitano ad utilizzare in maniera invasiva la tabella dei processi, ma impiegano anche le risorse del processore e della memoria. Pertanto, il sistema rallenta e può diventare impossibile da utilizzare.
Attacco fork bomb: come funziona
Cerchiamo di spiegare come funziona un attacco fork bomb riportando un semplice esempio con il sistema operativo UNIX.
Il metodo più semplice consiste nel far eseguire dalla macchina vittima un comando. Le fork bomb tradizionali utilizzano:
:(){ :|: & };:
questo comando ha il seguente significato:
Una volta eseguito, questo semplice comando crea un serie infinita di processi che saturano il sistema operativo, esaurendo tutte le risorse fino al blocco totale.
Come proteggersi
Una volta avvenuto un attacco fork bomb, l’unica soluzione attuabile per ripristinare il sistema operativo è quella del riavvio forzato (boot). Infatti, può risultare impossibile cercare di terminare questi processi proprio perché ciò richiederebbe la creazione di un nuovo processo.
Vista la difficoltà nell’applicare soluzioni che non richiedono il riavvio forzato, è importante allora cercare di proteggersi ancor prima di subire l’attacco stesso.
Il metodo più efficace per prevenire un fork bomb è quello di limitare il numero di processi che possono essere avviati da un singolo programma o utente.
I sistemi Unix-like, ad esempio, presentano la funzione ulimit che permette di limitare tali processi. Di contro, però, questa funzione è legata alla sessione corrente. Di conseguenza, diventa necessario impostarla ogni volta che viene riavviato il computer, rendendo l’operazione molto macchinosa.
Un’alternativa è quella di editare il file di configurazione dei limiti /etc/security/limits.conf, specificando a quali utenti dare la limitazione e il numero massimo di processi che possono attivare.
Conclusioni
Gli attacchi fork bomb sono molto pericolosi poiché sono sufficienti poche righe di codice per bloccare un intero sistema.
Se questo attacco venisse eseguito su un server o un dispositivo chiave per la propria rete aziendale, il rischio di perdita di servizi e dati sarebbe elevato.
Purtroppo, non esiste tutt’oggi un metodo per bloccare definitivamente questa minaccia. Le soluzioni preventive che si possono attuare sono l’utilizzo di software fidati e una ragionata gestione delle limitazioni degli utenti sui propri dispositivi».
https://sicurezza.net/cyber-security/attacchi-fork-bomb-cosa-sono-e-come-proteggersi/