OpenVas: framework per l’analisi di vulnerabilità
In questa lezione osserveremo da vicino OpenVas (Open Vulnerability Assessment System), un framework completamente gratuito per l’analisi e la gestione delle vulnerabilità.
OpenVas automatizza oltre 50000 differenti test di vulnerabilità, detti in gergo NVT (Network Vulnerability Test). Tali test vengono aggiornati con cadenza giornaliera dalla comunità, con priorità massima data alle vulnerabilità gravi.
L’interfaccia grafica è offerta gratuitamente da Greenbone Networks, una soluzione commerciale per l’analisi delle vulnerabilità. La stessa azienda fornisce inoltre il supporto per l’aggiornamento incrementale della base di dati relativa agli NVT.
Architettura
L’architettura è suddivisa in tre livelli: services, data, clients.
Il cuore vero e proprio è costituito dal livello dei servizi, como da:
- scanner: si occupa di eseguire i test di vulnerabilità verso i cosiddetti “target” (host su internet);
- manager: la parte “intelligente” del sistema che si occupa di interloquire con i client di OpenVas, memorizzare i dati e gestire gli utenti del sistema (divisi in gruppi e ruoli).
Il livello clients consente di interagire con il manager, mettendo a disposizione:
- Greenbone Security Assistant: una comoda interfaccia grafica che consentirà di configurare il sistema nella sua interezza;
- CLI: l’interfaccia a riga di comando, meno intuitiva e quindi sconsigliata per chi è alle prime armi con OpenVas.
Infine il livello data consiste in un database SQLite, contenente:
- NVT: la lista dei test effettuabili dallo scanner;
- Configs, Results: la configurazione del sistema, i dati sui risultati delle scansioni, e i dati degli utenti del sistema.
Configurazione
OpenVas è preinstallato nelle ultime versioni di Kali Linux. Tuttavia, è sempre bene effettuare l’aggiornamento del database degli NVT prima di avviarlo. Per fare ciò, utilizziamo il comando seguente:
A questo punto, prima di avviare OpenVas, è preferibile effettuare un test di verifica con lo script fornito dalla casa produttrice. Scarichiamo il codice (script bash), copiamolo su un file check-openvas.sh ed eseguiamolo da linea di comando:
Dovremmo quindi visualizzare un messaggio che ci avvisa che OpenVas funziona correttamente. In caso contrario, lo script stesso suggerirà come correggere gli errori di installazione.
Avvio di OpenVas
Avviamo OpenVas dalla shell:
Apriamo quindi il browser all’indirizzo https://127.0.0.1:9392. Dovremmo visualizzare la seguente interfaccia di login:

Inseriamo le credenziali “admin” (username) e “admin” (password) per visualizzare l’interfaccia grafica:
Utilizzo dell’interfaccia grafica
L’interfaccia mette a disposizione diversi comandi di configurazione. Potremo comunque utilizzare immediatamente lo strumento di vulnerability analysis, digitando l’indirizzo dell’host che vogliamo controllare all’interno dell’apposita casella di testo, e cliccando sul pulsante Start scan:
L’utilizzo di questo strumento effettuerà in modo automatico:
- la creazione di un nuovo target, con una lista di porte di default da verificare;
- la creazione di un task di esecuzione dei test, con la configurazione di default;
- l’avvio automatico dei test;
- l’aggiornamento dello stato di esecuzione dei test.
Terminata la scansione, verrà generato un report contenente i risultati degli NVT. Cliccando sul numero del report, apriremo una vista dettagliata che indica il numero di vulnerabilità scoperte.