Big Sleep: l’AI di Google scopre un bug di sicurezza in SQLite sfuggito al fuzzing | Llm cosa e | Chat gpt in italiano gratis | Llm meaning | Turtles AI

Big Sleep: l’AI di Google scopre un bug di sicurezza in SQLite sfuggito al fuzzing
Un nuovo strumento sviluppato da Google e DeepMind individua per la prima volta una vulnerabilità di memoria in un software ampiamente utilizzato, superando i metodi tradizionali di testing
Editorial Team5 novembre 2024

 


Google ha annunciato che Big Sleep, il suo nuovo strumento basato su AI sviluppato in collaborazione con DeepMind, ha scoperto un bug di sicurezza in SQLite, un database open source, che era sfuggito ai tradizionali metodi di fuzzing. Questo segna un passo significativo nell’uso dell’AI per migliorare la sicurezza informatica, con un focus sulla rilevazione di vulnerabilità di memoria.

Punti chiave:

  •  Big Sleep ha identificato una vulnerabilità di sicurezza non rilevata dal fuzzing in SQLite.  
  •  Il bug riguarda un underflow del buffer di stack, che poteva portare a crash o esecuzione di codice arbitrario.  
  •  Questo è il primo caso in cui un modello di AI ha trovato un bug sfruttabile in un software ampiamente utilizzato.  
  •  La vulnerabilità è stata corretta tempestivamente dagli sviluppatori di SQLite, grazie alla segnalazione di Big Sleep.  

Google ha recentemente annunciato un traguardo importante nel campo della sicurezza informatica con la rivelazione di un bug sfruttabile nel codice di SQLite, un motore di database open source ampiamente utilizzato. La scoperta è avvenuta grazie a Big Sleep, un sistema avanzato di AI sviluppato in collaborazione tra Project Zero di Google e DeepMind. Questo strumento si presenta come una significativa evoluzione rispetto a precedenti iniziative di ricerca, come Project Naptime, e sembra rappresentare una vera novità per la sicurezza del software. Big Sleep si è dimostrato capace di individuare un difetto di sicurezza che sfuggiva agli approcci tradizionali, come il fuzzing, che sono comunemente utilizzati per rilevare vulnerabilità nel software.

La vulnerabilità individuata da Big Sleep è un underflow del buffer di stack, un tipo di errore che, se sfruttato, avrebbe potuto causare un crash del sistema o persino consentire l’esecuzione di codice arbitrario, mettendo in pericolo la sicurezza dell’utente. In particolare, il problema derivava dall’utilizzo di un valore magico (-1) come indice di un array, senza una corretta protezione contro valori fuori limite. Sebbene esistesse un controllo mediante assert() per rilevare l’uso errato di tale indice, nelle versioni di rilascio del software questo controllo veniva disabilitato, lasciando il sistema vulnerabile. Il bug non era di facile sfruttamento, ma in determinate condizioni, come l’iniezione di un database maligno, un attacco avrebbe potuto portare a un’esecuzione remota di codice.

Nonostante il bug fosse di difficile individuazione, gli strumenti di fuzzing, che operano tramite l’inserimento casuale di dati per trovare anomalie nel codice, non sono riusciti a rilevarlo. In contrasto, Big Sleep, un modello basato su LLM (Large Language Model) sviluppato da Google, ha identificato il problema con una velocità e precisione inusitate. Il modello, alimentato dalla tecnologia Gemini 1.5 Pro, è stato messo alla prova su un campione di commit recenti nel repository di SQLite, un processo che ha portato alla scoperta del bug in tempi rapidi. Una volta individuato il difetto, il team di SQLite ha risolto prontamente la vulnerabilità, evitando che il codice difettoso venisse rilasciato pubblicamente.

Questo evento segna un passo importante per l’impiego dell’AI nella ricerca di vulnerabilità di sicurezza, poiché dimostra la capacità dei modelli di AI di individuare problemi complessi e sfruttabili che erano sfuggiti a metodi più tradizionali. La scoperta è stata definita dai membri del team di Big Sleep come un’importante "pietra miliare", poiché rappresenta la prima volta che un sistema di AI ha rilevato un bug di sicurezza della memoria, non precedentemente conosciuto, in un software di uso comune. Gli sviluppatori hanno sottolineato che, sebbene il fuzzing rimanga uno strumento fondamentale nella ricerca di vulnerabilità, l’intelligenza artificiale potrebbe giocare un ruolo complementare, soprattutto nel trovare errori che risultano difficili o impossibili da identificare tramite altre tecniche.

Il caso di Big Sleep non è tuttavia l’unico in cui l’AI è stata impiegata nella sicurezza del software. A ottobre, Protect AI ha lanciato Vulnhuntr, uno strumento open source che utilizza il modello Claude AI di Anthropic per rilevare vulnerabilità zero-day nel codice Python. Sebbene i due strumenti abbiano obiettivi diversi – con Vulnhuntr focalizzato su vulnerabilità Python e Big Sleep su difetti di sicurezza della memoria – entrambi segnano l’inizio di un’era in cui l’intelligenza artificiale gioca un ruolo sempre più centrale nella protezione delle infrastrutture software.

Per ora, Big Sleep è ancora in fase di ricerca, e i suoi sviluppatori sono cauti nel dichiarare conclusioni definitive sulle sue potenzialità. I test finora condotti hanno riguardato principalmente piccoli programmi con vulnerabilità già conosciute, e questa è la prima volta che lo strumento ha affrontato un’applicazione reale e complessa come SQLite. Tuttavia, nonostante l’entusiasmo per la scoperta, gli esperti di Google hanno riconosciuto che strumenti di fuzzing specializzati potrebbero continuare a essere altrettanto efficaci, se non più, nel rilevare determinati tipi di vulnerabilità.

Mentre il progresso delle tecnologie di AI nella sicurezza informatica è indiscutibile, è chiaro che si tratta di un campo in rapida evoluzione, con molteplici approcci che si affiancano per garantire la protezione del software da attacchi sempre più sofisticati.