Un attaccante ha svuotato 48 wallet appartenenti a nove utenti del bot di trading Bloom in 94 secondi, lunedì 26 ottobre, portando via 9.408 SOL, secondo un’indagine on-chain di Bitquery. Bitquery valuta blockchain that runs exactly as written when it is called, holding and moving funds according to its code, without an intermediary able to change the outcome.">smart contract holding reserves of two or more tokens, supplied by users, that a decentralized exchange uses to execute trades automatically at a price set by a formula.">pool diverge, compared with simply holding the same tokens in a wallet. It becomes permanent when the provider withdraws.">il bottino in circa 953.000 dollari, usando il prezzo di SOL durante il furto (intorno a 101,3 dollari). È stato prelevato solo SOL; le stablecoin presenti negli stessi wallet sono state lasciate per dopo.
L’hack del bot di trading Bloom arriva con due versioni che non coincidono. Bloom, un bot basato su Telegram per Solana e per le reti EVM, afferma che nessuna chiave privata è stata compromessa e attribuisce l’accaduto a una falla di esecuzione di codice da remoto (RCE) in un modulo software di terze parti. La lettura della blockchain fatta da Bitquery è un’altra: ogni prelievo è un semplice trasferimento di SOL firmato solo dalla chiave del wallet svuotato. Nessuno ha pubblicato la prova della causa. Bloom ha promesso rimborsi integrali ma non ha indicato una data.
Anche i conteggi differiscono di poco. Bloom stima la perdita in circa 9.408 SOL, cioè 947.000 dollari, sottratti a «49 indirizzi wallet appartenenti a 9 utenti», in un comunicato su X; i primi rapporti on-chain parlavano di circa 954.000 dollari, ha ricordato Bitcoin.com News. Bitquery conta 48 wallet svuotati perché uno dei 49 indirizzi non ha mai effettuato una transazione e dunque non c’era nulla da prelevare. Le cifre in dollari divergono soprattutto per il prezzo di SOL usato da ciascuna fonte.
L’hack del bot di trading Bloom on-chain: 94 secondi, 48 wallet, nove trader
Bitquery ha ricostruito la notte minuto per minuto. Verso le 00:59 UTC del 26 ottobre due tentativi sul wallet più grande del primo trader sono falliti. Alle 01:00:28 UTC un trasferimento di prova da 0,01 SOL è arrivato a un indirizzo nuovo, 7kY8qx8MqJ7Rz2vMhgHETdZLHcTp1oM78AA9dmE9p8BQ, i primi SOL da lui mai ricevuti. Nei due minuti successivi sono seguiti altri nove piccoli test, uno per trader, a pochi secondi l’uno dall’altro.
Poi lo svuotamento vero e proprio. Il primo prelievo completo è delle 01:03:07 UTC. Il singolo trasferimento più grande, 1.636 SOL (circa 166.000 dollari), è passato alle 01:03:50 UTC; lo ha segnalato il tracker on-chain Onchain Lens, ha riferito Bitcoin.com News. L’ultimo prelievo è arrivato alle 01:04:41 UTC.
Ogni prelievo era un semplice trasferimento di SOL, dice Bitquery, firmato soltanto dalla chiave del wallet che veniva svuotato. Nessuna approvazione di token, nessuno smart contract, nessun cofirmatario. Lo script è andato avanti trader per trader in un ordine fisso, partendo dal wallet più grande, ha pagato su ogni transazione la stessa commissione di 0,000105 SOL (compresa una mancia di priorità da 0,0001 SOL) e ha lasciato in ogni wallet un residuo di SOL, circa 0,0014. Bitquery lo interpreta come un attacco automatizzato, opera di qualcuno che aveva già l’elenco dei wallet e poteva firmare per conto di quei wallet.

