Qualcuno capisce il codice seguente, in esecuzione in bash?
:(){ :|:& };:
Sembra essere un "fork
” bomba su Linux.
Risposta accettata:
In effetti, non è così difficile da decifrare.
Questo pezzo di codice definisce semplicemente una funzione denominata :
che chiama due istanze di se stesso in una pipeline::|:&
. Dopo la definizione viene avviata un'istanza di questa funzione.
Ciò porta a un numero in rapido aumento di processi di subshell. I sistemi non protetti (sistemi senza un limite di numero di processi per utente) saranno gravemente colpiti da tali fork bomb poiché i processi legittimi saranno rapidamente superati in numero e quindi privati della maggior parte delle risorse della CPU.