Come leggere un punteggio CVSS 4.0

Che cosa significano il numero e il vettore di un rilievo, da quali metriche sono costruiti e perché un punteggio di 9.3 non è ancora una priorità.

Pubblicato5 min di lettura

Ogni rilievo di un report di penetration test riporta una riga come questa:

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

e accanto un numero. Nelle riunioni si cita il numero. È la riga che va letta, perché dice perché il numero è quello che è.

CVSS, il Common Vulnerability Scoring System, è pubblicato da FIRST. La versione 4.0 è stata rilasciata il 1º novembre 2023.

Che cosa misura il punteggio

CVSS misura la gravità di una vulnerabilità: quanto è facile sfruttarla e quanto danno causa lo sfruttamento. Non misura il rischio, che dipende anche da quanto vale per te il sistema interessato e dal fatto che qualcuno lo stia attaccando. Lo dice la specifica stessa, e la versione 4.0 ha reso visibile la distinzione nei nomi dei punteggi:

Nome Costruito da Risponde a
CVSS-B Metriche di base Quanto è grave la vulnerabilità in sé?
CVSS-BT Base e minaccia Quanto è grave, visto ciò che gli attaccanti fanno oggi?
CVSS-BE Base e ambiente Quanto è grave nel nostro ambiente?
CVSS-BTE Tutte e tre Quanto è grave qui e ora?

Il report di un penetration test di norma riporta CVSS-B, a volte CVSS-BE quando il tester conosce bene l’ambiente. I database di vulnerabilità pubblicano CVSS-B. Se dopo un punteggio non ci sono lettere, considera che sia B.

Le metriche di base

Le prime cinque descrivono come si svolge l’attacco.

Metrica Valori Domanda
Attack Vector (AV) Network, Adjacent, Local, Physical Da dove può raggiungerla l’attaccante?
Attack Complexity (AC) Low, High L’attaccante deve superare una protezione già presente?
Attack Requirements (AT) None, Present L’attacco dipende da condizioni del deployment, come una race condition o una posizione nella rete?
Privileges Required (PR) None, Low, High Quale accesso deve avere l’attaccante già in partenza?
User Interaction (UI) None, Passive, Active Qualcun altro deve fare qualcosa?

Attack Requirements è una novità della versione 4.0: separa le condizioni dell’ambiente dalle protezioni da superare. User Interaction ora ha tre valori: Passive indica un’azione ordinaria come aprire una pagina, Active indica che la vittima deve fare qualcosa di insolito.

Le sei successive descrivono il danno al sistema vulnerabile e ai sistemi successivi raggiungibili attraverso di esso:

Metrica Valori
Riservatezza: VC, SC High, Low, None
Integrità: VI, SI High, Low, None
Disponibilità: VA, SA High, Low, None

La versione 3.1 aveva una metrica chiamata Scope per l’effetto su altri sistemi. Era fonte di disaccordo tra chi assegnava i punteggi ed è stata sostituita dalle tre metriche esplicite per i sistemi successivi.

Leggiamo l’esempio

AV:N/AC:L/AT:N/PR:N/UI:N: raggiungibile via rete, nessuna protezione da superare, nessuna condizione particolare, nessun account necessario, nessuno deve cliccare nulla. VC:H/VI:H/VA:H: perdita totale di riservatezza, integrità e disponibilità del sistema vulnerabile. SC:N/SI:N/SA:N: nessun effetto oltre quel sistema.

Questo vettore vale 9.3, gravità critica. Se la stessa vulnerabilità desse anche il pieno controllo dei sistemi che stanno dietro, le ultime tre metriche sarebbero High e il punteggio sarebbe 10.0.

Basta cambiare una lettera e il significato cambia. PR:L al posto di PR:N dice che serve un account: per un servizio pubblico con registrazione libera cambia poco, per un sistema interno cambia molto. Il punteggio cambia molto meno del significato. Ecco perché vale la pena leggere il vettore.

La scala

Livello Punteggio
Nessuna 0.0
Bassa 0.1 – 3.9
Media 4.0 – 6.9
Alta 7.0 – 8.9
Critica 9.0 – 10.0

Minaccia e ambiente

Exploit Maturity (E) è l’unica metrica di minaccia: Attacked, Proof-of-Concept o Unreported. Una vulnerabilità sfruttata in attacchi reali mantiene il suo punteggio; una per cui non è noto alcun exploit ottiene un punteggio più basso.

