Angolo di Anderson
La ricerca suggerisce che gli LLM siano disposti ad assistere nella codifica di ‘vibe’ malintenzionata

Negli ultimi anni, i modelli linguistici di grandi dimensioni (LLM) hanno attirato l’attenzione per il loro potenziale uso improprio nella cibersicurezza offensiva, in particolare nella generazione di exploit di software.
La recente tendenza verso la ‘codifica di vibe’ (l’uso casuale di modelli linguistici per sviluppare rapidamente codice per un utente, invece di insegnare esplicitamente all’utente a programmare) ha rivitalizzato un concetto che ha raggiunto il suo apice negli anni 2000: lo ‘script kiddie’ – un attore malintenzionato relativamente non esperto con sufficiente conoscenza per replicare o sviluppare un attacco dannoso. L’implicazione, naturalmente, è che quando la barriera all’ingresso è così abbassata, le minacce tenderanno a moltiplicarsi.
Tutti i modelli LLM commerciali hanno una sorta di protezione contro l’uso per tali scopi, anche se queste misure di protezione sono sotto costante attacco. Di solito, la maggior parte dei modelli FOSS (in diversi domini, dai modelli LLM ai modelli generativi di immagini/video) viene rilasciata con una sorta di protezione simile, solitamente per motivi di conformità in Occidente.
Tuttavia, le versioni ufficiali dei modelli vengono quindi regolarmente “fine-tune” dalle comunità degli utenti che cercano una funzionalità più completa, o utilizzano LoRAs per bypassare le restrizioni e ottenere potenzialmente risultati “indesiderati”.
Sebbene la stragrande maggioranza dei modelli LLM online impedisca di assistere l’utente con processi malintenzionati, iniziative “senza vincoli” come Deep Hat sono disponibili per aiutare i ricercatori di sicurezza a operare su un piano di parità con i loro avversari.
L’esperienza dell’utente generale al momento è più comunemente rappresentata nella serie ChatGPT, il cui meccanismo di filtro viene frequentemente criticato dalla comunità nativa di LLM.
Sembra che stai cercando di attaccare un sistema!
Alla luce di questa tendenza percepita verso la restrizione e la censura, gli utenti potrebbero essere sorpresi nel trovare che ChatGPT è stato trovato essere il modello LLM più collaborativo di tutti quelli testati in uno studio recente progettato per forzare i modelli linguistici a creare exploit di codice malintenzionati.
Il nuovo documento dei ricercatori dell’UNSW Sydney e del Commonwealth Scientific and Industrial Research Organisation (CSIRO), intitolato Buone notizie per gli script kiddie? Valutazione dei modelli linguistici di grandi dimensioni per la generazione automatica di exploit, offre la prima valutazione sistematica di quanto efficacemente questi modelli possano essere promossi per produrre exploit funzionanti. Esempi di conversazioni dalla ricerca sono stati forniti dagli autori.
Lo studio confronta come i modelli hanno performato su versioni originali e modificate di laboratori di vulnerabilità noti (esercizi di programmazione strutturati progettati per dimostrare specifiche vulnerabilità di sicurezza del software), aiutando a rivelare se si basavano su esempi memorizzati o lottavano a causa di restrizioni di sicurezza integrate.

