La scorsa settimana è stata segnalata una gravissima vulnerabilità nel kernel di Linux, il cosiddetto “Dirty COW”. Il team Knoweb che gestisce i nostri server Linux ha affrontato immediatamente il problema e sono stati in grado di applicare la patch in meno di 24 ore sulla maggior parte delle macchine.
La vulnerabilità Dirty COW consente agli aggressori di ottenere accesso root al server e ottenere quindi il controllo su tutto il sistema. Il buco di sicurezza è stato rilevato dal ricercatore Phil Oester, che ha trovato una condizione anomala nel sottosistema di memoria del kernel di Linux che gestisce la copy-on-write (COW). Gli aggressori possono utilizzare questa condizione per ottenere l’accesso in scrittura al posto della sola lettura, e in questo modo prendere il controllo di interi sistemi.
Per ulteriori informazioni tecniche è possibile controllare la pagina ufficiale RedHat delle vulnerabilità e questo sito che è dedicato specificamente alla vulnerabilità Dirty COW.
Il problema interessa probabilmente centinaia di migliaia, se non milioni, di macchine basate su Linux, ma se eseguite l’ultima versione del kernel non avete motivo di preoccuparvi.
Secondo i rapporti, le seguenti distribuzioni Linux sono vulnerabili (nota: questo non è un elenco completo, ma piuttosto un elenco delle più popolari distribuzioni Linux):
Il modo più semplice per proteggere computer e server con sistema operativo Linux è quello di aggiornare la distro Linux alla versione più recente. Considerate tuttavia che questa azione richiede un riavvio ed è consigliabile avere sempre a disposizione un backup aggiornato del sistema.
Utilizzare i seguenti comandi per aggiornare i sistemi Debian / Ubuntu e RHEL:
Debian/Ubuntu: $ sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
RHEL: $ sudo yum update $ sudo reboot
CentOS: Non vi è ancora alcun aggiornamento ufficiale del kernel CentOS. In questo momento l'unico modo per applicare patch ai server CentOS è quello di seguire le istruzioni da questo link.
Dopo aver riavviato il computer Linux, assicurarsi che sono in esecuzione il nuovo kernel eseguendo i seguenti comandi:
$ uname -a $ uname -r $ uname -mrs
Dopo attente valutazioni, considerato l’elevato numero di server e servizi in esecuzione, abbiamo deciso di cercare una soluzione che non richiedesse il riavvio delle macchine. Abbiamo quindi utilizzato uno strumento chiamato kpatch, che ci ha permesso di patchare i kernel in esecuzione senza riavviare i server o tutti i processi.
Tutti i server condivisi, il cloud e i server dedicati Knoweb sono già modificati.