Le metriche ambientali ti permettono di ridefinire le metriche di base per il tuo deployment e di indicare quanto contano riservatezza, integrità e disponibilità per il sistema interessato. Una vulnerabilità critica in un sistema che non contiene nulla di valore ed è raggiungibile solo da una rete di test non è critica per te, e il punteggio ambientale può mostrarlo.

La versione 4.0 aggiunge anche le metriche supplementari, come Safety, Automatable e Recovery. Descrivono ulteriormente la vulnerabilità e non modificano il punteggio.

Che cosa il punteggio non ti dice

  • Se sarà attaccata. Per le vulnerabilità note, EPSS stima la probabilità di sfruttamento. Gravità e probabilità insieme dicono più di ciascuna delle due da sola.
  • Quanto vale il sistema. Un rilievo di gravità media nel sistema di pagamento può contare più di uno di gravità critica nella copia di staging di una pagina promozionale.
  • Che cosa produce la catena. Tre rilievi di gravità media che, combinati, portano alla presa di controllo di un account sono riportati come tre rilievi di gravità media e come un unico percorso di attacco. Leggi entrambe le cose.

Come usarlo

Ordina prima per punteggio, poi correggi con ciò che sai: il valore dell’asset, l’esposizione a internet, lo sfruttamento noto, le catene descritte nel report. Quando la priorità a cui arrivi è diversa dal punteggio, annota il perché. Un buon report fa lo stesso: riporta il punteggio, il vettore e, dove il tester non è d’accordo con il numero, il motivo.

Come valutiamo e gestiamo i rilievi è descritto nella metodologia.

Richiesta

Dicci che cosa va testato

  • Verifica del sito gratuita
  • Risposta entro 1 giorno lavorativo
  • NDA prima di qualsiasi dettaglio tecnico
  • Prezzo fisso per gli incarichi a pagamento
  • Senza impegno

Richiedi una valutazione

Descrivi i sistemi e l’obiettivo. Un responsabile risponde entro 1 giorno lavorativo con domande di chiarimento e il passo successivo.

A chi rispondere

Rispondiamo a questo indirizzo, se non scegli un altro canale.

Un imprenditore individuale scrive il proprio nome.

Canale preferito
Che cosa valutare
Servizi di interesse

Scegli tutte le opzioni pertinenti.

Verifica gratuita

Verifichiamo gratuitamente il tuo sito

Se non troviamo problemi, ricevi gratuitamente anche il report. Paghi il report solo se troviamo problemi, e il suo prezzo dipende dal loro numero e dalla loro gravità.

Condizioni della verifica gratuita della sicurezza del sito

Sicurezza delle applicazioni

Infrastruttura e cloud

Simulazione di attacco

AI, Web3 e crittografia

Programmi e verifiche

Sicurezza delle applicazioni

Verifica gratuita della sicurezza del sito

Guardiamo il tuo sito dall’esterno, come fa un attaccante, e verifichiamo se può essere violato: impostazioni deboli, software non aggiornato, file esposti, moduli non sicuri. La verifica è gratuita.

Sicurezza delle applicazioni

Penetration test di applicazioni web

Proviamo a violare la tua applicazione web come farebbe un vero attaccante: accedere agli account di altre persone, leggere i dati di altri clienti, modificare prezzi o ordini. Scopri che cosa è possibile prima dei criminali.

Sicurezza delle applicazioni

Test di sicurezza delle API

Un’API è il canale attraverso cui la tua app, il tuo sito e i tuoi partner scambiano dati con i tuoi server. Verifichiamo che nessuno possa usarla per leggere o modificare dati non suoi.

Sicurezza delle applicazioni

Penetration test di applicazioni mobili

Esaminiamo la tua app iOS o Android e i server che la supportano: che cosa l’app conserva sul telefono, che cosa se ne può estrarre e se le sue richieste possono essere manomesse.

Sicurezza delle applicazioni

Revisione di sicurezza del codice

I nostri specialisti leggono il codice sorgente del tuo prodotto e trovano gli errori che portano a una violazione, compresi quelli che non si vedono dall’esterno.

Infrastruttura e cloud

Valutazione della sicurezza di cloud e Kubernetes

