Machine learning: perché è difficile applicarlo all’offensive security

Il campo dell’offensive security è lo sviluppo di strumenti automatici per attaccare un sistema


Machine learning: perché è difficile applicarlo all’offensive security

20 Gennaio 2022

Il campo dell’offensive security è lo sviluppo di strumenti automatici per attaccare un sistema. Ed è uno di quelli in cui più difficilmente possono essere applicate le reti neurali e più in generale il machine learning. Vediamo perché, attraverso un lavoro basato su un sistema di emulazione automatica di attacco

Negli ultimi anni stiamo assistendo ad una penetrazione sempre più pervasiva delle tecniche di machine learning, in particolare del deep learning, ai settori più diversi e lontani che vanno dal riconoscimento di immagini al controllo della produzione ed ai sistemi di riconoscimento di intrusioni. Possono perciò destare una qualche sorpresa alcuni risultati negativi che questo lavoro presenta. Rispetto alla possibilità di apprendere in modo automatico il modo ottimo di attaccare un qualsiasi sistema. Il qualsiasi è molto importante perché è invece possibile scoprire ed apprendere il modo migliore di attaccare uno specifico sistema. In altre parole, una piattaforma software può imparare come si attacca un sistema ma non ancora come imparare ad attaccare un qualsiasi sistema. Di conseguenza, uno dei campi in cui le reti neurali e più in generale il machine learning possono attualmente essere applicate più difficilmente è quello della offensive security ovvero lo sviluppo di strumenti automatici per attaccare un sistema.

L’offensive security [3] è un settore importante della sicurezza informatica perché ci permette di capire se e come un sistema potrà essere attaccato. Questo è fondamentale per scoprire quali delle vulnerabilità del sistema permettono agli attaccanti di ottenere successo. Lo sviluppo di piattaforme per attaccare in modo automatico uno specifico sistema è ormai allo stato dell’arte. Lo conferma l’uso sempre più diffuso di queste piattaforme in attacchi reali. Applicare una qualche forma di learning alla offensive security vuol dire una cosa. Ossia, sviluppare una piattaforma in grado non solo di attaccare un sistema, ma anche di imparare il modo migliore di attaccare sistemi diversi.

Le potenzialità del learning per offensive security

Per analizzare le potenzialità del learning per offensive security partiamo dallo stato dell’arte della offensive security. Uno strumento attualmente molto utilizzato è il penetration test. In un penetration test si incarica un red team esterno, privo di informazioni, di attaccare una rete enterprise. Poi, si cerca di utilizzare le informazioni su vulnerabilità e difese inefficaci restituite dal test per migliorare il sistema.

C’è un grande tasso di successo degli attaccanti su sistemi che hanno superato il penetration test. Dunque, è ovvio che questa soluzione anche se utilizzata da alcuni decenni presenta dei difetti strutturali. Essi sono dovuti sia alla non ripetibilità degli esperimenti, sia alla difficoltà di trattare un sistema dinamico come perfettamente conoscibile. La non riproducibilità degli esperimenti dipende dal fatto che una volta che il team ha raccolto le informazioni sul sistema non può ripetere il test. Difatti, conosce già il sistema target.

Quindi ripetere il test per trovare altri difetti richiede un team diverso. La dinamicità dipende dal fatto che se si modifica il sistema, ad esempio eliminando delle vulnerabilità, il comportamento degli attaccanti cambia. Questo perché il sistema è cambiato e già può portare al paradossale effetto di peggiorare la robustezza di un sistema. Difatti, le modifiche hanno favorito nuovi, e più efficaci, comportamenti dell’attaccante.

Leggi l’articolo completo su: Agenda Digitale.