Il riferimento all'utilizzo di tecniche di automazione ed eventualmente di AI (Artificial Intelligence) è diventato prassi comune nell’indirizzare molte problematiche di analisi dei dati da cui trarre indicazioni sui comportamenti futuri di sistemi complessi.
In realtà la possibilità per un sistema di reagire autonomamente a eventi particolari in modo da standardizzare il comportamento è qualcosa presente in molti dispositivi da tempo. In queste note esamineremo un esempio delle funzionalità disponibili su alcuni nodi delle reti di impresa (ad oggi tutte basate sul protocollo IP) che permettono
Il riconoscimento di uno specifico evento
La creazione di una policy da applicare in caso si verifichi l’ evento in oggetto
L’ applicazione della policy al sistema con la seguente modifica del comportamento dello stesso.
Tutti i principali vendor di dispositivi di rete IP (Cisco Systems, Juniper Networks, Arista Networks,…) offrono, con nomi diversi, una tale funzionalità.
Senza entrare nello specifico di ciascun sistema vorrei semplicemente illustrare il principio di funzionamento per offrire un'idea di come esistano, anche nel campo dei dispositivi di rete, strumenti e funzionalità che permettono l’ automazione dei comportamenti dei nodi a fronte di specifici eventi.
La diffusione di questi strumenti potrebbe portare anche a soluzioni che, in sinergia con tecniche di sicurezza basate su AI (vedi articolo) permettano di intervenire con efficacia a fronte di specifici problemi evitando che la minaccia o il tentativo di compromissione possa raggiungere i sistemi finali (Server o Postazioni di lavoro Individuali).
Farò quindi riferimento ad un ipotetico dispositivo di rete che offra queste funzionalità. Il nodo in oggetto fornisce un ambiente di sviluppo focalizzato proprio sull’ implementazione di tali funzionalità. Molto spesso questo ambiente è sviluppato sulla base di un sistema Linux ottimizzato per essere eseguito su di un processore “ausiliario” all’interno del nodo di rete. Il grande vantaggio di una tale soluzione deriva dal poter sfruttare molte (anche se non tutte) delle librerie e dei linguaggi disponibili in ambito Linux. Oltre a ciò va aggiunta la possibilità, offerta dai costruttori del nodo di rete, di accedere alle principali caratteristiche di utilizzo del nodo stesso da questo ambiente Linux.
E’ possibile quindi accedere a specifici parametri delle interfacce tramite una libreria (fornita dal costruttore) che permette di conoscere, ad esempio, il numero di pacchetti transitati in ingresso-uscita da una specifica porta oppure identificare i pacchetti malformati (troppo grandi o troppo piccoli o con errori,…). Queste funzionalità non si limitano alle caratteristiche dell’interfaccia, ma possono interessare altri sottosistemi del nodo come il livello di routing o alcune delle caratteristiche fisiche del sistema (temperatura, stato delle ventole, etc).
Posso quindi definire uno specifico evento sulla base del verificarsi di una predeterminata condizione : superamento del numero di errori di CRC su di una porta, modifica di una tabella di routing, superamento di un valore di soglia per quanto riguarda la temperatura del sistema, il carico della CPU o l’occupazione della memoria.
A questo punto, l’ evento così definito può essere usato come innesco (trigger) di una specifica azione (policy): disabilitare una porta, mandare un messaggio (in modalità diverse) all’amministratore di sistema, intervenire sulla configurazione per cambiare una rotta di default e cosi via.
Tutte le azioni possono essere eseguite tramite degli script o dei programmi eseguibili, tipicamente i sistemi offrono la possibilità di utilizzo dei principali linguaggi quindi Python, Perl, Ruby e di un ambiente nativo basato sulla propria interfaccia comandi.
Questa funzionalità apre tutta una serie di possibili implicazioni molto interessanti anche sotto l’ aspetto della sicurezza delle reti. Qualora fosse possibile, utilizzando strumenti esterni al sistema e basati su AI nell’ottica definita dall’articolo citato, istruire opportunamente e comunicare al sistema la presenza di una possibile minaccia così identificata sarebbe possibile intervenire immediatamente (o in tempi estremamente brevi) bloccando la specifica connessione e al contempo intervenire sulla configurazione stessa del sistema attuando una specifica policy definita in precedenza.
In questo modo potrebbe essere possibile, ad esempio, isolare uno specifico dominio, ritenuto non affidabile, garantendo al contempo il mantenimento della connettività a livello globale.
Naturalmente le sinergie tra gli apparati di rete e i sistemi di sicurezza sono oggetto di analisi e sviluppi da parte di tutti i principali vendor che sono in grado di offrire strumenti di identificazione e contenimento delle minacce informatiche, che opportunamente configurati ed utilizzati, risultano essere molto efficaci.
Giorgio Tosi
Per approfondire:
https://www.difesaonline.it/evidenza/cyber/deep-instinct-dalla-rilevazione-alla-prevenzione