Alle 04:30:56 UTC, tre ore e mezza dopo il furto, tutti i 9.408,21 SOL sono stati spostati con un unico trasferimento su un wallet di raccolta, 6nYyCzJJzErbmfxvXqzbAqwoBzNvXUiwr15KCkcgmoe9. Il primo post di Bloom su X è arrivato verso le 04:37 UTC, secondo la cronologia di Bitquery.
L’USDC per cui l’attaccante è tornato
Nei 48 wallet, al momento del furto, c’erano circa 56.853 dollari in USDC, trovati da Bitquery, quasi tutti (circa 49.041 dollari) in un solo wallet del primo trader. Alle 01:08:51 UTC l’attaccante ha provato a spostarli e ha fallito: nel wallet non restava abbastanza SOL per pagare la commissione. Alle 01:28:43 UTC gli ha inviato 0,02 SOL per le commissioni. Il proprietario è stato più rapido e ha portato via 48.550 USDC alle 01:30:19 UTC. Quando il trasferimento di prova dell’attaccante è andato a segno, alle 01:46:03 UTC, restavano circa 0,52 USDC.
Quella notte i proprietari hanno messo in salvo circa 52.035 dollari in USDC. Altri 4.818 dollari si trovavano ancora nei wallet svuotati quando Bitquery li ha letti, alle 06:33 UTC.
Le perdite per trader: da 1.864 SOL a 650 SOL
Le nove vittime hanno perso tra 650 e 1.864 SOL ciascuna. La perdita mediana per wallet è stata di circa 89 SOL, cioè 9.000 dollari. Poche vittime e saldi elevati: è ciò che distingue Bloom dagli incidenti dei bot di settembre.
| Trader (numerazione di Bitquery) | Wallet svuotati | SOL prelevati | Valore all’epoca |
|---|---|---|---|
| Trader 1 | 5 | 1.864 | 189.000 $ |
| Trader 2 | 4 | 1.146 | 116.000 $ |
| Trader 3 | 6 | 1.309 | 133.000 $ |
| Trader 4 | 1 | 1.040 | 105.000 $ |
| Trader 5 | 1 | 1.022 | 103.000 $ |
| Trader 6 | 5 | 865 | 88.000 $ |
| Trader 7 | 7 | 771 | 78.000 $ |
| Trader 8 | 12 | 650 | 66.000 $ |
| Trader 9 | 7 | 742 | 75.000 $ |
Bitquery aggiunge una precisazione. L’attribuzione dei wallet ai singoli trader è solida per sette dei nove; per i trader 3 e 7 si basa soprattutto sull’ordine in cui i wallet sono stati svuotati.
Bloom incolpa un modulo di terze parti e dice che nessuna chiave privata è stata compromessa
Il comunicato più ampio di Bloom è comparso su X alle 09:12 UTC del 26 ottobre, circa otto ore dopo il furto. «Nessuna chiave privata è stata raggiunta o compromessa e abbiamo escluso una più ampia esposizione dei wallet degli utenti», ha scritto la società. Sostiene che l’attacco abbia «sfruttato un modulo di terze parti attraverso una complessa vulnerabilità di Remote Code Execution (RCE)» e di aver «individuato il preciso vettore d’attacco». Non ha però reso noti né il modulo, né il fornitore, né il vettore.
Sui rimborsi, Bloom afferma che «rimborserà integralmente il 100% dei fondi rubati direttamente su wallet sicuri indicati dagli utenti colpiti». Il suo post precedente, verso le 04:37 UTC, prometteva già di «rimborsare integralmente tutti i fondi persi dai 9 wallet interessati», riferisce Bitquery. Non è stata fissata alcuna data e, al 27 ottobre, nulla on-chain mostrava un rimborso.
Tutti i sistemi di Bloom sono stati messi offline «come misura di sicurezza precauzionale» e gli utenti dovranno effettuare di nuovo l’accesso a Bloom Manager e all’estensione per Chrome quando il servizio riprenderà, riferisce Bitcoin.com News. Bloom dice di essere al lavoro per tracciare i fondi, di valutare opzioni di blocco e recupero e di cercare di identificare l’attaccante, e invita le vittime a spostare ciò che resta su wallet appena generati.
Il team afferma di sviluppare software dal 2018 e di operare nel mondo crypto dal 2021. Coindaro non ha trovato alcuna cifra pubblicata sul numero di utenti o sui volumi di scambio; il suo account su X contava circa 26.500 follower il 27 ottobre.
Perché le due versioni sono in conflitto
Bitquery non prende posizione sulla causa. Riferisce che Bloom aveva inizialmente detto di verificare se «un fornitore terzo possa essere stato compromesso» e considera la causa non confermata.
La sua ricostruzione resta comunque difficile da conciliare con la linea del «nessuna chiave». Il bot di Bloom firma le operazioni sui propri server e conserva la chiave privata di ogni wallet usato con esso, spiega Bitquery. Un semplice trasferimento di SOL su Solana richiede una sola cosa: una firma valida della chiave del wallet. Se ogni prelievo è stato firmato da quella chiave, chi ha eseguito lo script poteva produrre quelle firme. Questo può significare che le chiavi sono state copiate, oppure che l’attaccante ha fatto firmare ai sistemi di Bloom stessa; una falla RCE su un server è compatibile con la seconda lettura. Bitquery aggiunge una terza possibilità, un malware sul computer di ciascun trader o la fuga di chiavi che i trader avevano esportato. Nessuna di queste ipotesi è stata dimostrata.
La differenza conta per gli utenti. Se le chiavi sono state copiate, ogni wallet la cui chiave sia mai stata sui server di Bloom resta esposto finché i fondi non vengono spostati. Se l’attaccante ha soltanto «preso in prestito» il sistema di firma di Bloom per 94 secondi, il rischio finisce quando quel sistema viene riparato. Il consiglio di Bloom di spostare i fondi su nuovi wallet sembra riferirsi al primo caso. Per capire come una sola chiave controlli un wallet, leggi la nostra guida a chiavi private e pubbliche.
Dove si trovano ora i 9.408 SOL: i primi 20 SOL si sono mossi
Alle 07:34 UTC del 26 ottobre, ultimo trasferimento letto da Bitquery, il wallet di raccolta non aveva inviato nulla e nessun exchange, bridge o mixer aveva toccato i due wallet dell’attaccante.
Il 27 ottobre la situazione è cambiata. Coindaro ha letto lo storico del wallet di raccolta su un nodo pubblico della mainnet di Solana alle 11:55 UTC di quel giorno. Aveva inviato due trasferimenti da 10 SOL ciascuno, alle 06:40:55 UTC e alle 11:42:44 UTC, verso due indirizzi nuovi (GfHDgSHQwBw5ssuMRdfw9JLKWzQAvnwJ7ajk7SuzdeFr e HqCbwhMAJgf3EMabx3Kty8mCo9E2ZjqoHcNDbonPP9Am). Entrambi sono stati svuotati nel giro di poche ore con una serie di trasferimenti più piccoli, diversi da circa 1 SOL, verso altri indirizzi che Coindaro non ha seguito oltre. Il saldo del wallet di raccolta era di 9.388,21 SOL alle 11:55 UTC.
Il resto dei movimenti in entrata è polvere: trasferimenti da 0,0001 SOL o meno da indirizzi che iniziano con gli stessi caratteri di quelli dell’attaccante, ciò che Bitquery descrive come address poisoning, indirizzi sosia pensati per essere copiati per errore. La nostra guida agli indirizzi avvelenati e ai falsi airdrop spiega il meccanismo.
Poiché l’attaccante detiene SOL, il valore in dollari segue il mercato. SOL valeva circa 100 dollari alle 11:32 UTC del 27 ottobre, in calo dell’1,34% in 24 ore, il che porta i 9.388 SOL rimasti nel wallet di raccolta a circa 939.000 dollari.
Metà dei wallet svuotati era ormai inattiva
Molte vittime non erano utenti attivi di Bloom. Tutti i 48 wallet avevano pagato una commissione a Bloom almeno una volta, ma 24 non ne avevano pagata nessuna nei 30 giorni precedenti l’attacco e cinque avevano operato per l’ultima volta con Bloom tra gennaio e maggio 2025, secondo Bitquery.
Una chiave conservata sui server di un bot non scade quando smetti di fare trading. Finché il wallet contiene fondi, chiunque ottenga l’accesso alla firma può svuotarlo, che il proprietario si sia collegato la settimana scorsa o l’anno scorso.
Gli hack dei bot di trading prima di Bloom, da Maestro a TradeWiz
Due bot su Ethereum sono stati colpiti a una settimana di distanza nell’ottobre 2023: Maestro il 24 ottobre e Unibot il 31 ottobre, per circa 1,1 milioni di dollari in tutto, secondo l’analisi di CertiK. Entrambi avevano contratti router che permettevano a un estraneo di chiamare transferFrom sui token che gli utenti avevano approvato. La porta d’ingresso erano le approvazioni, che non è il caso di Bloom.
Su Solana, il bot Telegram Solareum ha perso più di 2.800 SOL (circa 520.000 dollari) a danno di oltre 300 utenti a fine marzo 2024 e ha annunciato il 31 marzo la chiusura, ha riferito Cointelegraph. Il resoconto non cita alcun rimborso. BONKbot, inizialmente sospettato, ha detto di essere sicuro e che l’exploit aveva colpito «un’altra app di Solana».
Banana Gun ha preso la strada opposta. I suoi utenti avevano segnalato trasferimenti non autorizzati il 19 settembre 2024. L’analisi post-mortem del team, riportata il 25 settembre, ha fissato le perdite a 3 milioni di dollari per 11 utenti, ha indicato come sospetta una falla in un oracolo di messaggi di Telegram, poi corretta, e ha promesso che «tutti gli utenti colpiti saranno rimborsati integralmente dalla tesoreria di Banana Gun», ha riferito Cointelegraph.
Bitquery elenca anche due casi di settembre 2026 che Coindaro non ha verificato in modo indipendente. LootBot, un bot per airdrop su Ethereum disponibile su Telegram, ha perso circa 627.000 dollari da circa 2.400 wallet il 7 e l’8 settembre, con una perdita mediana di circa 26 dollari. TradeWiz, su Solana, ha perso circa 459.000 dollari da più di 20.000 wallet il 30 settembre, con una mediana di 63 centesimi. Erano reti a maglie larghe con somme minime per vittima. Bloom è l’opposto: nove persone, saldi elevati, colpite in ordine.

