HomeBlockchainHard fork su BNB Chain per aumentare la sicurezza

Hard fork su BNB Chain per aumentare la sicurezza

Pochi giorni fa un bridge basato su BNB Chain ha subito un attacco hacker che ha consentito agli attaccanti di rubare circa 100 milioni di dollari in criptovalute. 

Nonostante l’hack non sia stato effettuato direttamente su BNB Chain, ma su uno smart contract che girava su questa blockchain, il team ha deciso lo stesso di elevare i livelli di sicurezza. 

Quindi, hanno creato una patch urgente per “mitigare l’infrastruttura cross-chain tra Beacon Chain e Smart Chain”, così da poter riattivare la cross-chain. 

BNB Chain esegue un hard fork

Per applicare tale patch sono stati costretti a rilasciare una nuova versione, la 1.1.16, che di fatto è un hard fork di quella precedente. 

Spesso per aggiornare i protocolli decentralizzati è necessario effettuare degli hard fork, ovvero per l’appunto degli aggiornamenti che non risultano però retrocompatibili. 

Quando ad un protocollo si applica un aggiornamento non retrocompatibile si crea una cesura, con il nuovo protocollo che diventa qualcosa di diverso da quello precedente perchè non compatibile con esso. In tal caso di fatto si creano due protocolli differenti, ma se gli utenti e gli operatori smettono di utilizzare quello precedente, sostituendolo con la nuova versione aggiornata, di protocolli attivi ne rimane uno solo. 

Quindi in questo specifico caso non c’è stato un vero e proprio sdoppiamento della catena, perchè il vecchio protocollo viene abbandonato e sostituito completamente da quello nuovo, quindi di catena BNB Chain continua ad essercene una sola. 

Ad esempio, invece, quando è stato effettuato l’hard fork che ha avviato il Merge di Ethereum, alcuni miner hanno deciso di non aggiornare e continuare ad utilizzare la vecchia versione basata su Proof-of-Work. Così facendo la catena si è sdoppiata e sono nate due criptovalute, ETHW (Ethereum PoW) che non è altro che la continuazione del vecchio protocollo non aggiornato basato su PoW, ed ETH (Ethereum vero e proprio) che è la nuova versione aggiornata basata su PoS. 

L’hard fork di BNB Chain che introduce la patch urgente è stato chiamato Moran, ed è avvenuto all’altezza del blocco 22.107.423. 

Le modifiche apportate da questo aggiornamento includono, oltre alla correzione della vulnerabilità nel controllo hash iavl, anche l’introduzione dell’intestazione del blocco nel controllo della sequenza negli smart contract cross-chain, e mette in whitelist il relayer dei genesis candidates. 

Le vulnerabilità dei bridge cross-chain

I bridge cross-chain consentono agli utenti di trasferire risorse tra due differenti blockchain. In particolare quello attaccato qualche giorno fa è un bridge che consente scambi tra Beacon Chain e Smart Chain della stessa BNB Chain. Infatti BNB Beacon Chain gestisce la governance e lo staking della rete, mentre la Smart Chain viene utilizzata per gli smart contract compatibili con Ethereum Virtual Machine. Inoltre entrambe queste catene possono a loro volta connettersi ad altre catene grazie ad un altro bridge chiamato Token Hub.

Quindi, sebbene l’attacco non sia avvenuto direttamente su BNB Chain, ma solo sullo smart contract del bridge, si tratta di un bridge troppo importante per potersi limitare a non utilizzarlo più. È stato pertanto necessario un intervento del team di BNB Chain per chiudere la falla in modo da poterlo riattivare. 

In particolare l’attaccante ha sfruttato proprio una vulnerabilità legata al controllo hash iavl integrato nel bridge, e ciò ha richiesto l’applicazione della relativa patch. 

L’attaccante era riuscito a coniare dal nulla 2 milioni di token BNB, per un valore di circa 560 milioni di dollari. In seguito era riuscito a trasferire token per un valore complessivo di circa 100 milioni di dollari verso altre blockchain come Ethereum, Fantom, Polygon, Avalanche e Arbitrum. Invece, la maggior parte dei token BNB creati sono rimasti su BNB Chain e sono stati successivamente congelati.

Appena resisi conto dell’attacco il team di BNB Chain ha chiesto a tutti i 44 validatori di stoppare momentaneamente le operazioni, per poi riattivarle più tardi dopo che il bridge attaccato era stato chiuso. Grazie alla patch applicata ieri il bridge dovrebbe essere riattivato. 

Da notare che questo tipo di operazione, ovvero la sospensione delle attività di tutta la blockchain, sui protocolli realmente decentralizzati è praticamente impossibile, perchè è estremamente difficile che tutti i nodi possano realmente smettere di operare. Ad esempio, Bitcoin ha più di 15.000 nodi, in gran parte sconosciuti, quindi risulterebbe di fatto impossibile convincerli tutti a chiudere, anche se solo per un certo periodo di tempo. 

BNB Chain, invece, è un protocollo creato in origine da Binance, e con solo 44 nodi validatori, tutti noti. Il fatto che sia stato possibile contattarli tutti e convincerli in tempi molto rapidi a fermare le operazioni rivela piuttosto chiaramente che non si tratta di un protocollo realmente decentralizzato. 

Marco Cavicchioli
Marco Cavicchioli
"Classe 1975, Marco è stato il primo a fare divulgazione su YouTube in Italia riguardo Bitcoin. Ha fondato ilBitcoin.news ed il gruppo Facebook "Bitcoin Italia (aperto e senza scam)".
RELATED ARTICLES

MOST POPULARS

GoldBrick