NotizieCryptoIl bug a bassa entropia di Coldcard spinge i detentori di Bitcoin a rivedere la fiducia nei hardware wallet

Il bug a bassa entropia di Coldcard spinge i detentori di Bitcoin a rivedere la fiducia nei hardware wallet

Autore: Cointelegraph·

Punti chiave

  • Gli aggressori hanno sottratto oltre 100 milioni di dollari in Bitcoin sfruttando una vulnerabilità a bassa entropia negli hardware wallet Coldcard che ha permesso di forzare le chiavi private.
  • La vulnerabilità ha avuto origine nella versione del firmware 4.0.1, rilasciata a marzo 2021, che ha sostituito il generatore di numeri casuali hardware STM32 con il generatore di numeri pseudo-casuali Yasmarang di MicroPython.
  • Coinkite stima che i dispositivi Mk2 e Mk3 producessero seed con circa 40 bit di entropia, mentre i modelli Mk4, Mk5 e Q raggiungevano circa 70 bit, entrambi valori ampiamente inferiori ai 128 bit richiesti per una frase seed sicura di 12 parole.
  • Gli utenti che avevano aggiunto entropia supplementare tramite dadi o impiegato una passphrase BIP-39 con un percorso di derivazione non standard erano protetti dall'exploit.
  • Coinkite ha pubblicato un avviso ufficiale sulla generazione dei seed per i dispositivi interessati e diversi metodi di entropia fisica, tra cui il lancio dei dadi e le tabelle di ricerca su carta, vengono promossi come alternative più sicure.
Il bug a bassa entropia di Coldcard spinge i detentori di Bitcoin a rivedere la fiducia nei hardware wallet

In seguito alla divulgazione di una grave vulnerabilità a bassa entropia negli hardware wallet Coldcard — legata a furti osservati pubblicamente a partire dal 30 luglio — i detentori di Bitcoin stanno rivedendo le assunzioni di fiducia alla base delle loro configurazioni di autocustodia. Gli aggressori hanno sfruttato il difetto per forzare le chiavi private, causando il furto di oltre 100 milioni di dollari in BTC.

Coldcard, prodotta da Coinkite, è stata ampiamente considerata uno degli hardware wallet più orientati alla sicurezza nell'ecosistema Bitcoin, commercializzato specificamente per il suo design air-gapped e il supporto di funzionalità avanzate come multisig e flussi di lavoro PSBT. La compromissione di questo posizionamento ha intensificato l'attenzione su come i produttori di hardware wallet implementino e mantengano i percorsi di codice più critici per la sicurezza.

Come funzionava il difetto di entropia di Coldcard

I dispositivi Coldcard erano dotati di STM32 "true random number generator" (TRNG) progettati per affidarsi a processi fisici al fine di produrre frasi seed non indovinabili. Tuttavia, una vulnerabilità critica sembra essere stata introdotta quando il creatore di Coldcard, NVK, ha avviato una riscrittura del firmware per transitare il progetto da un modello di software libero con licenza GPL a un modello di sola lettura.

A partire dalla versione del firmware 4.0.1, rilasciata a marzo 2021, i dispositivi utilizzavano il generatore di numeri pseudo-casuali (PRNG) Yasmarang di MicroPython invece di sfruttare correttamente l'RNG hardware STM32. Questa deviazione ha di fatto aggirato la fonte di entropia basata sull'hardware. La generazione di numeri casuali rimane un problema fondamentalmente difficile nell'informatica, motivo per cui la creazione di chiavi private sicure e non indovinabili deve sempre affidare, almeno in parte, a processi fisici esterni. Il passaggio dalla licenza GPL ha inoltre ridotto la capacità degli sviluppatori indipendenti di auditare le modifiche al firmware in tempo reale — una tensione che la community open-source degli hardware wallet ha da tempo segnalato come rischio sistemico.

Gli analisti hanno ampiamente descritto l'uso di Yasmarang come un fallback pre-programmato. Coinkite, il produttore di Coldcard, ha contestato questa caratterizzazione in un recente post su X.

La possibilità che i Coldcard fossero programmati per ricorrere a un metodo di generazione del seed palesemente insicuro ha alimentato le speculazioni su X sul fatto che il difetto fosse una backdoor inserita intenzionalmente. Il giornalista investigativo di Bitcoin Hodlnaut ha ipotizzato che il bug derivasse da pratiche di sviluppo trascurate e da tentativi di sopprimere gli errori tramite modifiche arbitrarie al codice.

