Le violazioni zero-day rappresentano una delle sfide più scoraggianti nel campo della sicurezza informatica. Queste vulnerabilità, sconosciute agli editori e quindi prive di patch, offrono agli aggressori l’opportunità di infiltrarsi nei sistemi prima che vengano implementate patch e misure difensive. E se l’intelligenza artificiale potesse aiutare gli sviluppatori a individuarli prima che i cyberattaccanti se ne impadroniscano?
Sappiamo che l’intelligenza artificiale, tramite i modelli LLM, si sta rivelando sempre più utile per la codifica e per assistere gli sviluppatori non solo nella scrittura di righe di codice, ma anche nella ricerca di potenziali bug.
E se l’intelligenza artificiale potesse essere addestrata e utilizzata anche per rilevare automaticamente i difetti zero-day nei codici esistenti? Questa è la domanda a cui il team Big Sleep di Google, in collaborazione con Google DeepMind, ha voluto rispondere. In un rapporto scientifico, ha appena dimostrato tutto il potenziale dell’intelligenza artificiale in questo settore scoprendo una nuova vulnerabilità in SQLite, un database open Source ampiamente utilizzato.
Frutto dell’evoluzione del progetto Naptime, il team di Big Sleep ha infatti sviluppato un agente AI in grado di assistere i ricercatori di sicurezza nel rilevamento delle vulnerabilità. Lo scorso ottobre, questo agente ha identificato una vulnerabilità di sicurezza sfruttabile in SQLite, che coinvolgeva un underflow del buffer dello stack. Questa scoperta è tanto più notevole in quanto è stata fatta prima del rilascio ufficiale del codice interessato, evitando così qualsiasi impatto sugli utenti.
Metodologia e approccio all’intelligenza artificiale
Il successo dell’agente Big Sleep si basa sull’uso di modelli linguistici di grandi dimensioni (LLM) per analizzare il codice sorgente e identificare modelli che potrebbero contenere vulnerabilità. Invece di cercare le vulnerabilità in modo casuale, l’agente si concentra sull’analisi delle varianti delle vulnerabilità già note, un metodo chiamato “analisi delle varianti”. Fornendo informazioni sulle patch recenti o sulle modifiche al codice, l’agente può prendere di mira aree che potrebbero contenere vulnerabilità simili a cui non sono state ancora applicate le patch.
Questo approccio è molto efficace nel rilevare vulnerabilità che le tecniche tradizionali, come il fuzzing, non sempre riescono a identificare. Come promemoria, il fuzzing consiste nell’inserire dati casuali per causare errori. Il problema con questo approccio è che manca di sottigliezza e quindi non tiene conto di molte vulnerabilità. L’intelligenza artificiale, d’altro canto, può analizzare il codice con una profonda comprensione del contesto, individuando vulnerabilità difficili da rilevare con i mezzi convenzionali.
Impatto e prospettive
In altre parole, l’intelligenza artificiale è destinata a cambiare le regole del gioco nella lotta contro le vulnerabilità del software e i difetti zero-day. Identificandoli prima ancora che il codice venga rilasciato, i difensori ottengono un vantaggio sugli aggressori, invertendo la consueta dinamica. Supponendo, ovviamente, che questa IA venga utilizzata a monte di qualsiasi implementazione e da “bravi ragazzi”, perché potrebbe anche consentire ai cyberattaccanti di analizzare tutti gli attuali codici open Source per trovare difetti Zero Day. È quindi improbabile che Big Sleep venga reso disponibile a tutti nel prossimo futuro.
Naturalmente, Big Sleep è solo un progetto sperimentale al momento. Ma apre la strada a un maggiore utilizzo dell’intelligenza artificiale per rafforzare la sicurezza del software in un momento in cui CISO e CIO sono stufi della crescita esponenziale delle vulnerabilità del software che rende la gestione delle patch sempre più ingestibile su base quotidiana e moltiplica le vie di ingresso nei sistemi informativi. .
Related News :