← Tutti i cheatsheet

eJPT · Vulnerability Assessment

CVE e CVSS Scoring

Difficoltà: Beginner Time to Master: 1h Prerequisiti: nessuno Lab: riferimento teorico trasversale


Obiettivo

Uno scan Nessus può restituirti facilmente 50 findings in un colpo: se non sai leggere CVE, CWE e CVSS, ti ritrovi a scegliere a caso da dove partire, o peggio a inseguire il finding più “spaventoso” nel nome invece di quello più critico nei fatti. Qui impari a decodificare quei tre acronimi in modo da poter aprire un report e capire in trenta secondi cosa attaccare/riportare per primo.


Concetti chiave

CVE, CWE, CVSS: cosa sono

Sigla Significato Esempio
CVE Common Vulnerabilities and Exposures: identificativo univoco di una vulnerabilità specifica CVE-2017-0143 (EternalBlue)
CWE Common Weakness Enumeration: categoria generica del tipo di debolezza CWE-89 (SQL Injection)
CVSS Common Vulnerability Scoring System: punteggio numerico di severità (0-10) 9.8 CRITICAL

Il modo più semplice per non confonderli: un CVE descrive UNA vulnerabilità specifica in UN prodotto/versione; una CWE descrive la classe di debolezza in generale, indipendente dal prodotto; il CVSS assegna un punteggio comparabile a qualsiasi CVE, così puoi confrontare due bug completamente diversi sulla stessa scala.

Componenti principali CVSS v3.1

Metrica Valori Significato
Attack Vector (AV) Network/Adjacent/Local/Physical da dove si può lanciare l’attacco
Attack Complexity (AC) Low/High quanto è difficile sfruttarla
Privileges Required (PR) None/Low/High privilegi necessari prima dell’attacco
User Interaction (UI) None/Required serve azione della vittima?
Scope (S) Unchanged/Changed l’exploit impatta solo il componente vulnerabile o anche altri
Confidentiality/Integrity/Availability (C/I/A) None/Low/High impatto su riservatezza/integrità/disponibilità

Severity rating

Score Rating
0.0 None
0.1 - 3.9 Low
4.0 - 6.9 Medium
7.0 - 8.9 High
9.0 - 10.0 Critical

Strumenti

Tool Comando base Output Note
NVD ricerca su nvd.nist.gov scheda CVE completa con vector string fonte ufficiale
searchsploit searchsploit <prodotto> <versione> exploit pubblici collegati vedi ../08-Exploitation-PostEx/01-Manual-Exploitation-Searchsploit.md
CVSS Calculator calculator.nvd.nist.gov calcolo interattivo score da vector string utile per capire come cambia lo score modificando una metrica

Payload / Esempi

Esempio 1: leggere un vector string CVSS

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Spiegazione: attaccabile da rete (AV:N), bassa complessità (AC:L), nessun privilegio richiesto (PR:N), nessuna interazione utente (UI:N), scope cambiato (S:C), impatto alto su riservatezza/integrità/disponibilità (C:H/I:H/A:H): tipico di una RCE non autenticata critica come MS17-010, score 9.8.

Esempio 2: cercare il CVE di un servizio identificato

searchsploit vsftpd 2.3.4

Output atteso:

--------------------------------------------------- ---------------------------------
 Exploit Title                                      |  Path
--------------------------------------------------- ---------------------------------
vsftpd 2.3.4 - Backdoor Command Execution           | unix/remote/49757.py

Spiegazione: una volta identificata versione esatta di un servizio (vedi ../02-Footprinting-Scanning/04-Service-Version-OS-Detection.md), la si incrocia con database di exploit pubblici per capire se esiste un CVE sfruttabile.

Esempio 3: prioritizzare findings da un report Nessus

Finding A: CVSS 9.8 - SMB RCE non autenticata
Finding B: CVSS 5.3 - SSL certificate self-signed
Finding C: CVSS 7.5 - Directory listing abilitato con file sensibili

Spiegazione: in un esame/engagement con tempo limitato, si attacca prima A (RCE critica), poi si valuta C (accesso a informazioni sensibili), lasciando B come nota minore nel report finale.


Lab Hands-On

Lab 1: TryHackMe, Vulnerability Research

Obiettivo: dato un output di scan (nmap/Nessus), identificare CVE e calcolare/interpretare il CVSS score Difficulty: Facile Time: 30 min

Walkthrough breve:

  1. Prendi 3 servizi con versione nota da uno scan precedente
  2. Cerca CVE noti su NVD per ciascuno
  3. Confronta i CVSS score e ordina per priorità di sfruttamento

Common Mistakes

  • Confondere CVE (istanza specifica) con CWE (categoria generale) nel report finale
  • Ignorare la metrica Scope (S) -> uno score alto con S:C indica che l’impatto va oltre il componente vulnerabile, importante per la valutazione del rischio
  • Fidarsi solo del punteggio senza leggere la descrizione -> due CVE con score simile possono avere impatti pratici molto diversi


Connessioni


Checklist di padronanza

  • So distinguere CVE, CWE e CVSS
  • So leggere un vector string CVSS v3.1
  • So associare uno score a una severity rating
  • So usare searchsploit/NVD per collegare un servizio a un CVE noto