Secondo le stime di Coinkite stessa, i dispositivi Mk2 e Mk3 generavano seed con soli 40 bit di entropia, mentre i modelli Mk4, Mk5 e Q raggiungevano circa 70 bit. Entrambi i valori sono ampiamente inferiori ai 128 bit richiesti per una frase seed sicura di 12 parole.

Correlato: Gli hacker di Coldcard trasferiscono 64 BTC e 200 ETH a mixer di criptovalute

La probabilità che un determinato wallet potesse essere compromesso dipendeva dal fatto che l'utente avesse o meno aggiunto entropia supplementare tramite dadi, o avesse impiegato una passphrase BIP-39 combinata con un percorso di derivazione non standard.

James O'Beirne ha successivamente lanciato cktripwire, un sito web che impiega indirizzi honeypot per identificare quali configurazioni di wallet gli aggressori stanno attivamente svuotando.

Coinkite ha inoltre pubblicato un avviso ufficiale sulla generazione dei seed per i dispositivi interessati.

Come l'entropia fisica ha protetto alcuni wallet

L'exploit di Coldcard ha ribadito in modo drammatico uno dei principi fondanti della community Bitcoin: non fidarti, verifica.

Gli utenti che hanno scelto di non affidarsi a un componente hardware opaco per la generazione dell'entropia nella fase più critica per la sicurezza — utilizzando invece un numero sufficiente di tiri di dadi fisici — sono stati interamente protetti dall'exploit. Lanciare i dadi è un processo semplice, visibilmente trasparente, che qualsiasi utente può auditare e comprendere in modo intuitivo. La verifica di un TRNG, al contrario, richiederebbe un'ispezione fisica dettagliata dell'elettronica del dispositivo e un esame approfondito del firmware.

Sebbene alcuni commentatori abbiano citato gli eventi recenti come prova che l'autocustodia sia fondamentalmente difettosa, l'adesione alle migliori pratiche di entropia lascia pochissime vie a un aggressore remoto. Quando una frase seed viene generata tramite entropia fisica anziché processi dipendenti dall'hardware, il singolo punto di guasto più critico nella creazione del wallet viene eliminato.

La chiave pubblica estesa (xpub) e gli indirizzi di ricezione derivati dal seed possono essere verificati incrociando i risultati importando il seed in più dispositivi indipendenti. L'esfiltrazione del nonce attraverso un airgap può essere rilevata confermando che due dispositivi producano firme identiche conformi a RFC 6979 quando elaborano la stessa transazione non firmata.

La generazione sicura di entropia è dunque il prerequisito assoluto per un wallet sicuro. Da quando l'exploit di Coldcard è diventato pubblico, vari metodi e proposte per una generazione affidabile di entropia hanno circolato ampiamente su X.

L'approccio più diffuso consiste nel verificare la capacità del dispositivo di convertire correttamente le facce dei dadi in una frase seed BIP-39 applicando un hash SHA-256. Utilizzare oltre 100 tiri di dadi genera entropia sufficiente per un seed di 24 parole.

Metodi più semplici su carta, come la tabella di ricerca pubblicata da Bitbox, suddividono l'elenco di parole BIP-39 in modo che una combinazione di sei lanci di dadi e un lancio di moneta possano essere mappati direttamente a una parola seed senza alcun dispositivo elettronico.

Strumenti più avanzati, come il foglio di lavoro di de-biasing dei dadi codex32, impiegano un estrattore di von Neumann — una procedura calcolabile interamente a mano — per produrre una frase seed sicura anche con dadi distorti.

Un'alternativa ai dadi consiste nello stampare l'elenco completo di parole BIP-39, ritagliare le parole in striscioline di carta uniformi, mescolarle accuratamente e pescare 24 parole a caso. Prodotti come Seedsticks o Entropia offrono implementazioni più comode e resistenti di questo metodo.

L'hardware specializzato come Frostsnap tenta di distribuire in modo verificabile la generazione di entropia su più dispositivi. Alcuni utenti hanno persino iniziato a progettare propri strumenti di entropia fisica in grado di generare frasi seed quasi alla stessa velocità di un wallet elettronico dedicato.

Magazine: Gli attacchi a Coldcard significano che tutti gli hardware wallet sono ora insicuri?