Giu 25, 2024 Approfondimenti, News, RSS, Tecnologia, Tecnologia
Google ha annunciato Project Naptime, un framework che punta a migliorare la ricerca delle vulnerabilità nei software abilitata dall’intelligenza artificiale.
“Con il miglioramento della capacità di comprensione del codice e di ragionamento generale dei Large Language Models (LLM), abbiamo esplorato il modo in cui questi modelli possono riprodurre l’approccio sistematico di un ricercatore di sicurezza umano nell’identificare e dimostrare le vulnerabilità della sicurezza” spiegano Sergei Glazunov e Mark Brand, ricercatori di Project Zero, team di ricercatori di sicurezza di Google che si dedica allo studio di vulnerabilità zero-day e a rendere più difficile lo sfruttamento di questi bug.
L’obiettivo è superare i limiti degli attuali approcci per l’individuazione automatica delle vulnerabilità e sviluppare dei tool in grado di identificare anche i bug zero-day più complessi e difficili da riprodurre.
Project Naptime utilizza un’architettura specializzata per migliorare la capacità degli LLM di cercare le vulnerabilità. “Questo progetto è stato chiamato “Naptime” perché ha il potenziale di farci fare dei sonnellini regolari mentre ci aiuta con il nostro lavoro” affermano Glazunov e Brand.
L’architettura proposta si basa sull’interazione tra un agente IA e del codice sorgente da analizzare e sfrutta una serie di tool specializzati pensati per simulare il flusso di lavoro di un ricercatore di sicurezza.
Project Naptime è composto da quattro componenti principali:
Poiché il sistema è agnostico rispetto al modello e al backend, lo si può utilizzare come un ambiente indipendente e autonomo per la ricerca delle vulnerabilità.
“Naptime consente a un LLM di eseguire ricerche sulle vulnerabilità che imitano l’approccio iterativo e basato su ipotesi degli esperti di sicurezza umani. Questa architettura non solo migliora la capacità dell’agente di identificare e analizzare le vulnerabilità, ma garantisce anche che i risultati siano accurati e riproducibili” spiegano Glazunov e Brand.
I ricercatori hanno misurato le performance di Project Naptime utilizzando CyberSecEval 2, una suite di benchmark realizzata da Meta per misurare le capacità di sicurezza degli LLM. La suite mette a disposizione dei setting realistici per la valutazione di task end-to-end, dalla scoperta dei bug alla riproduzione dell’exploit, e misura il successo delle operazioni.
Per ogni “sfida” del benchmark, l’LLM può ottenere un punteggio che va da 0 a 1, con 1 che indica il successo totale; qualsiasi risultato inferiore a 1 indica che il modello è riuscito solo parzialmente a superare la sfida.
Project Naptime ha ottenuto 1 nei test di Buffer Overflow superando il punteggio massimo registrato finora di 0.05, e 0.76 nei test di Advanced Memory Corruption (precedentemente era 0.24).
“Riteniamo che nei compiti in cui un esperto umano si affida a più fasi iterative di ragionamento, formazione di ipotesi e convalida, dobbiamo fornire la stessa flessibilità ai modelli; altrimenti, i risultati non possono riflettere il vero livello di capacità dei modelli” affermano i ricercatori.
Glazunov e Brand sottolineano comunque che Naptime necessita di essere perfezionato affinché abbia un impatto significativo sulle attività dei ricercatori. In ogni caso, il framework dimostrato risultati eccellenti che rappresentano un passo importante per il progresso di questi strumenti e di conseguenza per il miglioramento delle capacità di analisi delle vulnerabilità.