Debiti di sicurezza e vulnerabilità: come affrontare il problema

Fortunatamente, solo il 3% di tutte le vulnerabilità costituisce un debito di sicurezza di livello critico.

vulnerabilità

L’accumulo di debiti di sicurezza rappresenta una vulnerabilità per le aziende. Chris Wysopal, Co-founder e Chief Technology Officer di Veracode, dà alcuni suggerimenti su come è possibile tenere il debito di sicurezza sotto controllo.

La maggior parte delle organizzazioni si trova a dover gestire un pesante debito di sicurezza che le rende vulnerabili agli attacchi, con la potenziale aggravante di non esserne per forza consapevole. Secondo l’annuale report SoSS (State of Software Security) di Veracode, che ha esaminato oltre un milione di applicazioni sotto vari aspetti, il 70% delle organizzazioni e il 42% delle applicazioni presentano un debito di sicurezza, ovvero una vulnerabilità presente da oltre un anno, tipicamente accumulato nel corso del tempo.

Debiti di sicurezza e vulnerabilità

Debito ulteriormente accelerato dalle trasformazioni digitali e dall’introduzione di strumenti di codifica AI che aumentano la velocità di sviluppo. Le applicazioni stesse, nel frattempo, sono cresciute di circa il 40% nel corso degli anni, indipendentemente dalle loro dimensioni originali. Andando ad accumulare difetti e problematiche, di pari passo con il loro utilizzo.

Migliorare la formazione

Si tratta di un tema particolarmente sentito, dopo la definizione e l’adozione di precise indicazioni normative. Come il Cyber Resilience Act dell’UE, che hanno evidenziato il peso della cybersecurity in azienda e la consapevolezza sui rischi derivanti dalla presenza di codice non sicuro su larga scala. Tuttavia, prima ancora di poter affrontare il problema con qualche probabilità di successo, è necessario operare per migliorare la formazione del personale IT sul debito di sicurezza.

Rimuovere gli elementi di rischio

Il report ha rilevato che il 71% delle organizzazioni presenta una qualche forma di debito di sicurezza. Per quasi la metà di esse (46%) può essere definito di livello critico, derivante da falle di elevata gravità persistenti nel tempo, che generano gravi rischi per l’azienda. L’estesa adozione di codice di terze parti nelle librerie open-source ha contribuito in modo significativo alla crescita di questo debito. Mentre il 63% delle applicazioni presenta vulnerabilità nel codice di prima parte, il 70% ne contiene in quello di terze parti.

Debiti di sicurezza e vulnerabilità: come affrontare il problema

Quest’ultima tipologia di falle ha anche un impatto maggiore sulla risoluzione dei problemi, in quanto la sua correzione richiede il 50% in più di tempo rispetto a quelle di prima parte. La metà delle vulnerabilità accertate nel codice open-source di terze parti è rimasta irrisolta per più di 11 mesi, a differenza dei sette mesi necessari per le falle presenti nel codice di prima parte.

Correggere la vulnerabilità

Il tempo necessario per correggere le vulnerabilità è fondamentale per ridurre il debito. La nostra ricerca dimostra che i team che risolvono le falle più velocemente riducono il debito di sicurezza del 75%, rispetto ai team più lenti, quelli più veloci lo riducono dal 22% a poco più del 5%. Inoltre, i team più rapidi hanno 4 volte meno probabilità di far nascere un debito di sicurezza critico nelle loro applicazioni. Nel complesso, comunque, sono ancora pochi i team che stanno affrontando la correzione del le vulnerabilità con la rapidità necessaria a garantire una sostanziale riduzione del debito di sicurezza. Solo il 64% delle applicazioni dimostra una capacità di correzione sufficiente a eliminare il debito di sicurezza di livello critico. Anche quando i team hanno un tasso di correzione complessivo sufficiente, non sempre riescono a correggere le falle più critiche.

La prioritizzazione del rischio è essenziale

Quando il ritmo di crescita delle nuove vulnerabilità e di quelle esistenti supera la capacità di un’organizzazione di porvi rimedio, è essenziale stabilire quali falle debbano essere risolte per prime. Attualmente, è possibile che gli sviluppatori scelgano le vulnerabilità più facili da correggere, nell’interesse di applicare le correzioni più rapidamente. Mentre trascurano quelle che avranno un impatto maggiore sull’azienda. Per questo motivo, è necessario un ripensamento generale della strategia di approccio. Fortunatamente, solo il 3% di tutte le vulnerabilità costituisce un debito di sicurezza di livello critico, che rappresenta il rischio maggiore per le applicazioni aziendali. Per la maggior parte dei team di sviluppo, correggere il 3% delle falle è un obiettivo assolutamente raggiungibile.

Il debito di sicurezza: correggere le vulnerabilità più velocemente

Anche dando la priorità alle falle più gravi, i team devono comunque correggere le vulnerabilità più rapidamente se vogliono ridurre o eliminare in modo significativo il debito di sicurezza. L’intelligenza artificiale, spesso descritta come una potenziale minaccia per la sicurezza informatica, consente di accelerare il processo di correzione del codice. Ad esempio modelli linguistici di grandi dimensioni (LLM) addestrati su CWE (Common Weakness Enumeration) possono essere particolarmente efficaci nel lavorare a fianco degli sviluppatori per suggerire fix su scala sicuri.

Debito di sicurezza e vulnerabilità

Questa tipologia di scalabilità è necessaria per superare gli attuali limiti della capacità di correzione, dove le nuove applicazioni e le relative vulnerabilità vengono spesso introdotte più velocemente di quanto i team riescano a rimediare alle falle. L’implementazione dell’intelligenza artificiale per potenziare le correzioni offre molta velocità ed efficienza al processo. Liberando al contempo gli sviluppatori per concentrarsi maggiormente su progetti che producono valore per l’azienda.

Ridurre il debito di sicurezza

L’accumulo di debiti di sicurezza rappresenta per le organizzazioni una minaccia seria, e spesso invisibile. Minaccia che molto probabilmente continuerà a crescere con l’aumento dell’uso dell’intelligenza artificiale e di codice di terze parti. Le organizzazioni e gli sviluppatori che lavorano per ridurre il debito di sicurezza devono considerare il tempo e il denaro che stanno dedicando ai team di sicurezza e alla loro formazione. Un altro aspetto è legato alla visione complessiva del problema. Troppo spesso la correzione delle falle non è guidata da persone che pensano alla gestione del rischio, e questo è un altro motivo per cui il debito di sicurezza è così elevato. L’identificazione e la prioritizzazione dei rischi più critici e la formazione degli sviluppatori e dei modelli di intelligenza artificiale affinché collaborino alla correzione su scala possono aiutare le aziende a tenere sotto controllo il debito di sicurezza.