Immagini Base Vulnerabili

Immagini Base Vulnerabili

Le tue dipendenze vengono riviste. Il sistema operativo sottostante no.

Cos’è Immagini Base Vulnerabili?

Le dipendenze dell'applicazione vengono riviste ad ogni modifica. Il livello del sistema operativo sottostante spesso non lo fa. Un tag mobile come node:18 significa che il livello sotto il codice cambia ogni volta che il registro fornisce qualcosa di nuovo e vengono rilevati difetti nel tempo, quindi un'immagine pulita al momento della spedizione può essere fondamentale ora. Eseguirai la scansione di un'immagine di servizio obsoleta, troverai CVE-2023-4863 in libwebp e la trasformerai in esecuzione di codice remoto. Quindi fisserai la base su un digest esatto, ricostruirai e ripetere la scansione. Il blocco ha un costo: richiede una cadenza di ricostruzione deliberata.

Cosa imparerai in Immagini Base Vulnerabili

Immagini Base Vulnerabili — Fasi della formazione

  1. L'immagine dello scheduler nel registry

    Bob ha accesso in lettura al registry dei container di Bremhollow grazie a un token robot trapelato. Non sta guardando il codice — sta guardando quanto sono recenti le immagini, perché un servizio che non è stato ricostruito da un po' è un servizio la cui immagine base è invecchiata silenziosamente. Lo scheduler elabora immagini caricate dagli utenti, il che rende ciò su cui è costruito molto interessante per lui. Apri la sua pagina e guarda cosa dice il registry.

  2. Un'immagine che ha smesso di muoversi

    Il registry non deve essere sbagliato per aiutare Bob. Una sola riga gli dice che l'immagine distribuita è vecchia e costruita su una base mobile.

  3. Scansiona la base alla ricerca di un varco

    Bob esegue il pull dell'immagine e ci passa sopra uno scanner di vulnerabilità, lo stesso strumento che userebbe un difensore. Non è interessato al codice dell'applicazione. Vuole una vulnerabilità nota e pubblicata nei pacchetti del sistema operativo che l'immagine base ha trascinato con sé, perché quelle vengono con exploit funzionanti.

  4. Trasforma il CVE in una shell

    Un risultato dello scanner non è un exploit finché qualcuno non lo esegue. CVE-2023-4863 ha una proof-of-concept pubblica: un WebP creato ad arte che manda in overflow libwebp nel momento in cui viene decodificato. Lo scheduler decodifica ogni immagine caricata, quindi Bob monta il file PoC in un'esecuzione usa e getta dell'immagine vulnerabile e lo decodifica — dimostrando che il risultato è un percorso funzionante di remote-code-execution prima ancora di toccare la produzione.

  5. Dove si trova la vulnerabilità

    Un momento di riflessione sul meccanismo prima che inizi la risposta.

  6. Lo scanner segnala la flotta

    Bremhollow ha aggiunto la scansione delle immagini alla propria pipeline, e la prima verifica completa di ciò che è già in esecuzione in produzione ha restituito qualcosa che non può aspettare.

  7. Verificalo di persona

    Prima di cambiare qualsiasi cosa, Alice esegue la stessa scansione sull'immagine distribuita. Vuole vedere il risultato, dove si trova, e qual è effettivamente la base.

  8. Aprire il Dockerfile

    L'immagine base viene scelta in una riga del Dockerfile. Tutto ciò che lo scanner ha trovato è arrivato tramite quella riga.

  9. Trova la base mobile

    Non c'è nulla di scritto male o malformato qui. Il problema è una singola riga che dice meno di quanto dovrebbe.

  10. Blocca la base tramite digest

    Un tag è un'etichetta che qualcuno può spostare; un digest è l'impronta di contenuto dell'immagine e non può mai puntare a nient'altro. Alice blocca la base su un node:18 slim esatto e aggiornato tramite il suo digest, così ogni build d'ora in poi recupera gli stessi byte verificati, e spostare quel blocco diventa una modifica deliberata e revisionabile.

Copertura dei framework di sicurezza

CWE

  • CWE-1104 Use of Unmaintained Third Party Components
  • CWE-1395 Dependency on Vulnerable Third-Party Component

MITRE ATT&CK

  • T1190 Exploit Public-Facing Application

CIS Controls

  • CIS 7 Continuous Vulnerability Management
  • CIS 2 Inventory and Control of Software Assets

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • ID.RA Risk Assessment
  • ID.AM Asset Management