13/02/2019 di Redazione

Container, falla “apocalittica” per il runtime di Docker

La vulnerabilità di runc potrebbe consentire a un hacker di lanciare container malevoli negli ambienti di produzione o di intervenire con privilegi di root sui sistemi. Docker ha rilasciato una patch e tutti i principali attori di questo mercato stanno la

immagine.jpg

È arrivato il “giorno dell’Apocalisse” per i container. Due ricercatori, Adam Iwaniuk e Borys Popławski, hanno scoperto una gravissima falla in runc, il runtime di default di piattaforme come Docker, Containerd, Podman e Cri-O. “Sono pochi gli incidenti che potrebbero rivelarsi veramente catastrofici per l’It enteprise, come per esempio una serie di exploit a cascata che colpiscono un ampio spettro di sistemi connessi fra loro: ed è proprio questo il caso”, ha scritto in un blog post Scott McCarty di Red Hat, azienda pienamente coinvolta (come la stessa Suse e altre) nella vicenda. Runc è uno strumento open source a riga di comando sviluppato per generare e lanciare container. Il progetto originale è di Docker, ma nel tempo è diventato una specifica dell’Open Container Initiative (Oci) ed è oggi ampiamente utilizzato. Il rischio quindi è che migliaia di implementazioni container siano ora esposte a gravi rischi.

Sfruttando una falla nel codice, infatti, un hacker potrebbe creare un container maligno e, con la minima interazione dell’utente, arrivare a sovrascrivere il binario originale e ottenere così l’accesso all’host con privilegi di root. È facile intuire come, a questo punto, sia possibile compromettere tutte le risorse in esecuzione su quell’host. In particolare, l’attaccante potrebbe inserire codice maligno in un container già esistente, oppure utilizzare un’immagine malevola e metterla in esecuzione.

Normalmente, il kernel di Linux non permetterebbe di sovrascrivere un binario runc in esecuzione, ma con una serie di accorgimenti un cybercriminale esperto potrebbe arrivare all’obiettivo. Per cercare di risolvere velocemente il problema, Aleksa Sarai, uno dei manutentori del progetto, ha pubblicato un commit su Github. Ma ovviamente tutti gli ambienti che presentano il runtime “bucato” devono integrare le modifiche prima di essere dichiarati sicuri.

Docker, per esempio, ha rilasciato la versione 18.09.2, che chiude la falla, mentre Red Hat ha spiegato che le configurazioni di default di Red Hat Enterprise Linux e di Openshift sono già protette, grazie a Selinux, ma sono stati comunque offerti dei consigli alle aziende che volessero aggiornare i propri sistemi. Rancher, invece, uno sviluppatore di software gestionale aperto per Kubernetes, ha pubblicato uno script che le versioni legacy di Docker.

Ma gli avvisi di sicurezza si sono ovviamente moltiplicati a vista d’occhio. Come spiega la testata The Register, Debian e Canonical, due fra i maggiori sviluppatori di distribuzioni Linux, stanno lavorando a una patch. Amazon Web Services e Google, invece, hanno pubblicato degli alert per spiegare ai clienti come aggiornare i container attivi nei vari servizi colpiti dalla vulnerabilità.

 

ARTICOLI CORRELATI