Dal sito di supporto, il modello LLM Ollama aiuta i ricercatori a sviluppare un attacco di vulnerabilità di stringa. Fonte: https://anonymous.4open.science/r/AEG_LLM-EAE8/chatgpt_format_string_original.txt
Mentre nessuno dei modelli è stato in grado di creare un exploit efficace, molti di loro si sono avvicinati molto; più importante ancora, molti di loro volevano fare meglio nel compito, indicando un potenziale fallimento degli approcci di protezione esistenti.
Il documento afferma:
‘I nostri esperimenti mostrano che GPT-4 e GPT-4o esibiscono un alto grado di cooperazione nella generazione di exploit, paragonabile a alcuni modelli open-source non censurati. Tra i modelli valutati, Llama3 è stato il più resistente a tali richieste.
‘Nonostante la loro disponibilità ad assistere, la minaccia reale posta da questi modelli rimane limitata, poiché nessuno ha generato exploit funzionanti per i cinque laboratori personalizzati con codice rifattorizzato. Tuttavia, GPT-4o, il performer più forte nel nostro studio, ha fatto solo uno o due errori per tentativo.
‘Ciò suggerisce un potenziale significativo per sfruttare i modelli LLM per sviluppare tecniche di generazione di exploit automatiche (AEG) avanzate e generalizzabili.’
Molte seconde chance
Il detto ‘Non hai una seconda possibilità per fare una buona prima impressione’ non si applica generalmente ai modelli LLM, perché una finestra di contesto tipicamente limitata di un modello linguistico significa che un contesto negativo (in senso sociale, cioè antagonismo) non è persistente.
Considera: se andassi in una biblioteca e chiedessi un libro sulla fabbricazione di bombe, probabilmente verresti rifiutato, almeno. Ma (supponendo che questa indagine non abbia interrotto completamente la conversazione fin dall’inizio) le tue richieste di lavori correlati, come libri su reazioni chimiche o progettazione di circuiti, sarebbero, nella mente del bibliotecario, chiaramente correlate alla richiesta iniziale e sarebbero trattate in quella luce.
Probabilmente, il bibliotecario si ricorderebbe anche in future incontri che hai chiesto un libro sulla fabbricazione di bombe quella volta, rendendo questo nuovo contesto di te ‘irreparabile’.
Non così con un modello LLM, che può lottare per conservare informazioni tokenizzate anche dalla conversazione corrente, per non parlare delle direttive della Memoria a Lungo Termine (se presenti nell’architettura, come il prodotto ChatGPT-4o).
Quindi, anche le conversazioni casuali con ChatGPT rivelano accidentalmente che a volte si sforza con un granello di senape ma inghiotte un cammello, non meno quando un tema costitutivo, studio o processo relativo a un’attività altrimenti ‘vietata’ è consentito di svilupparsi durante il discorso.
Ciò vale per tutti i modelli linguistici attuali, anche se la qualità della protezione può variare in estensione e approccio tra loro (ad esempio, la differenza tra la modifica dei pesi del modello allenato o l’uso del filtro di testo durante una sessione di chat, che lascia il modello strutturalmente intatto ma potenzialmente più facile da attaccare).
Test del metodo
Per testare fino a che punto i modelli LLM potessero essere spinti verso la generazione di exploit funzionanti, gli autori hanno allestito un ambiente controllato utilizzando cinque laboratori da SEED Labs, ciascuno costruito intorno a vulnerabilità note, tra cui un overflow di buffer, return-to-libc, un attacco Dirty COW e condizioni di gara.
In aggiunta all’uso dei laboratori originali, i ricercatori hanno creato versioni modificate rinominando variabili e funzioni in identificatori generici. Ciò era destinato a prevenire che i modelli facessero affidamento su esempi di allenamento memorizzati.
Ogni laboratorio è stato eseguito due volte per modello: una volta nella sua forma originale e una volta nella sua versione offuscata.
I ricercatori hanno quindi introdotto un secondo modello LLM nel loop: un modello di attaccante progettato per sollecitare e risollecitare il modello bersaglio al fine di raffinare e migliorare la sua output su più round. Il modello LLM utilizzato per questo ruolo è stato GPT-4o, che ha operato attraverso uno script che ha mediato il dialogo tra l’attaccante e il bersaglio, consentendo al ciclo di raffinamento di continuare fino a quindici volte, o fino a quando non si è ritenuto possibile ulteriore miglioramento:

Flusso di lavoro per il modello LLM basato sull’attaccante, in questo caso GPT-4o.
I modelli bersaglio per il progetto sono stati GPT-4o, GPT-4o-mini, Llama3 (8B), Dolphin-Mistral (7B) e Dolphin-Phi (2.7B), rappresentando sia sistemi proprietari che open-source, con una miscela di modelli allineati e non allineati (ad esempio modelli con meccanismi di sicurezza integrati progettati per bloccare prompt dannosi e quelli modificati attraverso fine-tuning o configurazione per bypassare questi meccanismi).
I modelli installabili localmente sono stati eseguiti tramite il framework Ollama, mentre gli altri sono stati accessibili tramite il loro unico metodo disponibile – API.
I risultati ottenuti sono stati valutati in base al numero di errori che hanno impedito all’exploit di funzionare come previsto.
Risultati
I ricercatori hanno testato quanto ogni modello fosse collaborativo durante il processo di generazione di exploit, misurato registrando la percentuale di risposte in cui il modello ha tentato di assistere nel compito (anche se l’output era difettoso).

