La settimana che ha cambiato la sicurezza informatica: Claude Code, il leak e l'exploit FreeBSD

Il codice sorgente di Claude Code finisce online per errore umano, mentre lo stesso strumento AI sviluppa autonomamente un exploit kernel per FreeBSD. Un'anali…

Contenuto

La settimana che ha cambiato la sicurezza informatica: Claude Code, il leak e l'exploit FreeBSD

Scopri anche

La settimana che ha cambiato la sicurezza informatica: Claude Code, il leak e l'exploit FreeBSD

La settimana che ha cambiato la sicurezza informatica: Claude Code, il leak e l'exploit FreeBSD

In questo articolo:

Il 31 marzo 2026 segna una data significativa per il mondo della sicurezza informatica. Due eventi distinti ma interconnessi hanno posto l'intelligenza artificiale al centro del dibattito sulla cybersecurity: la pubblicazione accidentale del codice sorgente completo di Claude Code e, nello stesso giorno, la dimostrazione che Claude AI ha sviluppato autonomamente un exploit per una vulnerabilità del kernel FreeBSD. Questi accadimenti sollevano interrogativi sulle pratiche di sviluppo software, sulla protezione della proprietà intellettuale e sulle capacità offensive dell'AI nel campo della sicurezza.

Il leak del codice sorgente di Claude Code

⬆ Torna su

Claude Code è l'interfaccia a riga di comando ufficiale di Anthropic per l'assistenza alla programmazione. Secondo quanto riportato, la versione 2.1.88 del software, rilasciata il pomeriggio del 31 marzo 2026, conteneva un file source map che permetteva di ricostruire l'intero codice sorgente del progetto: quasi 2.000 file TypeScript e oltre mezzo milione di righe di codice.

Il meccanismo del leak è legato alle procedure di build JavaScript e TypeScript. Quando un pacchetto viene pubblicato su npm, la toolchain di build genera spesso file source map (con estensione .map) che collegano il codice minimizzato di produzione al codice originale per scopi di debug. Questi file incorporano il codice sorgente originale come stringhe all'interno di un JSON, sotto la chiave sourcesContent. Non aggiungendo *.map al file .npmignore o non disabilitando i source map nelle build di produzione, il codice sorgente completo è stato distribuito sul registro npm.

La scoperta è stata attribuita a Chaofan Shou, che ha identificato il codice esposto. Un portavoce di Anthropic ha inviato una dichiarazione a VentureBeat.com, confermando che l'incidente è stato causato da un errore umano e non da una violazione della sicurezza. L'azienda ha specificato che non sono stati diffusi dati sensibili dei clienti o credenziali di accesso, e sta implementando contromisure per prevenire il ripetersi dell'evento.

Il codice è stato rapidamente rimosso dai repository ufficiali. Tuttavia, copie del materiale sono state archiviate e rese disponibili su GitHub a scopo di ricerca, con dichiarazioni esplicite che il codice è proprietà di Anthropic PBC e che il repository ha finalità esclusivamente educative e di archiviazione.

Cosa rivela l'architettura di Claude Code

⬆ Torna su

L'analisi del codice leakato ha permesso di comprendere la struttura interna di Claude Code. Il punto di ingresso principale è un file main.tsx di 785KB che utilizza Commander.js e un renderer terminale React personalizzato chiamato Ink. Il sistema include oltre 40 strumenti per agenti, orchestrazione multi-agente complessa e integrazione con IDE.

La documentazione ufficiale di Claude Code descrive i requisiti di sistema: macOS 13.0+, Windows 10 1809+ o Windows Server 2019+, Ubuntu 20.04+, Debian 10+ e Alpine Linux 3.19+. Per l'hardware sono richiesti almeno 4GB di RAM e una connessione internet attiva. La shell supportate includono Bash, Zsh, PowerShell e CMD. Su Windows è richiesto Git for Windows.

Tra le funzionalità emerse dal codice sorgente figura una modalità "Undercover" (src/utils/undercover.ts) progettata per impedire all'AI di divulgare informazioni interne quando i dipendenti Anthropic utilizzano Claude Code per contribuire a repository pubblici. Esiste anche un servizio autoDream che esegue processi in background per consolidare la memoria del sistema.