Verifichiamo come è configurato il tuo cloud (AWS, Azure, Google Cloud, Kubernetes): chi ha accesso a che cosa, quali dati sono aperti a internet e fin dove arriva un attaccante dopo il primo errore.

Infrastruttura e cloud

Penetration test dell’infrastruttura

Testiamo i tuoi server e la rete del tuo ufficio dall’esterno e dall’interno: se un attaccante può entrare e, una volta dentro, raggiungere il sistema di contabilità, la posta o i backup.

Infrastruttura e cloud

Valutazione della superficie di attacco esterna

Troviamo tutto ciò che la tua azienda espone su internet, compreso ciò che è stato dimenticato: vecchi siti, server di test, password trapelate. Poi mostriamo che cosa di tutto questo può essere attaccato.

Infrastruttura e cloud

Sicurezza di CI/CD e supply chain

Verifichiamo il percorso che il tuo codice compie dallo sviluppatore al cliente: server di build, librerie di terzi, chiavi di accesso. Chi controlla questo percorso controlla il tuo prodotto.

Simulazione di attacco

Operazioni di Red Team

Un’esercitazione su scala reale. Il nostro team interpreta un vero attaccante con un obiettivo, ad esempio arrivare ai dati dei clienti, e tu vedi se la tua difesa se ne accorge e lo ferma.

Simulazione di attacco

Esercitazioni di Purple Team

I nostri attaccanti e i tuoi difensori lavorano fianco a fianco: noi mostriamo una tecnica di attacco, il tuo team controlla se la vede, e le lacune nel monitoraggio vengono chiuse sul momento.

Simulazione di attacco

Test di ingegneria sociale

Testiamo le persone, non le macchine: le email di phishing, le telefonate e i messaggi che gli attaccanti usano per ottenere le password. Scopri quanti dipendenti verrebbero ingannati e su che cosa formarli.

AI, Web3 e crittografia

Test di sicurezza di AI e LLM

Se il tuo prodotto ha un chatbot o un altro modello di AI, verifichiamo se lo si può convincere a rivelare dati riservati, a infrangere le proprie regole o ad agire per conto di qualcun altro.

AI, Web3 e crittografia

Audit di smart contract

Prima che uno smart contract custodisca denaro, cerchiamo nel suo codice gli errori che permetterebbero a qualcuno di prelevare o bloccare i fondi. Una volta pubblicato il contratto, questi errori non si possono più correggere.

AI, Web3 e crittografia

Revisione della crittografia

Verifichiamo come il tuo prodotto cifra i dati e protegge le chiavi: se sono stati scelti gli algoritmi giusti e se vengono applicati correttamente. Un errore qui rende inutile la cifratura.

Programmi e verifiche

Gestione di programmi di bug bounty

Un bug bounty è un programma in cui ricercatori indipendenti cercano vulnerabilità nel tuo prodotto e vengono pagati per ognuna che trovano. Avviamo e gestiamo un programma di questo tipo per te.

Programmi e verifiche

Programma di divulgazione delle vulnerabilità (VDP)

Una pagina pubblica e una procedura che spiegano ai ricercatori come segnalarti una vulnerabilità in modo sicuro. Senza di esse le segnalazioni vanno perse o arrivano sotto forma di minacce. Impostiamo il processo e gestiamo le segnalazioni in arrivo.

Programmi e verifiche

Penetration test continuo

Invece di un test all’anno, testiamo ogni modifica significativa del tuo prodotto durante tutto l’anno, così una nuova vulnerabilità non aspetta mesi per essere trovata.

Programmi e verifiche

Penetration test per la conformità

Un penetration test organizzato in modo che un auditor, un’autorità di vigilanza o un grande cliente ne accetti il report: PCI DSS, DORA, NIS2, ISO/IEC 27001, SOC 2.

Servizi di interesse

Non so ancora

Scegli questa opzione se non sai quale servizio ti serve. Descrivi l’esigenza con parole tue e uno specialista suggerirà il servizio nella risposta.

Dominio o URL del sito o del sistema principale da testare, ad esempio app.example.com.

Che cosa va testato, perché ora, eventuali scadenze o requisiti di conformità. Niente password, chiavi o dettagli di vulnerabilità.

Conferme

Non inviare credenziali, chiavi o dettagli di una vulnerabilità tramite questo modulo. Un canale sicuro viene concordato dopo la prima risposta.

Controllo antiabuso automatico