Attacco alla supply chain di Ledger: le seed phrase degli utenti rubate attraverso CryptoBilis

Autore: Gu Yu, ChainCatcher Un privato ha trasferito 80 bitcoin su un dispositivo Ledger appena acquistato da un rivenditore ufficiale autorizzato. La frase di recupero era stata scritta a mano e custodita in cassaforte. I fondi sono arrivati il 29 settembre, con un costo di acquisto di circa 5,2 milioni di dollari e un profitto non realizzato massimo di 1,38 milioni. Il 9 ottobre, alle 05:54 UTC, tutti gli 80 BTC sono stati trasferiti con una sola transazione. Aveva fatto tutto come da manuale. La stessa mattina, su X e Reddit sono comparse numerose segnalazioni analoghe: a un utente il Ledger Stax era stato svuotato di quasi 100.000 USDT, con la frase di recupero anch'essa scritta a mano e chiusa in cassaforte. L'unico elemento in comune era il canale d'acquisto: il distributore del Sud-Est asiatico CryptoBilis. Il 9 ottobre alle 13:32 UTC Ledger ha confermato di aver avviato un'indagine e ha chiesto a CryptoBilis di sospendere vendite e spedizioni dei dispositivi Ledger; agli utenti che hanno comprato da questo canale negli ultimi 90 giorni è stato consigliato di non inizializzare gli apparecchi non ancora attivati e, per quelli già inizializzati, di trasferire subito gli asset su un nuovo dispositivo generato con una nuova seed phrase. I. Le perdite potrebbero superare i 90 milioni di dollari L'entità del danno è per ora stimata solo on-chain. L'investigatore Specter è stato il primo a pubblicare dieci indirizzi aggregati alle 12:24, tra Bitcoin, Ethereum e TRON, stimando perdite superiori a 86 milioni di dollari; un altro investigatore, tanuki42, ha indicato otto di quegli indirizzi, con perdite stimate oltre 72 milioni; MistTrack, di SlowMist, parla di “quasi 90 milioni”; Bitquery ha coperto 311 wallet e stima circa 92,9 milioni di dollari, di cui circa 42 milioni in Ethereum, 17,6 milioni in Bitcoin e 16,5 milioni in USDT. Arkham ha etichettato questi indirizzi come “Ledger Theft”; venerdì pomeriggio restavano circa 71,5 milioni di dollari negli indirizzi segnalati, con le posizioni maggiori pari a circa 29,4 milioni in ETH, 17,5 milioni in BTC, 13,6 milioni in USDD e 10,8 milioni in USDT. Più rivelatore del totale è il profilo delle vittime. Lookonchain ha rilevato che un indirizzo ha depositato 7 milioni di USDT tre settimane dopo l'acquisto dell'apparecchio, e tutti i fondi sono stati spostati circa dieci ore prima della segnalazione: probabilmente la singola transazione più grande dell'incidente. Inoltre tre indirizzi Bitcoin segnalati detenevano insieme circa 211 BTC alle 13:44 UTC, senza trasferimenti in uscita a quel momento. Secondo Chain INK l'episodio coinvolge circa 98 wallet, con una media di circa 890.000 dollari ciascuno. Non si tratta di un piccolo investitore che perde qualche centinaio di dollari. Sono portafogli in cui qualcuno aveva messo i risparmi di una vita. Il confronto con un altro caso di quest'anno rende la differenza di distribuzione più significativa del totale. A luglio Coldcard ha subito una perdita di circa 111 milioni di dollari per un difetto del generatore di numeri casuali nel firmware, che rendeva indovinabili le seed phrase, ma i danni erano distribuiti su oltre 5.200 wallet, con una media di circa 21.000 dollari. Il caso CryptoBilis, salito in meno di un giorno al secondo posto (circa 87 milioni), riguarda invece solo una novantina di wallet, con una media vicina ai 890.000 dollari. L'incidente Coldcard è stato un colpo a rete larga; questo è una raccolta chirurgica. La distribuzione stessa sostiene l'ipotesi del “modulo modificato”: gli attaccanti dispongono delle seed phrase generate su ogni dispositivo compromesso e possono aspettare — aspettare che arrivino i fondi prima di colpire, scegliendo bersagli che valga la pena colpire. Gli 80 BTC monitorati da Lookonchain sono rimasti fermi nei dispositivi per dieci giorni prima di essere trasferiti in blocco. II. Smontando il dispositivo: il microcontrollore sul flat del display Ledger non ha ancora reso noto il meccanismo dell'attacco, ma qualcuno ha già smontato un apparecchio. Il resoconto più dettagliato è di Mark Karpelès, ex CEO di Mt. Gox. Ha raccontato di aver ricevuto un dispositivo spedito dalla Malesia: in vendita su Amazon a metà prezzo e partito dalla Malesia invece che dal Giappone, dove intendeva ordinarlo — primo campanello d'allarme. Aprendolo ha trovato un modulo nascosto al posto della guarnizione dello schermo: un filo d'antenna, una batteria accorciata o rimossa per fare spazio, un modulo LTE con eSIM e un microcontrollore collegato al bus SPI del dispositivo. La sua valutazione: quel microcontrollore può riconoscere il font usato da Ledger sullo schermo 128×64, bloccare l'interfaccia di configurazione della seed phrase, catturare parola per parola la frase mostrata durante la trascrizione e trasmetterla via LTE. 23pds, Chief Information Security Officer di SlowMist, ha descritto l'approccio tecnico: gli attaccanti installano un microcontrollore all'interno del dispositivo, collegandolo alle linee dati SPI dello schermo; dopo che la seed è generata nel secure element e mostrata a video per la copia, il modulo malevolo registra ogni carattere visualizzato e lo trasmette via LTE o eSIM integrati. Ha sottolineato che il secure element serve a impedire la lettura o l'esportazione diretta delle chiavi private, ma non può controllare ciò che appare sullo schermo. I pochi secondi in cui la seed resta visibile costituiscono la finestra d'attacco. Questo spiega l'aspetto più controintuitivo dell'intera vicenda: questi dispositivi superano la verifica di autenticità di Ledger. Il secure element è autentico, genera correttamente la seed e firma correttamente le transazioni: si limita a essere osservato. Nemmeno il firmware può rilevarlo, perché il modulo impiantato ascolta solo durante l'aggiornamento dello schermo. In altre parole, l'unico modo per individuarlo è smontare fisicamente il dispositivo. Esistono altre due possibilità: seed phrase precaricate — gli attaccanti accendono, configurano, copiano e risigillano il dispositivo in anticipo, inducendo l'utente a credere di “configurare un nuovo apparecchio” mentre in realtà usa parole già note all'attaccante; oppure il phishing. Lo sviluppatore 0xQuit ritiene che alcune vittime possano essere cadute in trappole di phishing e definisce irresponsabile limitarsi a dire che “Ledger è stato hackerato”. III. L'“autorizzazione ufficiale” certifica il diritto di vendita, non la supply chain CryptoBilis non è un venditore ambulante. Fondata a Kuala Lumpur nel 2020, è un distributore ufficialmente autorizzato elencato nella pagina dei rivenditori di Ledger, attivo in Malesia, Indonesia e Filippine. Oltre a Ledger vende Trezor, OneKey, Tangem e SafePal. Il problema è proprio qui. Gli utenti seguono le linee guida di sicurezza insegnate dal settore: se non si può comprare dal sito ufficiale, ci si rivolge a un “rivenditore ufficiale autorizzato”. L'autorizzazione però certifica il diritto della società di distribuire, non l'integrità di ogni dispositivo in magazzino né l'affidabilità di ogni dipendente che lo maneggia e lo smista. Dalla fabbrica alla logistica, al magazzino, alla selezione, al distributore, fino alla porta di casa: ogni anello di questa catena può essere intercettato, aperto e risigillato. La pellicola termoretraibile sul dispositivo di Karpelès era intatta. Una volta che l'apparecchio lascia la custodia di Ledger, la parola “autorizzato” non offre alcuna protezione fisica. Più sottile è la cronologia. Nuovi documenti societari mostrano che CryptoBilis è stata acquisita a marzo di quest'anno e che un individuo di nome “Jiaming”, con indirizzo registrato nella provincia cinese dello Heilongjiang, detiene il 100% della società dal 3 agosto. I co-fondatori precedenti hanno confermato l'acquisizione di marzo, precisando che gli azionisti originari si sono poi dimessi da ogni ruolo operativo, gestionale e amministrativo e che, dopo il passaggio, hanno perso visibilità sulle attività effettive dell'azienda. Hanno esortato l'attuale management ad agire con trasparenza. Secondo DeepChain TechFlow, un accordo di riservatezza firmato dall'acquirente e dagli ex dirigenti vieta loro di divulgare i dettagli dell'operazione, con validità fino al 19 ottobre: quando l'incidente è esploso il 9 ottobre, gli ex dirigenti erano ancora legalmente impossibilitati a rivelarne i termini. Al momento non ci sono prove conclusive che colleghino il cambio di proprietà al furto dei dispositivi, e Ledger si è limitata a sospendere le vendite senza formulare accuse. Il 10 ottobre CryptoBilis ha annunciato la sospensione di vendite e spedizioni di tutti i brand di hardware wallet nei negozi fisici e nei canali online in Malesia, Filippine e Indonesia, ricordando agli utenti che la seed phrase deve essere generata dal dispositivo durante l'inizializzazione e trascritta a mano; qualsiasi apparecchio accompagnato da schede con seed pre-stampate o pre-scritte va considerato insicuro. CryptoBilis non è l'unico canale ad aver avuto problemi quest'anno. A settembre Trezor ha ammesso che il suo fornitore logistico ShipMonk è stato compromesso, esponendo nomi reali, numeri di telefono e indirizzi di casa di circa 81.000 clienti statunitensi; a gennaio Ledger ha rivelato che il suo processore di pagamenti Globale aveva fatto trapelare nomi e contatti di alcuni acquirenti dal sito ufficiale. Nessuno di questi episodi ha causato perdite dirette di fondi, ma hanno ripetutamente consegnato agli attaccanti elenchi con i nomi di chi aveva ricevuto un hardware wallet e quando. Negli ultimi tre mesi l'anello più debole della custodia offline si è spostato dal codice alla logistica. IV. Recupero, auto-aiuto e il consiglio più economico La finestra per il recupero si sta chiudendo. Secondo MistTrack, Tether ha congelato una grande quantità di USDT sugli indirizzi interessati; in risposta gli attaccanti hanno iniziato a convertire gli USDT in USDD, stablecoin su Tron che Tether non può congelare. Secondo Onchain Lens, 430,2 ETH (circa 1,07 milioni di dollari) sono passati attraverso quattro wallet verso Tornado Cash. Bitcoin ed Ethereum non hanno interruttori di congelamento: una volta usciti i fondi, l'unica barriera restano gli exchange. SlowMist e la Security Alliance hanno aperto canali di assistenza; quest'ultima invita gli utenti i cui fondi sono stati trasferiti sugli indirizzi interessati a contattare il team di emergenza SEAL 911. Il consiglio più pratico è arrivato da CZ. Pur definendolo un “attacco alla supply chain limitato a un singolo distributore”, ha indicato una soluzione concreta: dopo aver acquistato un hardware wallet (o scaricato un nuovo software wallet), attendere alcune settimane prima di trasferirvi somme rilevanti, tenendosi aggiornati sulle notizie — l'hardware potrebbe essere manomesso, il sito ufficiale del software compromesso. La custodia autonoma implica responsabilità aggiuntive. La logica di questo “periodo di isolamento” non è tecnica, ma informativa: se un lotto di dispositivi è stato manomesso prima di arrivare ai distributori, gli analisti on-chain hanno bisogno di tempo per individuare i primi apparecchi rubati e lanciare l'allarme. Quelle due settimane sono il margine che gli utenti si comprano. Ciò che questo incidente ridefinisce davvero è però il confine del concetto di “custodia autonoma”. Nell'ultimo decennio il settore ha costruito quasi tutta la narrazione sulla sicurezza della self-custody su crittografia e hardware: secure element, EAL5+, cancellazione del PIN, audit open source. Nulla di tutto questo è stato compromesso. È stato compromesso il percorso dalla fabbrica alla porta di casa: una catena fatta di corrieri, magazzini, distributori e fattorini, in cui nessun passaggio è verificabile dall'utente. Gli hardware wallet promettono che “la chiave privata non lascia mai il dispositivo”. L'ironia è che la chiave privata non ha mai lasciato il dispositivo: è stata solo osservata un po' troppo da vicino nei pochi secondi in cui è stata mostrata all'utente. E quando il perimetro di sicurezza si estende dal chip al pacco davanti a casa, l'ultima linea di difesa davvero a disposizione degli utenti resta una sola: non avere fretta di metterci dentro i propri soldi.