Una domanda (forse più di una) da 1.4+ miliardi di dollari

Venerdì 21 febbraio 2025 il mondo crypto è stato scosso dall’annuncio di Ben Zhou, il CEO di Bybit la crypto-borsa di Dubai seconda al mondo in termini di volumi (dopo Binance) che rendeva pubblico un attacco hacker ad un cold wallet (un wallet offline: si avete letto bene, si tratta di un wallet non connesso ad internet) in grado di sottrarre ETH depositati in staking, mETH e altri token ERC20, per un totale di più di 1.4 miliardi di dollari, il più grande furto nella storia delle cripto-valute.

La storia di questi attacchi inizia con MtGox una cripto-borsa giapponese “bucata” per ben due volte, la prima nel 2011, la seconda nel 2014 (per una carrellata non esaustiva cliccare qui). Il punto è che questi attacchi (che hanno sottratto bitcoin) sono dipesi da falle nei protocolli di sicurezza della borsa, falle che sono state ampiamente coperte in più di dieci anni. Eppure i furti avvengono ancora. Intendiamoci se si guardano i rapporti di software house che si occupano dell’analisi delle chain come Chainalysis i furti nel mondo digital asset avvengono continuamente, ma questo ha ovviamente fatto notizia a causa dell’entità dello stesso ed in parte perché sembra perpetrato da un ben noto gruppo di hacker coreani “Lazarus Group” implicato in altri noti e recenti casi: Ronin Network, DMM Bitcoin e WazirX tutti caratterizzati dallo stesso metodo.

Nel caso di MtGox il “complice” dell’attacco del 2014 fu un bug nel protocollo di validazione delle transazioni noto come transaction malleability. Tecnicamente l’attacco è stato possibile perché l’hashing usato per identificare un blocco di transazioni e quello usato per la firma digitale (ovvero il comando per trasferire i fondi, che solo il detentore della chiave privata può dare) vengono fatti su due contenuti di informazioni diverse. Probabilmente l’hacker ha richiesto ad MtGox la restituzione di Bitcoin che aveva depositato presso la borsa, la quale ha emesso una transazione di rimborso con un certo identificativo hash. La transazione veniva intercettata dall’hacker che ne cambiava il contenuto in modo da alterare il codice hash della transazione, ma non la firma digitale che rimaneva valida. Reimmetteva quindi in rete la transazione modificata per poi reclamare con MtGox il mancato completamento della transazione di rimborso. La borsa una volta accertato che la transazione di rimborso (avendo l’hacker alterato l’identificativo) non era stata validata ne emetteva una nuova con un diverso codice hash per evitare il double-spending e l’attacco proseguiva fino a sottrarre circa un 7% di tutti i Bitcoin al tempo in circolazione.

Ne caso di Bybit l’attacco si è concentrato su Ether ed ha sfruttato una innovazione che al tempo di MtGox non esisteva: lo smart contract. Vediamo allora di capire meglio come abbiano fatto, i pirati informatici, a rubare questi asset digitali. Una disamina precisa e completa è stata fornita da SlowMist una società di cybersicurezza specializzata sulle blockchain che offre i suoi servizi ai più noti player del settore. Noi proveremo a spiegare l’attacco in modo intuitivo. Innanzitutto si è svolto in tre fasi:

1) Una transazione benigna dal cold wallet ad un hot (o warm, poco importa) wallet;

2) La transazione benigna conteneva la falla (il cavallo di Troia) che ha innescato l’esecuzione di un contratto maligno;

3) Il contratto maligno ha trasferito i token ad un indirizzo da cui sono stati spacchettati e ritrasferiti in 40 diversi indirizzi e da li ritrasferiti per farne perdere le tracce.