Bot di trading su Telegram e sul web: chi custodisce le tue chiavi
La maggior parte dei bot di trading su Telegram e nel browser è di fatto custodial. Quando ti iscrivi, il bot crea un wallet per te e ne conserva la chiave privata sui propri server, così può firmare le operazioni in una frazione di secondo senza chiederti nulla. Quella velocità è il prodotto. Significa anche che il bot, e chiunque riesca a entrarci o a violare uno dei suoi fornitori, può muovere i tuoi fondi. La nostra guida ai wallet crypto e alla custodia spiega la differenza tra un wallet che controlli tu e uno tenuto per tuo conto.
Alcune abitudini limitano i danni quando un bot viene violato:
- Tieni nel wallet del bot solo ciò con cui stai facendo trading adesso e riporta i profitti su un wallet la cui chiave non ha mai lasciato il tuo dispositivo.
- Svuota i wallet del bot che non usi più: 24 dei 48 wallet svuotati su Bloom non avevano pagato commissioni da almeno un mese.
- Dopo un incidente al tuo bot, sposta i fondi rimasti su un wallet appena generato invece di riutilizzare il vecchio indirizzo.
- Considera l’esportazione della chiave di un wallet del bot in altre app come un rischio in più, non come un backup: la chiave finisce per stare in due posti.
- Controlla l’indirizzo di destinazione per intero prima di inviare qualsiasi cosa dopo un hack; gli indirizzi sosia già circolano attorno a questo.
Chi spera di vedere tornare i fondi può leggere cosa funziona davvero per recuperare crypto rubate. Credenziali custodite sui server di altri erano anche il punto debole il giorno prima, nel caso dell’attacco informatico a GMO Internet in Giappone.
Che cosa non si sa ancora
Chi sia l’attaccante e come abbia ottenuto la capacità di firmare per 48 wallet. Bloom non ha reso noto il modulo di terze parti né il fornitore all’origine della falla RCE che descrive, e nessuno ha pubblicato un’analisi tecnica post-mortem. Finché non ne uscirà una, «nessuna chiave privata è stata compromessa» e lo schema delle firme osservato da Bitquery restano uno accanto all’altro.
Resta aperto anche perché siano stati scelti proprio questi nove trader; i saldi elevati e i molti wallet dormienti sono gli unici indizi. Il rimborso non ha una data e Bloom non ha detto quando i suoi sistemi torneranno online. I prossimi segnali saranno on-chain: dove andranno a finire i primi 20 SOL usciti da 6nYyCzJJzErbmfxvXqzbAqwoBzNvXUiwr15KCkcgmoe9, se il resto seguirà e quale sarà il primo trasferimento di rimborso da Bloom alle vittime.
