Skip to main content
  1. Concetti/

Vulnerability Assessment - Credentialed vs Non-Credentialed

·4 mins
Alessio Barnini
Author
Alessio Barnini
Table of Contents

Mappa globale - Vulnerability Assessment
#

Che cos'e' un Vulnerability Assessment
#

Un vulnerability assessment e' il processo sistematico per identificare, analizzare e documentare le debolezze di sicurezza in sistemi, reti e applicazioni. L'obiettivo e' valutare la security posture dell'organizzazione e produrre un report con le vulnerabilita' trovate e le raccomandazioni per risolverle.

A differenza del penetration test, il vulnerability assessment si ferma all'identificazione: non sfrutta attivamente le falle trovate.

scanning-testing-attack-surface.webp

Il processo tipico:

  1. Definire lo scope (quali sistemi, quali reti)
  2. Raccogliere informazioni (asset inventory, versioni software)
  3. Eseguire la scansione automatica
  4. Analizzare i risultati ed eliminare i falsi positivi
  5. Produrre il report con CVE e CVSS score
  6. Raccomandare remediation prioritizzate

Credentialed vs Non-Credentialed
#

La distinzione fondamentale tra i due tipi di scan e' il livello di accesso al sistema target. Questa differenza impatta direttamente la qualita' dei risultati e il numero di falsi positivi.

AspettoCredentialedNon-Credentialed
AccessoAccount admin (SSH, WMI)Nessuna credenziale
Visibilita'Versioni esatte, config internePorte aperte, banner, comportamento esterno
AccuratezzaAltaMedia-bassa
Falsi positiviPochiMolti
ProspettivaDifensore dall'internoAttaccante esterno
Usa perAudit interno, complianceVedere cosa vede l'attaccante

Gli attaccanti tipicamente iniziano non-credentialed. Dopo privilege escalation, possono eseguire scan credentialed anche loro. Per questo molti team security eseguono entrambi i tipi: il credentialed per l'audit interno, il non-credentialed per vedere la superficie esposta.

Dev parallel: e' la differenza tra npm audit/composer audit eseguito localmente con accesso a package-lock.json o composer.lock (credentialed: vede esattamente le versioni installate, zero ambiguita') e uno scanner black-box che colpisce il tuo endpoint pubblico cercando di indovinare framework e versioni dai response header (non-credentialed, lo stesso banner grabbing). Un Nessus puntato sul tuo IP pubblico senza login e' non-credentialed; uno scan nella pipeline CI con accesso al codice e' credentialed.

Active vs Passive Scanning
#

Oltre alla distinzione credentialed/non-credentialed, gli scan si differenziano anche per il metodo di raccolta dati.

TipoCome funzionaProContro
ActiveInvia probe attivi, interroga i target direttamenteRisultati completi e aggiornatiPuo' impattare i sistemi, genera traffico visibile
PassiveOsserva il traffico esistente, nessuna interazioneZero impatto, invisibileMeno completo, dipende dal traffico presente

Agent-Based vs Agentless
#

La terza dimensione degli scan riguarda il deployment: il software di scanning gira localmente sull'endpoint (agent-based) o si connette da remoto (agentless).

Dev parallel: e' la distinzione tra un sidecar container (agent-based: gira sempre accanto all'applicazione, raccoglie metriche in tempo reale, va aggiornato) e un init container o script di avvio (agentless: gira al bootstrap, fa quello che deve, si ferma). In cloud, CrowdStrike Falcon e' tipicamente agent-based (daemon permanente sul host); un controllo di compliance che interroga l'API di AWS Config al momento del check e' agentless. Per il Wazuh agent nel lab vedi wazuh-architecture.

Tool principali
#

I vulnerability scanner principali che compaiono all'esame Security+:

ToolVendorNote
NessusTenableIl piu' diffuso, basato su plugin, supporta credentialed e agentless. AutoNessus automatizza gli scan
OpenVASGreenboneOpen source, fork di Nessus originale
QualysQualysCloud-based, spesso usato in ambienti enterprise
Rapid7 InsightVMRapid7Integra remediation workflow, agent-based disponibile

Keyword esame per Nessus: "nessun software da mantenere" indica tipicamente la modalita' agentless.

Output e Prioritizzazione
#

L'output di una vulnerability scan include CVE identificate, CVSS score, versioni vulnerabili e raccomandazioni di remediation. Il CVSS score e' il punto di partenza per la prioritizzazione, ma non basta da solo: va combinato con il contesto (vedi cvss).

responding-to-vulnerabilities-flowchart.webp

Un risultato va sempre verificato prima di agire: eliminare i falsi positivi e' parte essenziale del processo. Solo dopo la verifica la remediation entra nel change control process aziendale.

Tipo di risultatoSignificatoAzione
True PositiveVulnerabilita' reale trovataRemediation
False PositiveAlert su qualcosa che non e' una vulnEliminare dal report
True NegativeNessuna vuln, correttamente non segnalato-
False NegativeVuln reale non trovataIl caso peggiore: falsa sensazione di sicurezza

Dev parallel: un false positive in uno scanner e' uguale a un flaky test che fallisce su codice corretto. Un false negative e' il test che resta verde su codice rotto in produzione - il caso peggiore perche' da' falsa sicurezza. Stesso discorso per SonarQube/PHPStan: una regola troppo aggressiva genera false positive (rumore), una troppo permissiva genera false negative.

Related