Una pipeline autonoma basata su un nuovo modello di cybersecurity di OpenAI ha individuato e riprodotto 1.724 vulnerabilità nel kernel Linux, arrivando a generare 948 exploit funzionanti per ottenere privilegi di root. L'intera operazione è costata 1,21 milioni di dollari in crediti API e ha prodotto anche possibili patch, sottoposte alla revisione dei ricercatori umani.
di Manolo De Agostini
OpenAI ha sviluppato una pipeline autonoma per individuare, verificare e preparare le correzioni delle vulnerabilità presenti nel kernel Linux.
In una singola esecuzione, condotta a metà ottobre con un modello di cybersecurity non ancora rilasciato, il sistema ha prodotto 948 exploit funzionanti capaci di consentire a un utente locale senza privilegi di ottenere l'accesso root. Il costo complessivo dell'operazione è stato di 1.213.430 dollari in crediti API.
Il risultato è stato illustrato in un post, che ha descritto metodologia, costi e capacità del sistema. Il dato più significativo non è soltanto il numero di vulnerabilità individuate, ma la possibilità di automatizzare buona parte del processo: dalla prima analisi del codice fino alla riproduzione del problema, alla valutazione della sua sfruttabilità e alla generazione di una patch.
Il kernel Linux è una componente particolarmente interessante per questo tipo di ricerca. Con oltre 40 milioni di righe di codice, costituisce il nucleo di sistemi operativi e infrastrutture utilizzati in ambiti molto diversi, dagli smartphone Android ai server cloud, passando per i supercomputer. La sua superficie d'attacco comprende chiamate di sistema, rete, file system e driver, rendendo complessa un'analisi completa.
Questa fase è costata 3.426 dollari in crediti API. Successivamente, gli agenti Analyst hanno esaminato le aree selezionate, individuando 2.308 possibili vulnerabilità in appena 12 ore. Il costo di questa attività è stato decisamente superiore: 316.549 dollari.
La presenza di una segnalazione, però, non significa necessariamente che esista una vulnerabilità effettivamente sfruttabile. Per questo OpenAI ha introdotto una fase di validazione dinamica. Gli agenti Triage hanno generato proof of concept, ovvero programmi minimi in grado di riprodurre il comportamento anomalo, eseguendoli in macchine virtuali isolate con un kernel strumentato attraverso KASAN (Kernel Address Sanitizer), uno strumento che rileva accessi illegali alla memoria.
In 30 ore sono state riprodotte 1.724 vulnerabilità, pari al 74,7% delle segnalazioni iniziali. OpenAI sottolinea che appena il 3,1% dei candidati non validati derivava da un'analisi errata del modello, che aveva ipotizzato condizioni impossibili. Gli altri casi non sono stati confermati soprattutto per la necessità di privilegi elevati, condizioni di gara difficili da riprodurre o procedure di verifica particolarmente lunghe. La validazione è costata 73.330 dollari.
La quarta fase ha riguardato la valutazione dell'impatto, frangente che è costato 44.194 dollari. Un agente di selezione ha ridotto il numero dei candidati a 313 potenziali vulnerabilità di fuga di informazioni e 1.238 possibili LPE. Gli agenti ExploitDev hanno quindi provato a sfruttarle in macchine virtuali configurate con le protezioni normalmente presenti in una distribuzione Linux standard.
Tra queste figurano SMEP, SMAP, KASLR e HARDENED_USERCOPY, meccanismi che rendono più difficile compromettere il kernel e manipolarne la memoria. Il sistema ha prodotto 291 proof of concept funzionanti per le vulnerabilità di fuga di informazioni e 1.169 exploit LPE.
Il numero finale di 948 deriva dall'analisi delle varianti: più exploit potevano infatti fare riferimento allo stesso difetto. Dopo aver raggruppato i casi riconducibili alla medesima vulnerabilità, OpenAI ha identificato 948 LPE distinte e preparato altrettante patch candidate.
La parte più costosa è stata quindi lo sviluppo degli exploit, che ha assorbito circa il 64% del budget (775.929 dollari). In media, la realizzazione di un exploit LPE riuscito è costata circa 360 dollari in crediti API. I tentativi falliti sono stati decisamente più onerosi: 69 casi hanno richiesto complessivamente circa 3.922 dollari ciascuno, soprattutto a causa di vulnerabilità difficili da sfruttare, come quelle che dipendono da specifiche condizioni di gara.
OpenAI ha spiegato che l'obiettivo della ricerca era misurare le capacità del modello, non ottimizzare i costi. La spesa indicata rappresenta quindi una sorta di limite superiore, che potrebbe essere ridotto intervenendo sull'organizzazione degli agenti e sulle procedure di validazione.

Blogger Comment
Facebook Comment