La struttura delle directory rivela componenti come QueryEngine.ts (circa 46.000 righe per la logica LLM), coordinator/ per l'orchestrazione multi-agente, bridge/ per l'integrazione IDE e un sistema interno denominato "buddy". Nomi di progetto come KAIROS (un assistente proattivo che monitora i log) e ULTRAPLAN (per pianificazione approfondita offloaded a sessioni remote) compaiono nel codice.

CVE-2026-4747: l'exploit FreeBSD sviluppato da Claude

⬆ Torna su

Nello stesso giorno del leak, il 31 marzo 2026, il ricercatore di sicurezza Calif.io ha pubblicato una ricerca che dimostra come Claude AI abbia sviluppato autonomamente un exploit completo per una vulnerabilità di esecuzione di codice remoto nel kernel FreeBSD, identificata come CVE-2026-4747. Il processo ha richiesto circa 8 ore di tempo wall clock, di cui circa 4 ore di effettivo processing da parte dell'AI.

La vulnerabilità riguarda l'implementazione RPCSEC_GSS di FreeBSD. Un overflow del buffer dello stack durante la verifica delle firme dei pacchetti permette l'esecuzione di codice remoto nel kernel. La falla colpisce tutte le versioni supportate di FreeBSD e non richiede autenticazione preventiva: un attaccante può sfruttarla inviando pacchetti appositamente predisposti al server NFS del kernel quando il modulo kgssapi.ko è caricato.

Claude ha sviluppato due exploit funzionanti al primo tentativo, utilizzando strategie diverse. Il primo è un exploit a 15 round che consegna una reverse shell root; il secondo, ottimizzato a 6 round, inietta una chiave SSH per accesso persistente. L'exploloit funziona segmentando 432 byte di shellcode attraverso 14 pacchetti, ciascuno contenente 32 byte di payload.

Il processo tecnico dello sviluppo dell'exploit

⬆ Torna su

Per passare dall'advisory di sicurezza a un exploit funzionante, Claude ha dovuto risolvere sei problemi tecnici distinti. Il processo è documentato nei prompt sequenziali forniti dal ricercatore umano, che ha interagito con l'AI attraverso 44 istruzioni durante la sessione.

La prima fase ha comportato l'allestimento di un ambiente di test: una macchina virtuale FreeBSD con server NFS, autenticazione Kerberos e il modulo kernel vulnerabile. Claude ha determinato autonomamente che la VM necessitava di 2+ CPU perché FreeBSD genera 8 thread NFS per CPU, e l'exploit termina un thread per round.

Per la consegna del payload, Claude ha ideato una strategia multi-packet: rendere eseguibile la memoria del kernel, quindi scrivere lo shellcode 32 byte alla volta. Quando gli offset dello stack iniziali sono risultati errati, Claude ha utilizzato pattern De Bruijn (una tecnica di fuzzing) per generare crash dump e ricalcolare gli offset corretti.

Una volta ottenuto il controllo del flusso, Claude ha dovuto gestire la transizione da thread kernel a processo userland. I thread NFS non possono eseguire direttamente programmi userland, quindi Claude ha creato un nuovo processo tramite kproc_create(), utilizzato kern_execve() per sostituirlo con /bin/sh, e ripulito il flag P_KPROC per permettere la transizione.

Un ulteriore problema è emerso quando i processi figli crashavano con eccezioni di debug. Claude ha tracciato il bug ai registri di debug DR7 ereditati dal kernel debugger DDB, risolvendolo ripulendo DR7 prima del fork.

Implicazioni per la sicurezza informatica

⬆ Torna su

La ricerca si inserisce nell'ambito di MAD Bugs (Month of AI-Discovered Bugs), un'iniziativa che dimostra le capacità di ricerca autonoma delle vulnerabilità da parte dell'AI. Prima del caso FreeBSD, Claude aveva già identificato zero-day RCE in Vim (patchato nella versione 9.2.0272) ed Emacs (ancora non patchato). Per Vim, il prompt è stato diretto: "Qualcuno mi ha detto che c'è uno zero-day RCE quando apri un file. Trovalo."

Claude Opus 4.6 avrebbe identificato oltre 500 zero-day ad alta severità in software open-source in produzione, molti dei quali sopravvissuti a decennali di revisione umana. La scala è senza precedenti: ciò che ha richiesto a un'AI 8 ore potrebbe essere parallelizzato su migliaia di istanze simultaneamente.

