
Prendere il controllo della sicurezza dei container
Questa è l'OWASP Docker Top 10. È un lavoro in corso.
Questo documento descrive i 10 punti di sicurezza più importanti per costruire un ambiente containerizzato sicuro. Puoi usarlo come scheda specifica se parti da zero, oppure consegnarlo a un appaltatore che lo farà per te.
Può anche essere usato per fare audit o mettere in sicurezza un'installazione esistente, ma soprattutto in questo caso dovresti iniziare a pensare alla sicurezza molto presto. L'ideale è nella fase di progettazione. Successivamente diventa difficile o costoso, in termini di denaro o tempo, modificare alcune decisioni prese.
Sebbene il nome del documento assomigli all'OWASP Top 10, è piuttosto diverso. Innanzitutto, non riguarda rischi basati su dati raccolti come l'OWASP Top 10. In secondo luogo, i 10 punti qui presenti assomigliano a controlli (proattivi).
Questa guida è per sviluppatori, auditor, architetti, ingegneri di sistema e di rete. Come indicato sopra, puoi usare questa guida anche per appaltatori esterni, aggiungendo requisiti tecnici formali al tuo contratto. Anche il responsabile della sicurezza delle informazioni dovrebbe avere un certo interesse per soddisfare i requisiti di sicurezza di base e andare oltre.
Questi 10 punti riguardano principalmente (vedi sotto questo paragrafo) la sicurezza di sistema e di rete e l'architettura di sistema e di rete. Come sviluppatore non devi essere un esperto in questi ambiti -- è a questo che serve questa guida. Ma come indicato sopra, l'ideale è iniziare a pensare e affrontare questi punti presto. Per favore non limitarti a iniziare a creare.
Uno dei punti non dovrebbe essere frainteso: la gestione delle patch non è un punto tecnico. È un processo di gestione. Infine, per la gestione tecnica o della sicurezza delle informazioni che non si è preoccupata molto della containerizzazione, questo documento fornisce anche approfondimenti sui rischi coinvolti.
La sicurezza negli ambienti Docker è spesso sembrata fraintesa. Era/è una
questione molto dibattuta quali dovessero essere le minacce. Quindi prima di
addentrarci nei punti della Docker Top 10, le minacce devono essere modellate,
cosa che avviene in anticipo in questo documento. Non solo aiuta a
comprendere gli impatti sulla sicurezza, ma ti dà anche la possibilità di
dare priorità ai tuoi compiti.
Consulta CONTRIBUTING.md. Per facilitare i contributi sui punti aperti, invia le tue PR ai rami di sviluppo corrispondenti (D06_dev, D07_dev, ...).
Puoi creare da solo una versione PDF se hai Docker e docker-compose installati.
docker-compose run --rm build
Non viene aggiornata spesso in questo repository, altrimenti lo intasa.
Sebbene il nome di questo progetto contenga la parola "Docker", può essere usato anche con poca astrazione per altre soluzioni di contenimento. Docker è attualmente il più popolare, quindi i dettagli approfonditi si concentrano per ora su Docker. Questo potrebbe cambiare in futuro.
Se esegui più di 3 contenitori su un server, probabilmente hai una soluzione di orchestrazione per gestirli. I particolari problemi di sicurezza di uno strumento del genere sono attualmente fuori dallo scopo di questo documento. Ciò non significa che questa guida riguardi solo uno o pochi contenitori gestiti manualmente -- anzi. Significa solo che stiamo guardando ai contenitori incluso il loro networking e i loro sistemi host in un ambiente orchestrato di questo tipo, e non ai particolari problemi di, ad esempio, Kubernetes, Swarm, Rancher o OKD/OpenShift.
Ad essere onesti, per noi umani il numero 10 suona accattivante e, mettendo tutto insieme, questi 10 sono stati considerati i più importanti.