La domanda ora diventa. Come è stato possibile l’innesco del contratto maligno nella fase 2? Per questioni di sicurezza (protezione di chiavi private essenzialmente) Bybit, come molti altri operatori, usa GnosisSafe uno smart contract wallet che prevede una procedura a firma multipla per autorizzare una transazione, in questo caso una transazione da un wallet offline ad un wallet online. Detta grossolanamente l’uso della chiave privata per effettuare una transazione richiede più di una conferma (in questo caso ne richiedeva tre). Quando si innesca una transazione sulla rete Ethereum i parametri da approvare (con la firma digitale) sono “to” (il destinatario”) e “data” (l’oggetto della transazione). Tuttavia GnosisSafe prevede un altro parametro “operation” che può assumere solo due valori: “0” che permette di chiamare la funzione execTransaction che esegue il contratto voluto dall’utilizzatore; oppure può assumere il valore “1” e quindi GnosisSafe non chiama più execTransaction, ma DelegateCall ovvero una funzione che attiva un altro contratto: ed è proprio così che gli hacker hanno innestato il contratto maligno, che ha preso il controllo del cold wallet consentendo l’esecuzione di due funzione: sweepETH e sweepERC20 (non crediamo sia necessario spiegare cosa hanno fatto queste due funzioni).

A questo punto viene da chiedersi: come è possibile che tre diversi firmatari (che sono operatori in carne ed ossa) non si siano accorti del cambio da “0” ad “1” del parametro “operation”? Viene il sospetto che il parametro sia stato “offuscato” (rappresentato con uno zero agli occhi dell’operatore quando in realtà era un uno: non semplice da realizzare!), ma forse esiste una spiegazione ancora più banale: pensiamo a quando entriamo nel nostro e-banking piuttosto che nel nostro web-email; quanti guardano nella barra del URL per accertarsi che il protocollo sia https invece del semplice (ed insicuro) http o che l’indirizzo sia correttamente espresso (il cambio di una sola lettera potrebbe sfuggire a qualsiasi occhio)? 

E soprattutto quanti dimenticano di attuare l’autenticazione a due fattori che conferisce comunque maggiore sicurezza? Probabilmente tre controlli per un parametro che non viene quasi mai utilizzato non sono efficaci.

Eppure sul sito di Reddit si ventila l’ipotesi che i livelli di sicurezza di Bybit non fossero di massimo livello (come accade per altre piattaforme come Fireblocks o Coinbase) per non sacrificare la velocità delle transazioni.

Nel frattempo proseguono le indagini per cercare di tracciare il percorso dei token rubati e si offrono addirittura ricompense per allettare hacker etici a cooperare nella ricerca. Tuttavia non possiamo non evidenziare il solito copione inscenato: l’annuncio dell’attacco da parte dei vertici della piattaforma attaccata (vedi il comunicato sul sito di Bybit), spesso fatta dapprima sui social (come X per esempio), la rassicurazione che la situazione è sotto controllo e che la borsa ha i mezzi per risarcire gli utilizzatori. Esattamente quello che ha fatto Ben Zhou: il cold wallet attaccato è uno solo; gli altri sono al sicuro; Bybit ha i mezzi per risarcire, ecc.

Noi continuiamo a sostenere sempre lo stesso punto. Le borse cripto sono strutture centralizzate (che quindi non hanno nulla a che vedere con la filosofia di base delle blockchain: la decentralizzazione) del tutto simili alle borse tradizionali che conosciamo, con la differenza che invece che trasferire asset fuori borsa attraverso database e collegamenti centralizzati lo fanno usando le blockchain, cosa che tra l’altro potrebbero fare anche le borse tradizionali. Ci chiediamo quindi perché queste strutture non siano regolamentate e sorvegliate come tutte le borse su cui operiamo; perché nessuno può controllare la capitalizzazione e gli effettivi ammontari che queste borse mettono a garanzia degli investitori, ma bisogna fidarsi della parola dei vertici? Perché – se effettivamente esistono – nessuno impone a tutte queste strutture (senza eccezione alcuna) i più alti standard di sicurezza esistenti?

 

Disclaimer: Il presente articolo esprime l’opinione personale dei collaboratori di Custodia Wealth Management che lo hanno redatto. Non si tratta di consigli o raccomandazioni di investimento, di consulenza personalizzata e non deve essere considerato come invito a svolgere transazioni su strumenti finanziari.