3 motivi per cui non dovresti eseguire Docker senza sudo
Docker è una delle piattaforme di containerizzazione più utilizzate ed è molto amata dagli ingegneri del software. Viene fornito con un potente strumento CLI per la gestione dei container Docker e altre attività correlate.
Per impostazione predefinita, sono necessari i privilegi di root per eseguire qualsiasi comando relativo a Docker su Linux. Ovviamente, puoi cambiarlo per comodità ed eseguire i comandi Docker senza privilegi di root, ma dovresti essere consapevole delle implicazioni sulla sicurezza.
Cos’è la superficie di attacco Docker?
Una superficie di attacco è il numero di punti di attacco, più simile al numero di finestre, che un utente malintenzionato può utilizzare per entrare nel sistema e causare danni. Come regola generale, i sistemi IT dovrebbero avere superfici di attacco minime per ridurre i rischi per la sicurezza.
In generale, la superficie di attacco di Docker è minima. I contenitori vengono eseguiti in un ambiente isolato sicuro e non influiscono sul sistema operativo host se non diversamente. Inoltre, i container Docker eseguono solo servizi minimi che lo rendono più sicuro.
Puoi configurare il tuo sistema Linux per controllare Docker senza privilegi sudo. Questo può essere utile negli ambienti di sviluppo, ma può rappresentare una grave vulnerabilità di sicurezza nei sistemi di produzione. Ed ecco perché non dovresti mai eseguire Docker senza sudo.
1. Capacità di controllare i container Docker
Senza i privilegi sudo, chiunque abbia accesso al tuo sistema o server può controllare ogni aspetto di Docker. Hanno accesso ai tuoi file di registro Docker e possono interrompere ed eliminare i contenitori a piacimento o accidentalmente. Potresti anche perdere dati critici che sono vitali per la continuità aziendale.
Se utilizzi i container Docker negli ambienti di produzione, i tempi di inattività si traducono in una perdita di business e di fiducia.
2. Ottenere il controllo delle directory del sistema operativo host
Docker Volumes è un potente servizio che consente di condividere e rendere persistenti i dati del contenitore scrivendoli in una cartella specificata nel sistema operativo host.
Una delle maggiori minacce rappresentate dall’esecuzione di Docker senza sudo è che chiunque sul tuo sistema può ottenere il controllo delle directory del sistema operativo host, inclusa la directory principale.
Tutto quello che devi fare è eseguire un’immagine Linux Docker, ad esempio l’immagine Ubuntu, e montarla nella cartella principale usando il seguente comando:
docker run -ti -v /:/hostproot ubuntu bash
E poiché i container Linux Docker vengono eseguiti come utente root, significa essenzialmente che hai accesso all’intera cartella root.
Il suddetto comando scaricherà ed eseguirà l’ultima immagine di Ubuntu e la monterà nella directory principale.
Sul terminale del contenitore Docker, vai alla directory /hostproot utilizzando il comando cd:
cd /hostproot
Elencare il contenuto di questa directory usando il comando ls mostra tutti i file del sistema operativo host che sono ora disponibili nel tuo contenitore. Ora puoi manipolare i file, visualizzare i file segreti, nascondere e mostrare i file, modificare i permessi, ecc.
3. Installa software dannoso
Un’immagine Docker ben realizzata può essere eseguita in background e manipolare il sistema o raccogliere dati sensibili. Peggio ancora, un utente malintenzionato potrebbe diffondere codice dannoso sulla tua rete tramite i contenitori Docker.
Esistono diversi casi d’uso pratici dei container Docker e con ogni applicazione viene fornito un diverso insieme di minacce alla sicurezza.
Proteggi i tuoi container Docker su Linux
Docker è una piattaforma potente e sicura. L’esecuzione di Docker senza sudo aumenta la superficie di attacco e rende vulnerabile il sistema. Negli ambienti di produzione, si consiglia vivamente di utilizzare sudo con Docker.
Con così tanti utenti su un sistema, diventa estremamente difficile assegnare le autorizzazioni a ciascun utente. In tali casi, seguire le migliori pratiche di controllo degli accessi può aiutarti a mantenere la sicurezza del tuo sistema.
Lascia un commento