Di Daren Fulwell
“Quanto è vulnerabile la mia rete?”
Mi occorre solo il firewall giusto?
Non è più sufficiente aggiungere un firewall alla rete per essere certi che sia sicura. Il networking è più invasivo che mai. Ogni giorno si collegano più dispositivi e le reti sono la base per innumerevoli servizi e processi. Così facendo l’esposizione agli attacchi è aumentata e va riconosciuta la necessità di proteggere i sistemi da minacce non solo “esterne”. Gli endpoint “fidati” godono di un accesso privilegiato all’infrastruttura, va accettato che possano essere compromessi. Pertanto, occorre rafforzare l’infrastruttura per difenderci dagli aggressori “privilegiati”.
Così, mentre un dispositivo di sicurezza perimetrale è sempre una buona cosa, altri elementi come l’accesso autenticato, la segmentazione e l’infrastruttura protetta diventano importanti quanto una forte politica di sicurezza del traffico.
Il CVE
E’ basilare garantire che i dispositivi di rete non siano vulnerabili agli attacchi. La Mitre Corporation, sponsorizzata dal governo statunitense, gestisce il programma Common Vulnerability and Exposure (CVE). Il cui scopo è identificare, definire e catalogare le vulnerabilità note pubblicamente. A ogni vulnerabilità è assegnato un codice identificativo, in base al quale è classificata e valutata nel repository centrale, ospitato dal NIST. Le aziende possono accedere ai dati del repository per valutare la loro vulnerabilità.
Di solito i fornitori consegnano questi dati ai clienti, per assisterli durante il ciclo di vita del prodotto. Fino a poco tempo fa, il NIST forniva l’accesso al National Vulnerability Database (NVD) a chiunque lo volesse sotto forma di un file feed. A partire dal giugno 2020, si è optato per l’inoltro di una richiesta REST API, che apre tutta una serie di possibilità. Una sola chiamata API può fornire l’elenco CVE riferito a un particolare modello di una data famiglia di prodotti associati a una specifica versione del codice.
L’inventory
IP Fabric è leader del mercato per la discovery: mappa la vostra rete hop-by-hop in modo automatico, regolarmente, in snapshot programmati. Ogni snapshot contiene l’istantanea della rete, comprensiva di inventario dei dispositivi, versione del codice e così via.
Combinate questi dati con il database CVE e avrete tutto ciò che serve per scoprire quali minacce potrebbero colpire la vostra infrastruttura!
Il Modello
Per fare un passo ulteriore, IP Fabric traccia anche la configurazione distribuita sui dispositivi, la topologia di rete e gli host collegati a un particolare sistema in un dato momento. Utilizzando i metadati del modello IP Fabric, una volta identificati i CVE potenzialmente dannosi, è possibile:
- stabilire se un dispositivo può essere colpito da uno specifico CVE, verificando se è configurato nella funzione interessata;
- identificare l’impatto dell’aggiornamento o della sostituzione dei dispositivi, visualizzando il loro ruolo nella topologia;
- valutare l’impatto di un problema osservando quanti utenti sono connessi allo switch interessato, o sugli AP collegati a un dato dispositivo.
Le API
Utilizzando la completa REST API di IP Fabric, i dati nel modello sopradescritto sono facilmente estraibili dalla piattaforma. Si crea un token API e si invia una richiesta POST all’endpoint API ‘tables/inventory/devices’ sul server IP Fabric, per recuperare l’inventario dallo snapshot richiesto, ad esempio:
curl “https://demoX.ipfabric.io/api/v1/tables/inventory/devices” -X POST -H “X-API-Token: XXXXXXXXXXXX” -d ‘{“columns”:[“hostname”,”vendor”,”family”,”version”],”snapshot”:”$last”}’
Da questo output, si può eseguire un ciclo attraverso l’elenco dei dispositivi e assemblare una richiesta per cercare nel database NIST, ad esempio:
curl “http://services.nvd.nist.gov/rest/json/cves/1.0?cpeMatchString=cpe:2.3:*:<vendor>:<family>:<version>”
Questo restituisce una struttura dati JSON, contenente l’elenco dei CVE che si applicano al dispositivo in questione. Per ogni voce CVE sono disponibili descrizione, fonte della segnalazione, classificazione del livello di minaccia e così via. Usando uno script per la chiamata API, si può continuare l’elaborazione dell’elenco per incrociare l’impatto dei CVE con il ruolo e lo stato dei dispositivi nel modello di IP Fabric.
Esempio
Sul githb repo di IP Fabric’s #CommunityFabric c’è un esempio di script che esegue queste chiamate a IP Fabric e al database NIST per voi. Utilizza un API Client davvero semplice che mantiene il codice leggibile e facile da modificare.
Visitate https://github.com/community-fabric/integration-demos/api_clients/vuln_ipf.py dove troverete il video sul nostro canale Youtube (https://youtube.com/c/ipfabric) che mostra in modo dettagliato come usare lo script.