Il bug di Ethereum che poteva generare token infiniti: ecco cos'è accaduto

L'hacker e sviluppatore saurik ha scoperto un bug che avrebbe potuto portare alla creazione e accreditamento di infiniti token Ethereum
Il bug di Ethereum che poteva generare token infiniti: ecco cos'è accaduto
SmartWorld team
SmartWorld team

Avrebbe potuto diventare sfruttarlo a suo vantaggio per arricchirsi, eppure ha deciso di mettere il suo ingegno al servizio dell'azienda e di portare alla luce quel bug che gli avrebbe consentito di creare criptovaluta di livello 2 all'infinito e convertirla in effettivi token Ethereum.

Al centro della storia c'è Optimism, un protocollo layer 2 finalizzato a rendere più scalabile la blockchain e a ridurre le commissioni di Ethereum. Che è una piattaforma di calcolo decentralizzata che utilizza token ETH, principale criptovaluta di Ethereum, per il pagamento dei costi delle transazioni.

L'esperto in cybersecuruty  Jay Freeman, noto anche con il nome di saurik, ha scoperto un bug nel protocollo, e invece che approfittarne ha deciso di studiarlo più a fondo e poi comunicare il risultato delle sue indagini all'azienda, ricevendo in cambio una ricompensa da oltre 2 milioni di dollari.

"Siamo incredibilmente grati a saurik per avere investito così tanto tempo nell'analizzare il nostro protocollo nel corso dell'ultimo anno - hanno fatto sapere da Optimism - Le sue ricerche hanno consentito di individuare il problema e farci rilasciare un fit così importante. Vi raccomandiamo caldamente di analizzare nel dettaglio la sua spiegazione".

La caccia al bug di Ethereum

Da dove nasce questa "caccia al bug"? Nell'agosto del 2021 è stato rilasciata l'implementazione dell'EIP 1559 (Ethereum Improvement Proposal), un aggiornamento del software in programma da diverso tempo finalizzato a modificare sia la gestione delle transazioni sia la fornitura totale di Ethereum disponibile sulla blockchain. Semplificando al massimo, il bug scoperto da saurik andava a incidente sul "nano payment protocol" di Optimism, uno dei protocolli che consentono agli utenti di inviare piccoli quantitativi di criptovalute con altrettanto piccole commissioni di transazione e tempi molto più rapidi. Rapidità e quantità però, spesso erodono la sicurezza, come confermato dal lavoro minuzioso ed estremamente complesso svolto da saurik.

Nella relazione inviata all'azienda, l'hacker ha scoperto che a causa di un bug era possibile creare una finta transazione che, una volta annullata dall'utente, gli restituiva la quantità di Ethereum "virtuali" coinvolti, che non erano però stati di fatto creati né trasferiti. Diventava così possibile creare una quantità infinita di criptovaluta di livello 2, da convertire poi in veri e propri Ethereum.

"Quando una transazione si autodistrugge, il suo saldo viene sia dato al beneficiario sia tenuto - ha spiegato saurik - Se il contratto prevedeva 10 OETH, 10 OETH vengono creati e consegnati al beneficiario".

Saurik ha anche annunciato che un altro hacker sembrava aver notato il bug, senza rendersi però conto della reale portata di quanto avrebbe potuto ottenere: "Questo dimostra che a volte anche le persone che stanno guardando in modo diretto un bug non sempre ne vedono le implicazioni indirette sulla sicurezza", ha chiarito sempre nella lunga relazione resa pubblica.

Inutile dire che quanto scoperto da saurik ha spinto l'azienda a rilasciare immediatamente un fix del bug, e a ricompensarlo con una cospicua somma. Che paragonata a quanto sarebbe potuto accadere se il bug fosse stato individuato da malintenzionati, resta comunque potenzialmente infinitesimale: sfruttando un meccanismo simile, nel 2010 un hacker era riuscito a creare e accreditarsi 184 miliardi di Bitcoin. Una successiva modifica del protocollo, però, aveva risolto il problema, ripristinando il limite di 21 milioni di Bitcoin, come aveva confermato Satoshi Nakamoto, il misterioso creatore della criptovaluta Bitcoin. Per non parlare del danno di immagine che avrebbe comportato una falla di questo genere sfruttata dai suddetti malintenzionati.

Chi è Jay Freeman alias saurik

Jay Freeman, conosciuto nel mondo della cyber security semplicemente come saurik, è un esperto di sicurezza informatica e uno sviluppatore. È il creatore di Cydia, un software open source che fornisce agli utenti di iPhone jailbroken software e controlli avanzati del sistema operativo non disponibili su App Store, molto spesso a causa di restrizioni tecniche, ma anche per una scelta esplicita da parte di Apple.

In precedenza ha sviluppato altri jailbreak per Android e lavorato ad altri progetti, portando avanti in parallelo un lavoro di informazione attraverso panel e conferenze: "Ora sono uno dei restanti fondatori di Orchid - scrive lo stesso saurik - un progetto che costruisce un mercato per la larghezza di banda programmabile, insieme a Steven Waterhouse (un partner fondatore di Pantera Capital) e Brian Fox (sviluppatore di bash, readline, ecc.)"

Mostra i commenti