La comunità di sicurezza è divisa. Gli scettici fanno notare che Claude ha ricevuto l'advisory CVE e gli è stato chiesto di scrivere un exploit, non ha scoperto autonomamente il bug. L'exploit richiede una configurazione rara (NFS esposto su internet con kgssapi.ko caricato) e FreeBSD 14.x manca di protezioni moderne come KASLR e stack canaries per gli array di interi. I prompt pubblicati sono stati giudicati "sorprendentemente basilari".

L'altro campo fa notare che l'advisory FreeBSD accredita "Nicholas Carlini usando Claude, Anthropic" per la scoperta, non solo per l'exploitation. Presentazioni recenti su "Black-Hat LLMs" dimostrano che i modelli frontier scoprono exploit sconosciuti a livelli esperti.

Il gap offensivo-difensivo

⬆ Torna su

L'episodio evidenzia un'asimmetria fondamentale nella cybersecurity. L'offensiva si accelera mentre la difesa rimane indietro. La scoperta e l'exploitation delle vulnerabilità da parte dell'AI richiede ore; la patch e il deployment umano richiede giorni o settimane. Il gap si amplia con ogni avanzamento dell'AI.

Evidenze del 2026 supportano questa preoccupazione: XBOW, un penetration tester AI autonomo, ha raggiunto la posizione #1 su HackerOne nel 2025. Sistemi AI hanno condotto l'80-90% di una sofisticata campagna di cyber espionage contro 30+ organizzazioni. Il report IBM X-Force 2026 avverte che "gli attacchi guidati dall'AI stanno escalando mentre i gap di sicurezza di base persistono". I criminali informatici usano l'AI per trovare e sfruttare vulnerabilità non patchate "in ore, non settimane".

La barriera all'ingresso per l'exploitation avanzata è collassata. Gli avversari non necessitano più di anni di expertise kernel per sviluppare exploit sofisticati: serve accesso all'AI e conoscenze di sicurezza di base. L'expertise tradizionale — il fossato che proteggeva i sistemi ad alto valore — è svanito.

Configurazione e installazione di Claude Code

⬆ Torna su

La documentazione ufficiale descrive i metodi di installazione per Claude Code. L'installazione nativa è il metodo raccomandato, con comandi diversi per sistema operativo. Su macOS, Linux e WSL si utilizza un comando curl che esegue uno script di installazione. Su Windows PowerShell e CMD sono disponibili script specifici. Le installazioni Homebrew e WinGet sono alternative che richiedono aggiornamento manuale.

Per l'autenticazione è richiesto un account Pro, Max, Team, Enterprise o Console. Il piano gratuito Claude.ai non include accesso a Claude Code. È possibile utilizzare anche provider API terzi come Amazon Bedrock, Google Vertex AI o Microsoft Foundry.

Le installazioni native si aggiornano automaticamente in background. È possibile configurare il canale di rilascio per ricevere aggiornamenti immediati ("latest") o ritardati su uno schedule stabile ("stable", tipicamente una settimana di ritardo). Per disabilitare gli auto-aggiornamenti si imposta DISABLE_AUTOUPDATER a "1" nel file di configurazione.

L'installazione tramite npm è deprecata. Il programma di installazione nativo è più veloce, non richiede dipendenze e si auto-aggiorna. Per chi necessita dell'installazione npm per compatibilità, è richiesto Node.js 18+ e l'installazione globale del pacchetto, evitando l'uso di sudo per problemi di permessi e rischi di sicurezza.

Verifica dell'integrità e firme

⬆ Torna su

Ogni release di Claude Code pubblica un file manifest.json contenente checksum SHA256 per ogni binario di piattaforma. Il manifest è firmato con una chiave GPG di Anthropic, quindi verificare la firma sul manifesto verifica transitivamente ogni binario elencato.

La documentazione specifica la procedura di verifica: importare la chiave pubblica, verificare che l'output includa il fingerprint 31DD DE24 DDFA B679 F42D 7BD2 BAA9 29FF 1A7E CACE, scaricare manifest e firma, verificare la firma con GPG, quindi confrontare l'hash del binario con quello nel manifest. Le firme del manifest sono disponibili per le release dalla versione 2.1.89 in poi.

In aggiunta al manifest firmato, i singoli binari portano firme di codice native della piattaforma dove supportate. Su macOS i binari sono firmati da "Anthropic PBC" e notarizzati da Apple. Su Windows sono firmati da "Anthropic, PBC". I binari Linux usano la firma del manifest per la verifica dell'integrità e non sono individualmente firmati.

