Il Vulnerability Assessment (VA) è il processo di definizione, identificazione, classificazione e priorità delle vulnerabilità nei sistemi informatici, nelle applicazioni e nelle infrastrutture di rete.
Le valutazioni delle vulnerabilità forniscono inoltre a un'organizzazione le conoscenze, la consapevolezza e il background di rischio necessari per comprendere e reagire alle minacce al suo ambiente.
Un processo di valutazione della vulnerabilità ha lo scopo di identificare le minacce ei rischi che esse comportano. In genere implicano l'uso di strumenti di test automatizzati, come scanner di sicurezza di rete, i cui risultati sono elencati in un rapporto di valutazione della vulnerabilità.
Le organizzazioni di qualsiasi dimensione, o anche le persone che affrontano un rischio maggiore di attacchi informatici, possono trarre vantaggio da qualche forma di valutazione della vulnerabilità, ma le grandi imprese e altri tipi di organizzazioni soggette ad attacchi continui trarranno il massimo vantaggio dall'analisi della vulnerabilità.
Poiché le vulnerabilità della sicurezza possono consentire agli hacker di accedere ai sistemi e alle applicazioni IT, è essenziale che le aziende identificano e pongano rimedio ai punti deboli prima che possano essere sfruttati. Una valutazione completa della vulnerabilità, insieme a un programma di gestione , può aiutare le aziende a migliorare la sicurezza dei propri sistemi.
Una vulnerabilità può essere definita in due modi:
- Un bug nel codice o un difetto nella progettazione del software che può essere sfruttato per causare danni.
- Una lacuna nelle procedure di sicurezza o una debolezza nei controlli interni che, se sfruttata, si traduce in una violazione della sicurezza.
Una valutazione della vulnerabilità fornisce a un'organizzazione i dettagli su eventuali punti deboli della sicurezza nel suo ambiente. Fornisce inoltre indicazioni su come valutare i rischi associati a tali debolezze. Questo processo offre all'organizzazione una migliore comprensione delle proprie risorse, dei difetti di sicurezza e del rischio complessivo, riducendo la probabilità che un criminale informatico violi i suoi sistemi e colga l'azienda alla sprovvista.
L’esecuzione di un VA è quindi finalizzata all’individuazione di diversi tipi di vulnerabilità presenti nel sistema o nella rete. Il processo di valutazione, per poter essere esaustivo, deve includere l’utilizzo di una varietà di strumenti, scanner e metodologie, finalizzati ad identificare vulnerabilità, minacce e rischi.
Tra i diversi tipi di scansioni finalizzate al Vulnerability Assessment, le più importanti includono:
Valutazione dell'host (Host Scan): la valutazione dei server critici, che possono essere vulnerabili agli attacchi se non adeguatamente testati.
Valutazione di reti e wireless (Network & Wireless scan): la valutazione di politiche e pratiche per impedire l'accesso non autorizzato a reti private o pubbliche e risorse accessibili in rete. L’analisi delle reti Wi-Fi di un’organizzazione di solito si concentra sull’individuazione dei punti di più facile intrusione e attacco nell’infrastruttura di rete wireless. Oltre ad identificare i punti di accesso non autorizzati, una scansione della rete wireless verifica anche che la rete aziendale sia configurata in modo sicuro, valutando politiche e pratiche per prevenire gli accessi non autorizzati al sistema e alle risorse di rete.
Valutazione del database (Database Scan): la valutazione di database o sistemi di big data per vulnerabilità e configurazioni errate, identificazione di database non autorizzati o ambienti di sviluppo/test non sicuri e classificazione dei dati sensibili nell'infrastruttura di un'organizzazione.
Scansioni delle applicazioni (Application Scan): l'identificazione delle vulnerabilità di sicurezza nelle applicazioni Web e del relativo codice sorgente mediante scansioni automatizzate sul front-end o analisi statica/dinamica del codice sorgente.
Il processo di scansione della sicurezza si compone di quattro fasi: test, analisi, valutazione e correzione.
1. Identificazione della vulnerabilità (test)
L'obiettivo di questo passaggio è redigere un elenco completo delle vulnerabilità di un'applicazione. Gli analisti della sicurezza testano lo stato della sicurezza di applicazioni, server o altri sistemi scansionandoli con strumenti automatizzati o testandoli e valutandoli manualmente. Gli analisti si affidano anche a database di vulnerabilità, annunci di vulnerabilità dei fornitori, sistemi di gestione delle risorse e feed di intelligence sulle minacce per identificare i punti deboli della sicurezza.
2. Analisi delle vulnerabilità
L'obiettivo di questa fase è identificare l'origine e la causa principale delle vulnerabilità identificate nella fase uno.
Implica l'identificazione dei componenti di sistema responsabili di ciascuna vulnerabilità e la causa principale della vulnerabilità. Ad esempio, la causa principale di una vulnerabilità potrebbe essere una vecchia versione di una libreria open source. Ciò fornisce un percorso chiaro per la riparazione: l'aggiornamento della libreria.
3. Valutazione del rischio (assessment)
L'obiettivo di questo passaggio è la definizione delle priorità delle vulnerabilità. Implica gli analisti della sicurezza che assegnano un grado o un punteggio di gravità a ciascuna vulnerabilità, in base a fattori quali:
- Quali sistemi sono interessati.
- Quali dati sono a rischio.
- Quali funzioni aziendali sono a rischio.
- Facilità di attacco o compromesso.
- Gravità di un attacco.
- Potenziale danno a causa della vulnerabilità.
4. Bonifica
L'obiettivo di questa fase è colmare le lacune di sicurezza. Si tratta in genere di uno sforzo congiunto del personale di sicurezza, dei team di sviluppo e operativi, che determinano il percorso più efficace per la correzione o l'attenuazione di ciascuna vulnerabilità.
Le fasi di riparazione specifiche potrebbero includere:
- Introduzione di nuove procedure, misure o strumenti di sicurezza.
- L'aggiornamento di modifiche operative o di configurazione.
- Sviluppo e implementazione di una patch di vulnerabilità.
La valutazione delle vulnerabilità non può essere un'attività una tantum. Per essere efficaci, le organizzazioni devono rendere operativo questo processo e ripeterlo a intervalli regolari. È inoltre fondamentale promuovere la cooperazione tra i team di sicurezza, operativi e di sviluppo, un processo noto come DevSecOps.