Tre vulnerabilità di Bitcoin Core, il software open source utilizzato per eseguire nodi della rete Bitcoin, sono state corrette dopo essere state individuate da un’iniziativa di analisi automatizzata basata su modelli linguistici. Due difetti potevano provocare un consumo progressivo della memoria fino all’arresto del nodo; il terzo riguardava file impiegati nella gestione delle riorganizzazioni della blockchain. Gli avvisi non riportano casi di sfruttamento attivo, ma descrivono rischi che potevano compromettere la capacità dei nodi vulnerabili di restare connessi e di elaborare i dati della rete.
Le correzioni sono state distribuite nelle versioni 29.5, 30.4, 31.2 e 32.1 di Bitcoin Core. La pubblicazione degli aggiornamenti è stata seguita a breve distanza dalla divulgazione dei problemi, coerentemente con la politica di sicurezza del progetto per debolezze considerate individuabili con relativa facilità, anche mediante scansioni assistite dall’intelligenza artificiale. Per chi gestisce un nodo, l’aggiornamento riguarda quindi la continuità operativa: un nodo che esaurisce la memoria o si arresta perde la possibilità di rimanere collegato e di svolgere le proprie funzioni sulla rete finché non viene ripristinato.
Il difetto ritenuto più immediatamente sfruttabile interessava nodi in esecuzione su Windows, macOS e BSD. Un peer malevolo avrebbe potuto inviare dati di rete costruiti in modo da aggirare le protezioni previste per limitare il traffico in ingresso. La memoria impiegata dal processo avrebbe potuto crescere fino al crash del software. Linux non era coinvolto in questa specifica vulnerabilità, perché usa un meccanismo diverso per monitorare le connessioni di rete. Il caso mostra come una debolezza di questo tipo non riguardi indistintamente Bitcoin, ma determinate configurazioni del client e dei sistemi operativi sui quali viene eseguito.
Il secondo problema, classificato di gravità media, riguardava la comunicazione con peer meno recenti che non supportano una funzione di rete introdotta dal Bitcoin Improvement Proposal 31. In questo scenario, un peer ostile avrebbe potuto far accumulare senza limite messaggi in uscita. L’impatto indicato raggiungeva fino a 2 megabyte all’ora per ciascuna connessione in entrata e fino a 5 megabyte all’ora per ciascuna connessione in uscita. Il dato non descrive un consumo istantaneo, ma una pressione che può crescere nel tempo fino a esaurire le risorse disponibili del nodo e interromperne la connessione alla rete.
La terza vulnerabilità, valutata a bassa gravità, coinvolgeva i file usati da Bitcoin Core per gestire il ripristino delle transazioni durante una riorganizzazione della blockchain. In circostanze altamente inusuali, un miner avrebbe potuto generare una quantità di dati tale da superare i limiti della posizione nei file, con il rischio di corrompere i registri necessari al processo e di causare l’arresto dei nodi interessati. Sugli ordinari sistemi a 64 bit, lo sfruttamento richiederebbe migliaia di blocchi appositamente costruiti e una riorganizzazione della catena estremamente precisa: condizioni alla base della minore severità attribuita al problema.
Le anomalie sono state rilevate inizialmente da Project Loupe, un’iniziativa di scansione automatizzata fondata sui grandi modelli linguistici e sviluppata da Elias Rohrer presso Spiral. Gregory Sanders ne ha successivamente convalidato i risultati e ha avvisato il team di sicurezza di Bitcoin Core. La prima vulnerabilità è stata individuata l’8 luglio, una seconda il 15 settembre e il difetto relativo all’esaurimento della memoria su Windows e macOS il 23 ottobre. Le patch sono state completate il 26 ottobre e le versioni aggiornate sono state rilasciate nei due giorni successivi.
L’episodio non equivale a una sostituzione della revisione tecnica con l’intelligenza artificiale. Nel percorso descritto, l’analisi automatizzata ha contribuito a individuare possibili anomalie; la convalida, la valutazione dell’impatto e la correzione sono passate attraverso il lavoro degli sviluppatori. Il rilievo della vicenda sta proprio nella combinazione fra strumenti capaci di analizzare una base di codice complessa e una procedura di risposta che porta rapidamente alla distribuzione delle patch. Se difetti di questo genere diventano più semplici da cercare, anche la tempestività degli aggiornamenti diventa un elemento essenziale della sicurezza dell’infrastruttura.
Le patch, tuttavia, non eliminano ogni esposizione nelle configurazioni meno aggiornate. Bitcoin Core ha avvertito che i sistemi a 32 bit e i nodi che archiviano i dati della blockchain su file system FAT32 possono restare vulnerabili al problema di overflow in condizioni specifiche. Le serie 29.x e precedenti hanno inoltre raggiunto la fine del supporto: l’installazione della patch 29.5 non rende queste diramazioni nuovamente mantenute per futuri aggiornamenti. Il passaggio alla versione 32.1 richiede anche macOS 14 o una versione successiva, oppure Windows 10 versione 1903 o successiva; per chi proviene da release obsolete può essere necessaria ulteriore attenzione alla migrazione della directory dei dati.
La vicenda riporta l’attenzione su una componente meno visibile della rete Bitcoin: la sicurezza del software che consente ai nodi di validare transazioni e blocchi e di comunicare tra loro. L’assenza di sfruttamenti attivi segnalati non riduce l’utilità degli aggiornamenti, soprattutto quando le debolezze sono state rese pubbliche dopo il rilascio delle correzioni. Per gli operatori, la distinzione non è soltanto tecnica: mantenere software e sistemi supportati è una condizione pratica per ridurre l’esposizione a problemi già identificati e corretti dal progetto.