Nicholas Carlini è un research scientist di Anthropic. Nel suo quotidiano, lavora sulla sicurezza dei modelli linguistici. Ma a marzo 2026, in preparazione di una presentazione alla conferenza [un]prompted AI security di San Francisco, ha provato qualcosa di diverso: ha puntato Claude Code sull'intero source tree del kernel Linux e gli ha chiesto di trovare vulnerabilità di sicurezza, file per file.
Il risultato ha sorpreso anche lui. Claude Opus 4.6 ha individuato un heap buffer overflow nel codice NFS del kernel — una vulnerabilità introdotta nel marzo 2003 e rimasta nascosta per ventitré anni. Nessun audit di sicurezza l'aveva rilevata. Nessun tool di static analysis commerciale l'aveva segnalata. Un modello linguistico ci ha messo poche ore.
Key Points
- Un heap buffer overflow nel codice NFSv4 del kernel Linux, introdotto nel 2003, scoperto da Claude Code nel 2026: ventitré anni di esposizione silente.
- Il vettore di attacco è remoto e non richiede autenticazione: due client NFS cooperanti possono sovrascrivere memoria kernel controllata.
- Cinque vulnerabilità Linux già patchate, nei sottosistemi NFS, io_uring, futex e ksmbd. Centinaia di candidati attendono validazione umana.
- Il bottleneck non è più la scoperta delle vulnerabilità. È la capacità umana di validarle abbastanza in fretta da non essere superati.
The Vulnerability That Hid in Plain Sight for 23 Years
Il bug specifico vive nel replay cache di NFSv4 LOCK. Il meccanismo di attacco richiede due client NFS cooperanti: il primo crea la condizione, il secondo la sfrutta. Il server riceve un messaggio nella sua replay cache: un buffer da 112 byte si trova ad accogliere 1.056 byte di dati, incluso un owner ID field fuori misura. Il risultato è un heap buffer overflow che permette a un attaccante remoto di sovrascrivere memoria kernel con dati controllati — senza autenticazione, senza accesso fisico, senza bisogno di credenziali.
Ventitré anni di esposizione. Nessuno che la cercasse nel posto giusto, nel modo giusto. O forse nessuno con abbastanza tempo e attenzione per esaminare quel codice con quella granularità.
Carlini ha descritto l'esperienza con una semplicità disarmante: "Non avevo mai trovato vulnerabilità di questo tipo prima. Con questi modelli linguistici, ne ho una quantità."
A Systematic Approach, Not a One-Off Finding
Il metodo usato da Carlini è significativo quanto il risultato. Non ha costruito un sistema di analisi specializzato. Non ha scritto prompt elaborati calibrati per NFS o per vulnerabilità specifiche. Ha eseguito Claude Code contro l'intero kernel Linux, file per file, con istruzioni minimaliste: trova problemi di sicurezza.
Questo approccio — sistematico, non specializzato, scalabile — ha prodotto non una vulnerabilità ma una pipeline di scoperte. Carlini ha dichiarato pubblicamente di avere "così tanti bug nel kernel Linux che non riesco a reportarli perché non li ho ancora validati." Cinque sono già stati patchati: NFS, io_uring, futex, ksmbd. Gli altri attendono il suo tempo.
Il tempo è la risorsa scarsa. Non la detection.
The Bottleneck Has Shifted
Per decenni, il modello mentale della sicurezza informatica ha funzionato così: le vulnerabilità sono difficili da trovare, perché richiedono competenza umana rarissima e tempi enormi. I team di security research sono piccoli, costosi, e operano su base manuale. Un bug nascosto per ventitré anni è un bug che nessuno ha avuto il tempo e l'expertise per cercare in quel posto specifico.
Questo modello è ora obsoleto per una classe ampia di vulnerabilità.
Claude Opus 4.6 non è più capace di trovare solo errori ovvi: sta rilevando pattern sottili in codice complesso, in contesti tecnici specializzati, con una velocità che rende il vecchio bottleneck irrilevante. Il nuovo bottleneck è la validazione umana: ogni candidato trovato dal modello richiede un esperto che verifichi se è un vero bug, stimi la severità, e prepari il report responsabile.
Carlini non può stare dietro ai bug che il suo Claude Code continua a trovare.
THE SHIFT
Il modello mentale della sicurezza informatica si basava su una premessa: trovare vulnerabilità è difficile. Richiede expertise rara e tempo immenso. Claude Code ha appena reso quella premessa obsoleta. Il nuovo collo di bottiglia è umano: validare abbastanza in fretta da non essere superati.
The Dual-Use Problem at Scale
La presentazione di Carlini ha incluso una seconda dimostrazione: Claude (non specificato quale versione) ha compromesso autonomamente Ghost CMS — una piattaforma open source con 50.000 stelle su GitHub — senza assistenza umana. Ha estratto API key admin e hash delle password partendo da semplici istruzioni in formato CTF.
La frase di Carlini che ha circolato di più: "Gli attacchi informatici di livello mondiale non richiedono più anni di formazione."
Questo è il dual-use problem nella sua forma più netta: lo stesso strumento che può patchare vulnerabilità note può essere usato per trovarne di sconosciute. Lo stesso modello che aiuta un security researcher a proteggere il kernel Linux può aiutare un attore malevolo a individuare nuovi vettori di attacco in infrastrutture critiche. La democratizzazione della scoperta di vulnerabilità non è neutra.
Five Patches, Hundreds Waiting
Al momento della presentazione di Carlini, cinque vulnerabilità direttamente collegate alla sua ricerca con Claude Code erano già state patchate nel kernel Linux. I sottosistemi interessati — NFS, io_uring, futex, ksmbd — coprono aree fondamentali del sistema operativo: file system di rete, I/O asincrono, sincronizzazione tra thread, file sharing SMB.
Non sono componenti periferici. Sono parti del kernel usate da server, workstation, embedded systems, infrastruttura cloud, in produzione, ogni giorno.
Le centinaia di candidati vulnerabilità ancora in attesa di validazione non sono un numero inventato. Sono bug che Claude Code ha trovato e che Carlini non ha ancora avuto il tempo di esaminare. Quando li esaminerà — e quando altri researcher replicheranno il suo metodo con i propri modelli — la curva dei disclosure è destinata ad accelerare.
What I Think
C'è qualcosa di paradossale in questa storia: il modello che trova vulnerabilità nel kernel Linux è lo stesso modello che potrebbe essere usato per sfruttarle. Anthropic — l'azienda che ha costruito Claude — è anche l'azienda che ha prodotto questo report tramite il proprio ricercatore. La sicurezza e il rischio vengono dalla stessa fonte.
Il punto non è che l'AI sia intrinsecamente pericolosa. Il punto è che abbiamo appena attraversato una soglia. Prima di Claude Opus 4.6, trovare un bug come quello in NFSv4 LOCK richiedeva un esperto umano con competenze specifiche, molto tempo, e molta fortuna. Ora richiede un modello linguistico e qualche ora di CPU.
La scoperta di Carlini non è un risultato eccezionale. È un benchmark. Descrive cosa è possibile oggi, con un metodo riproducibile, da chiunque abbia accesso agli stessi strumenti. E quella riproducibilità è esattamente ciò che rende questa storia diversa da tutte le precedenti storie di "AI che trova bug".
Ventitré anni di silenzio nel kernel Linux sono terminati in una sessione di Claude Code. Quanti altri bug aspettano, in quale codice, da quanto tempo — non lo sappiamo. Ma ora sappiamo che aspettarsi che nessuno li trovi è una premessa su cui non si può più fare affidamento.
"Non avevo mai trovato vulnerabilità di questo tipo prima. Con questi modelli linguistici, ne ho una quantità."
Nicholas Carlini, Anthropic Research Scientist