Reazione della comunità FreeBSD

⬆ Torna su

La comunità BSD ha discusso l'impatto di Claude Code sull'ecosistema. Su DiscoverBSD è emerso che Claude Code semplifica significativamente le attività di self-hosting su FreeBSD, automatizzando configurazioni, compilando pacchetti personalizzati e rafforzando la sicurezza. Casi d'uso documentati includono il deployment di Authelia 2FA in pochi minuti, la traduzione di software basato su Docker in build FreeBSD native e l'ottimizzazione degli header di sicurezza Nginx senza trial-and-error manuale.

Tuttavia, alcuni utenti hanno segnalato un problema persistente con gli aggiornamenti su FreeBSD che richiede attenzione della comunità. I forum ufficiali FreeBSD ospitano discussioni su come far funzionare il programma di installazione nativo di Claude Code su FreeBSD, indicando un interesse attivo nel supporto alla piattaforma.

L'advisory di sicurezza FreeBSD-SA-26:08.rpcsec_gss per CVE-2026-4747 è stato pubblicato il 26 marzo 2026, con patch rilasciate per tutti i branch interessati. Non esiste workaround oltre allo scaricamento del modulo vulnerabile. Gli aggiornamenti possono essere applicati tramite pkg, freebsd-update o patch manuali del codice sorgente.

Considerazioni finali

⬆ Torna su

Gli eventi del 31 marzo 2026 illustrano due facce della stessa medaglia: l'errore umano ha esposto il codice di uno strumento AI progettato per assistere la programmazione, mentre lo stesso tipo di strumento ha dimostrato capacità di sviluppo autonomo di exploit di sicurezza. La temporalità coincidente dei due eventi — lo stesso giorno, con Claude Code come elemento comune — amplifica la rilevanza del momento.

Le questioni etiche rimangono aperte. È appropriato pubblicare pubblicamente la ricerca sugli exploit AI? La pubblicazione accelera più le capacità offensive o quelle difensive? Qual è il framework di disclosure responsabile per le vulnerabilità scoperte dall'AI? I framework tradizionali assumono sviluppo a velocità umana. Quando l'AI può scoprire e weaponizzare vulnerabilità in ore, quei framework perdono efficacia.

La traiettoria indicata dalle fonti suggerisce un prossimo futuro (6-12 mesi) con generazione di exploit AI completamente autonoma, AI che concatena vulnerabilità multiple, e strumenti difensivi AI che iniziano a emergere ma rimangono indietro. Nel medio termine (1-2 anni), sicurezza AI-contro-AI, exploit development parallelizzato su migliaia di istanze, e automazione delle patch che si avvicina ma non eguaglia la velocità degli exploit AI.

Questo articolo è una sintesi basata esclusivamente sulle fonti elencate.

Implicazioni e scenari

⬆ Torna su

La coincidenza temporale tra il leak del codice sorgente e la dimostrazione delle capacità offensive avanzate solleva interrogativi su come l'industria gestirà la convergenza tra errori umani e automazione sempre più sofisticata.

  • Scenario 1: Le organizzazioni potrebbero rafforzare i controlli automatizzati sui processi di build per prevenire l'esposizione accidentale di codice proprietario.
  • Scenario 2: La disponibilità del codice leakato su repository pubblici potrebbe accelerarne l'analisi da parte di ricercatori indipendenti, con effetti incerti sulla sicurezza complessiva.
  • Scenario 3: La possibilità di parallelizzare la scoperta di vulnerabilità su larga scala potrebbe spingere i vendor a ridurre significativamente i tempi tra advisory e patch.

Cosa monitorare

⬆ Torna su
  • L'evoluzione del dibattito nella comunità di sicurezza sui limiti etici della ricerca automatizzata di vulnerabilità.
  • Gli aggiornamenti di sicurezza per FreeBSD, Vim ed Emacs in risposta alle scoperte segnalate.
  • Le eventuali modifiche alle policy di pubblicazione sui registri di pacchetti npm.

Nota editoriale: questa sezione propone una lettura analitica dei temi trattati, senza introdurre dati fattuali non presenti nelle fonti.

Fonti

⬆ Torna su

In breve

  • cybersecurity
  • vulnerabilita
  • cve
  • exploit

Link utili

Apri l'articolo su DeafNews