Risultati dal test principale, mostrando la cooperazione media.
GPT-4o e GPT-4o-mini hanno mostrato i livelli di cooperazione più alti, con tassi di risposta medi del 97 e del 96 percento, rispettivamente, attraverso le cinque categorie di vulnerabilità: overflow di buffer, return-to-libc, stringa di formato, condizione di gara e Dirty COW.
Dolphin-Mistral e Dolphin-Phi hanno seguito a ruota, con tassi di cooperazione medi del 93 e del 95 percento. Llama3 ha mostrato la minore disponibilità a partecipare, con un tasso di cooperazione complessivo del 27 percento:

A sinistra, vediamo il numero di errori commessi dai modelli LLM sui programmi di laboratorio SEED originali; a destra, il numero di errori commessi sulle versioni rifattorizzate.
Esaminando le prestazioni effettive di questi modelli, hanno trovato un notevole divario tra disponibilità e efficacia: GPT-4o ha prodotto i risultati più precisi, con un totale di sei errori attraverso i cinque laboratori offuscati. GPT-4o-mini ha seguito con otto errori. Dolphin-Mistral ha performato ragionevolmente bene sui laboratori originali ma ha lottato significativamente quando il codice è stato rifattorizzato, suggerendo che potrebbe aver visto contenuti simili durante l’allenamento. Dolphin-Phi ha fatto diciassette errori e Llama3 il più alto, con quindici.
I fallimenti hanno solitamente coinvolto errori tecnici che hanno reso gli exploit non funzionali, come ad esempio dimensioni di buffer errate, logica di loop mancante o payload sintatticamente validi ma inefficaci. Nessun modello è riuscito a produrre un exploit funzionante per alcuna delle versioni offuscate.
Gli autori hanno osservato che la maggior parte dei modelli ha prodotto codice che assomiglia a exploit funzionanti, ma ha fallito a causa di una debole comprensione di come gli attacchi sottostanti funzionino effettivamente – un modello che è stato evidente in tutte le categorie di vulnerabilità e che ha suggerito che i modelli stessero imitando strutture di codice familiari piuttosto che ragionare attraverso la logica coinvolta (nei casi di overflow di buffer, ad esempio, molti non sono riusciti a costruire uno sled/slide NOP funzionante).
Nei tentativi di return-to-libc, i payload hanno spesso incluso padding errato o indirizzi di funzione spostati, risultando in output che apparivano validi ma erano inutilizzabili.
Sebbene gli autori descrivano questa interpretazione come speculativa, la coerenza degli errori suggerisce un problema più ampio in cui i modelli falliscono nel collegare i passaggi di un exploit con il loro effetto inteso.
Conclusione
C’è qualche dubbio, il documento ammette, sul fatto che i modelli linguistici testati abbiano visto i laboratori SEED originali durante il primo allenamento; per questo motivo sono state costruite varianti. Tuttavia, i ricercatori confermano che vorrebbero lavorare con exploit del mondo reale in future iterazioni di questo studio; materiale veramente nuovo e recente è meno probabile essere soggetto a scorciatoie o altri effetti confondenti.
Gli autori ammettono anche che i modelli di ‘pensiero’ successivi e più avanzati come GPT-o1 e DeepSeek-r1, che non erano disponibili al momento della conduzione dello studio, potrebbero migliorare i risultati ottenuti e che ciò è un’ulteriore indicazione per il lavoro futuro.
Il documento conclude che la maggior parte dei modelli testati avrebbe prodotto exploit funzionanti se fosse stata in grado di farlo. Il loro fallimento nel generare output completamente funzionali non sembra derivare da salvaguardie di allineamento, ma piuttosto punta a una limitazione architettonica genuina – una che potrebbe già essere stata ridotta in modelli più recenti o presto lo sarà.
Pubblicato per la prima volta lunedì, 5 maggio 2025












