Scansione di sicurezza delle immagini dei container
Integri gli strumenti di scansione delle immagini nella pipeline CI/CD per identificare le vulnerabilità nelle immagini Docker.
Scansione di sicurezza delle immagini dei container è una lezione Docker & DevOps Fundamentals gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Docker & DevOps Fundamentals, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Docker & DevOps Fundamentals include 4 lezioni in totale.
Perché analizzare le immagini dei container?
Le immagini dei container sono alla base delle applicazioni moderne. Come qualsiasi software, possono contenere vulnerabilità di sicurezza nascoste. La scansione delle immagini è una pratica fondamentale per individuare queste vulnerabilità prima di eseguire il deployment delle applicazioni.
Aiuta a garantire che il software in esecuzione sia sicuro e privo di vulnerabilità note.

I pericoli nascosti nelle immagini
Quali tipi di vulnerabilità potrebbero nascondersi nelle vostre immagini dei container?
- Immagini di base obsolete: l'utilizzo di versioni obsolete dei sistemi operativi (come Ubuntu o Alpine) che presentano bug di sicurezza noti.
- Librerie vulnerabili: qualsiasi pacchetto software o dipendenza aggiuntiva installata nell'immagine potrebbe presentare vulnerabilità di sicurezza (CVE).
- Configurazioni errate: sebbene la scansione punti principalmente alle CVE note, anche impostazioni non corrette possono introdurre rischi.
Come funzionano gli scanner delle immagini
Gli scanner delle immagini dei container operano nei seguenti modi:
- Analizzano i layer: esaminano ogni layer dell'immagine Docker.
- Estraggono i componenti: identificano tutti i pacchetti, le librerie e le dipendenze installati (ad esempio pacchetti del sistema operativo, librerie Python e moduli Node.js).
- Confrontano con i database: confrontano questi componenti con ampi database delle vulnerabilità aggiornati regolarmente (come i database CVE).
- Generano report: forniscono un elenco dettagliato delle vulnerabilità identificate, della loro gravità e spesso delle correzioni suggerite.
Gli strumenti del mestiere
Sono disponibili diversi strumenti potenti per la scansione delle immagini dei container, sia open source sia commerciali:
- Trivy: uno scanner open source molto diffuso, noto per la facilità d'uso e la copertura completa.
- Clair: un'altra valida opzione open source, spesso integrata in registry di container più ampi.
- Docker Scout (tramite
docker scan): integrato in Docker Desktop, utilizza il database delle vulnerabilità di Snyk per fornire rapide scansioni locali.
Scansione locale di un'immagine
Eseguiamo una scansione rapida di una comune immagine Docker usando il comando integrato docker scan. Questo comando utilizza Docker Scout (basato su Snyk) per verificare la presenza di vulnerabilità.
Provi a eseguire questo esempio:
docker scan nginx:latestInterpretazione dei risultati
Dopo aver eseguito una scansione, riceverà un report. Ecco cosa cercare:
- ID CVE: Un identificatore univoco della vulnerabilità (ad esempio, CVE-2023-1234).
- Gravità: Il livello di criticità della vulnerabilità (ad esempio, Critica, Alta, Media, Bassa).
- Pacchetto: Il componente software o la libreria specifica che contiene il difetto.
- Versione corretta: Spesso il report suggerisce una versione del pacchetto o dell'immagine di base che risolve il problema.
Scansione nel flusso di lavoro
Il vero valore della scansione delle immagini emerge quando viene integrata nel flusso di lavoro di sviluppo. Aggiungendo la scansione alla pipeline di integrazione continua (CI), è possibile:
- Rilevare i problemi tempestivamente: Identificare le vulnerabilità non appena viene eseguito il commit di nuovo codice o viene compilata un'immagine.
- Automatizzare i controlli di sicurezza: Rendere la sicurezza una parte standard e automatizzata del processo di compilazione.
- Impedire la distribuzione: Configurare la pipeline CI in modo che la compilazione fallisca se vengono rilevate vulnerabilità critiche, impedendo alle immagini non sicure di raggiungere l'ambiente di produzione.
Automatizzazione delle scansioni con CI
Ecco uno snippet concettuale che mostra come si potrebbe integrare la scansione con Trivy in un flusso di lavoro GitHub Actions. In questo modo, ogni immagine compilata viene sottoposta automaticamente a scansione.
# .github/workflows/scan.yml
name: Image Scan
on:
push:
branches: [ main ]
jobs:
build-and-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build Docker Image
run: docker build -t my-app:latest .
- name: Run Trivy Scan
uses: aquasecurity/trivy-action@master
with:
image-ref: 'my-app:latest'
format: 'table'
exit-code: '1' # Fail build on critical issuesCorrezione dei problemi rilevati
Individuare le vulnerabilità è solo metà del lavoro; correggerle è l'altra metà! Ecco alcune strategie di correzione comuni:
- Aggiornare le immagini di base: Utilizzare sempre le versioni più recenti e aggiornate con le patch dell'immagine di base scelta.
- Ridurre al minimo le dipendenze: Installare solo i pacchetti assolutamente necessari per l'esecuzione dell'applicazione.
- Compilazioni multi-stage: Utilizzare Dockerfile multi-stage per ridurre le dimensioni dell'immagine finale e rimuovere gli strumenti necessari solo in fase di compilazione e non durante l'esecuzione.
- Applicare patch: Applicare patch di sicurezza specifiche, se disponibili, ai componenti vulnerabili.
Verifica della scansione
La scansione delle immagini è una parte fondamentale dello sviluppo sicuro dei container. Verifichiamo la Sua comprensione dell'argomento.
Concetti chiave
Ha appreso il ruolo fondamentale della scansione di sicurezza delle immagini dei container:
- Identifica le vulnerabilità note (CVE) nelle immagini di base e nelle dipendenze.
- Strumenti come Trivy, Clair e Docker Scout aiutano ad automatizzare questo processo.
- L'integrazione della scansione nella pipeline CI/CD garantisce il rilevamento tempestivo e impedisce la distribuzione di immagini non sicure.
- Aggiornare regolarmente le immagini e ridurre al minimo le dipendenze aiuta a diminuire la superficie di attacco.
Continui a sottoporre a scansione le Sue immagini per mantenere un solido livello di sicurezza!
Domande Frequenti
La lezione «Scansione di sicurezza delle immagini dei container» è gratuita?
Sì — il testo completo di «Scansione di sicurezza delle immagini dei container» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Docker & DevOps Fundamentals, passa a CoddyKit PRO. Il corso Docker & DevOps Fundamentals include 4 lezioni in totale.
Cosa imparerò in «Scansione di sicurezza delle immagini dei container»?
Integri gli strumenti di scansione delle immagini nella pipeline CI/CD per identificare le vulnerabilità nelle immagini Docker. Eserciti Docker & DevOps Fundamentals con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Docker & DevOps Fundamentals?
Non è richiesta alcuna esperienza precedente. Docker & DevOps Fundamentals su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Scansione di sicurezza delle immagini dei container»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Docker & DevOps Fundamentals?
Sì. Ogni lezione Docker & DevOps Fundamentals include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Scansione di sicurezza delle immagini dei container
- Sicurezza dei container a runtime
- Gestione dei Secret e RBAC
- Network policy e networking con privilegi minimi