View Full Version : Attacco hacker a Binance: sottratti token per un controvalore di circa 100 milioni di dollari
Redazione di Hardware Upg
08-10-2022, 08:31
Link alla notizia: https://www.hwupgrade.it/news/web/attacco-hacker-a-binance-sottratti-token-per-un-controvalore-di-circa-100-milioni-di-dollari_110832.html
L'exchange vittima di un attacco hacker che ha portato alla sottrazione di un controvalore di circa 100 milioni di dollari. Le stime iniziali parlavano di quasi sei volte tanto
Click sul link per visualizzare la notizia.
Ho sentito una polemica su quasta norizia. Se sono riusciti a limitate i danni congelando le transazioni significa che la chain non é veramente decentralizzata?
Sp3cialFx
08-10-2022, 09:40
Ho sentito una polemica su quasta norizia. Se sono riusciti a limitate i danni congelando le transazioni significa che la chain non é veramente decentralizzata?
era successa una cosa analoga qualche mese fa ed è esattamente la stessa cosa che avevo osservato io
cmq a me ha sempre fatto ridere il discorso legato al decentralizzato per sottrarsi al controllo di banche / Stati, per lo meno qui - altrove ha sicuramente senso;
in realtà l'unica cosa che non è davvero decentralizzata è l'inculata, tra le possibilità che ti freghino o anche solo che perda i token, tra tutte le fregature che ci sono in giro, la volatilità, le speculazioni, il costo per transazione, i danni ambientali tra energia e hardware costruito ad hoc buttati nel cesso
la realtà dei fatti è che fan comodo se vuoi fare il furbo o provare a fare il furbo (vedi chi cerca di specularci), lì si che di motivi per usarlo me ne vengono centomila (da imprenditore il primo che mi viene è l'evasione: metti un tot di rig a minare nella tua azienda, paghi - e scarichi - sia hardware che elettricità, e poi usi le crypto personalmente. Hai speso 100 € per avere 100 € di crypto, con la differenza che i 100 che spendi erano dentro l'azienda e i 100 di crypto sono puliti. Per avere 100 € puliti altrimenti avresti dovuto "spendere" più di 200 € dell'azienda, dato che ci sono sopra le tasse. In più concorrono al tuo reddito e quindi altre tasse. Con le crypto tutto risolto, d'altronde come dicono i fautori... così eviti il controllo di banche / Stati. Per fotterli, ma è un dettaglio)
nonsidice
08-10-2022, 09:49
Ho sentito una polemica su quasta norizia. Se sono riusciti a limitate i danni congelando le transazioni significa che la chain non é veramente decentralizzata?
BNB non usa una chain decentralizzata, ha solo una ventina di validatori.
E' cosa risaputa e pubblica, non tutte le chain sono come le intendete.
TorettoMilano
08-10-2022, 09:59
la rivoluzione della finanza
Ragerino
08-10-2022, 10:09
Quindi hanno rubato soldi che non esistono :D . Visto che è tutta roba virtuale, non c'è qualche modo per 'annullare' questo 'token' o quello che è.
Gringo [ITF]
08-10-2022, 10:11
E' il FUTUR-O !
Falcon88
08-10-2022, 10:41
Quindi hanno rubato soldi che non esistono :D . Visto che è tutta roba virtuale, non c'è qualche modo per 'annullare' questo 'token' o quello che è.
E l' ignoranza vige sovrana :mc:
Ragerino
08-10-2022, 11:04
E l' ignoranza vige sovrana :mc:
Bravo, ora visto che non sei ignorante, spiegami in dettaglio perche non si può intervenire in qualche maniera dal lato gestionale.
Informative
08-10-2022, 11:07
Visto tutto in diretta visto che avevo soldi su Venus dove l'hacker ha depositato i BNB :asd:
La decentralizzazione di BNB di fatto non c'è, sono 21 "community validators" ma che a quanto mi risulta sono nominati da Binance stessa, in sostanza è il peggio dei due mondi, c'è una singola entità che controlla e allo stesso tempo Binance si para le chiappe come responsabilità legali perché può sostenere che non sono loro a validare
Bravo, ora visto che non sei ignorante, spiegami in dettaglio perche non si può intervenire in qualche maniera dal lato gestionale.
I soldi non recuperabili sono quelli già trasferiti e convertiti in altri assets, quindi non basterebbe un rollback delle transazioni bnb
in realtà l'unica cosa che non è davvero decentralizzata è l'inculata, tra le possibilità che ti freghino o anche solo che perda i token, tra tutte le fregature che ci sono in giro, la volatilità, le speculazioni, il costo per transazione, i danni ambientali tra energia e hardware costruito ad hoc buttati nel cesso
Beh la volatilità in sé è una feature, se fossero stabili non si potrebbe speculare :D Mentre il costo delle transazioni e i danni ambientali dipendono da quale blockchain stai usando, non sono assolutamente inevitabili e strutturali
MikTaeTrioR
08-10-2022, 11:37
Per la cronaca..
Non è stata hackerata la blockchain di binance, seppur poco poco decentralizzata...
Hanno hackerato un software X server side che si occupa di trasferire tokens da una blockchain a un altra e di cui tocca fidarsi..
Sp3cialFx
08-10-2022, 11:50
Beh la volatilità in sé è una feature, se fossero stabili non si potrebbe speculare :D Mentre il costo delle transazioni e i danni ambientali dipendono da quale blockchain stai usando, non sono assolutamente inevitabili e strutturali
la volatilità è una feature appunto se reputi una feature la speculazione
"dipendono da quale blockchain stai usando", ok da 2 sett a questa parte salviamo ETH per il danno ambientale, il resto buttate tutto nel cesso grazie che ogni volta che stacco l'alimentatore del cell dalla parete perché consuma 0,02 watt in standby e penso che nel mentre c'è la farm che consuma megawatt per generare hash il cui scopo è unicamente dimostrare la loro esistenza mi sale l'omicidio
McRooster23
08-10-2022, 13:03
"L'exchange vittima di un attacco hacker"
Ma dove????
Hanno hackerato uno smart-contract sulla Binance Smart Chain che si occupa di gestire i trasferimenti tra chains diverse.
In pratica tramite proof-forgery lo hanno convinto a farsi rilasciare tantissimi BNB (la crypto di Binance) senza in realtà aver inviato niente in anticipo.
L'exchange di Binance (quello su cui si fa trading con i vari grafici, si deposita, si preleva, ecc.) non c'entra assolutamente niente con questa storia.
Ma riportate le notizie a caso senza nemmeno leggere?
TorettoMilano
08-10-2022, 13:14
"L'exchange vittima di un attacco hacker"
Ma dove????
Hanno hackerato uno smart-contract sulla Binance Smart Chain che si occupa di gestire i trasferimenti tra chains diverse.
In pratica tramite proof-forgery lo hanno convinto a farsi rilasciare tantissimi BNB (la crypto di Binance) senza in realtà aver inviato niente in anticipo.
L'exchange di Binance (quello su cui si fa trading con i vari grafici, si deposita, si preleva, ecc.) non c'entra assolutamente niente con questa storia.
Ma riportate le notizie a caso senza nemmeno leggere?
praticamente mi vuoi dire un antani con scappellamento a destra potrebbe avere lo stesso risultato, interessante
McRooster23
08-10-2022, 13:16
BNB non usa una chain decentralizzata, ha solo una ventina di validatori.
E' cosa risaputa e pubblica, non tutte le chain sono come le intendete.
Ni.
Binance specifica dei requisiti (abbastanza seri) che chiunque voglia diventare un validatore deve soddisfare.
Al momento ce ne sono circa 26, ma si sta cercando di arrivare a 46 se non erro.
La risposta di Binance all'hack è stata veloce ma non fulminea in quanto è stato necessario contattare uno ad uno tutti i validatori, spiegargli la situazione e chiedergli di stoppare il lavoro.
Se, per assurdo, un gruppo di loro si fosse rifiutato la chain sarebbe andata avanti senza stop.
Con tutti i limiti del caso possiamo dire che si tratta di una struttura semi-decentralizzata.
Per la cronaca..
Non è stata hackerata la blockchain di binance, seppur poco poco decentralizzata...
Hanno hackerato un software X server side che si occupa di trasferire tokens da una blockchain a un altra e di cui tocca fidarsi..
Nessun software server side. Hanno hackerato uno smart-contract sulla Binance Smart Chain.
Modificando appositamente alcuni (2) parametri della funzione che viene invocata, lo hanno convinto a rilasciare tantissimi token.
È avvenuto tutto "normalmente" on-chain come per qualunque altra transazione.
MikTaeTrioR
08-10-2022, 15:59
Ni.
Binance specifica dei requisiti (abbastanza seri) che chiunque voglia diventare un validatore deve soddisfare.
Al momento ce ne sono circa 26, ma si sta cercando di arrivare a 46 se non erro.
La risposta di Binance all'hack è stata veloce ma non fulminea in quanto è stato necessario contattare uno ad uno tutti i validatori, spiegargli la situazione e chiedergli di stoppare il lavoro.
Se, per assurdo, un gruppo di loro si fosse rifiutato la chain sarebbe andata avanti senza stop.
Con tutti i limiti del caso possiamo dire che si tratta di una struttura semi-decentralizzata.
Nessun software server side. Hanno hackerato uno smart-contract sulla Binance Smart Chain.
Modificando appositamente alcuni (2) parametri della funzione che viene invocata, lo hanno convinto a rilasciare tantissimi token.
È avvenuto tutto "normalmente" on-chain come per qualunque altra transazione.
Sbagli e anche di grosso..
È stato attaccato il Bridge che non è una blockchain...
Uno smartcontract non è modificabile neanche dal proprietario, al massimo si puo exploitare qualche controllo in esso contenuto che non sia stato creato a prova di bomba.
I bridge tra blockchain non sono blockchain, sono per lo piu normali server centralizzati di cui bisogna fidarsi.
Purtroppo la stampa è ancora molto ignorante in materia e genera questo tipo di confusione.
"As with many bridge designs, there is one central point that holds most of the funds that are moving through the bridge," Adrian Hetman, tech lead of the triaging team at Immunefi, told CNBC.
"Ultimately, the Bridge was tricked into giving funds from that contract."
Edit:
E ancora
https://cointelegraph.com/news/vitalik-buterin-gives-thumbs-down-to-cross-chain-applications
Buterin lo dice da gennaio...
Un bridge, lo dice il nome, sta ad una vera blockchain come un ponte sta alla terraferma...possono pure basarlo su blockchain ma avrà sempre pochissimi nodi e centralizzatissimi, inoltre per comunicare con mondo esterno avrà falle da tutte le parti....
Anche le blockchain serie hanno grossi problemi con la comunicazione con il mondo esterno..cose come ottenere il prezzo attuale di una crypto, all interno di uno smartcontract, sono cose tutt altro che banali, anche generare un numero casuale è estremamente complicato, cosa che con qualsiasi linguaggio di programmazione si fa con mezza riga di codice...
In generale se funziona sulla base di informazioni esterne può essere rotto.
TorettoMilano
08-10-2022, 16:27
Sbagli e anche di grosso..
È stato attaccato il Bridge che non è una blockchain...
Uno smartcontract non è modificabile neanche dal proprietario, al massimo si puo exploitare qualche controllo in esso contenuto che non sia stato creato a prova di bomba.
I bridge tra blockchain non sono blockchain, sono per lo piu normali server centralizzati di cui bisogna fidarsi.
Purtroppo la stampa è ancora molto ignorante in materia e genera questo tipo di confusione.
"As with many bridge designs, there is one central point that holds most of the funds that are moving through the bridge," Adrian Hetman, tech lead of the triaging team at Immunefi, told CNBC.
"Ultimately, the Bridge was tricked into giving funds from that contract."
Edit:
E ancora
https://cointelegraph.com/news/vitalik-buterin-gives-thumbs-down-to-cross-chain-applications
Buterin lo dice da gennaio...
Un bridge, lo dice il nome, sta ad una vera blockchain come un ponte sta alla terraferma...possono pure basarlo su blockchain ma avrà sempre pochissimi nodi e centralizzatissimi, inoltre per comunicare con mondo esterno avrà falle da tutte le parti....
Anche le blockchain serie hanno grossi problemi con la comunicazione con il mondo esterno..cose come ottenere il prezzo attuale di una crypto, all interno di uno smartcontract, sono cose tutt altro che banali, anche generare un numero casuale è estremamente complicato, cosa che con qualsiasi linguaggio di programmazione si fa con mezza riga di codice...
In generale se funziona sulla base di informazioni esterne può essere rotto.
ah quindi mi stai dicendo che pure il tanto decantato lightning può avere problemi, brutta roba
MikTaeTrioR
08-10-2022, 16:37
ah quindi mi stai dicendo che pure il tanto decantato lightning può avere problemi, brutta roba
LN di nodi pero ne ha migliaia e soprattutto quello che fa è molto meno complesso di trasferire fondi tra una blockchain e l'altra...è un layer 2 come può essere polygon per eth anzi piu semplice ancora visto che tratta sempre e solo BTC...potrebbero hackerare il sistema di calcolo automatico del prezzo, sarebbe una specie di bancomat modificato 2.0....molto circoscrivibile , con una portata abbastanza limitata e I responsabili dovrebbero sporcarsi parecchio le mani...
Morale: i bridge sono un singolo punto d'attacco più ghiotti del ponte sulla Crimea, la soluzione sono le Algorand State Proofs e passa la paura :O
https://medium.com/algorand/algorand-state-proofs-707d64038e35
la volatilità è una feature appunto se reputi una feature la speculazione
"dipendono da quale blockchain stai usando", ok da 2 sett a questa parte salviamo ETH per il danno ambientale, il resto buttate tutto nel cesso grazie che ogni volta che stacco l'alimentatore del cell dalla parete perché consuma 0,02 watt in standby e penso che nel mentre c'è la farm che consuma megawatt per generare hash il cui scopo è unicamente dimostrare la loro esistenza mi sale l'omicidio
Sì anch'io spero che le Proof of Work vengano superate quanto prima, una buona PoS per ogni transazione consuma più o meno quanto si consuma per fare una ricerca su Google.
Indubbiamente attualmente c'è molta speculazione ma penso che in futuro si andrà verso un utilizzo più intelligente, i casi d'uso in cui le blockchain possono essere la soluzione migliore ci sono
McRooster23
08-10-2022, 20:09
Sbagli e anche di grosso..
È stato attaccato il Bridge che non è una blockchain...
Uno smartcontract non è modificabile neanche dal proprietario, al massimo si puo exploitare qualche controllo in esso contenuto che non sia stato creato a prova di bomba.
I bridge tra blockchain non sono blockchain, sono per lo piu normali server centralizzati di cui bisogna fidarsi.
Purtroppo la stampa è ancora molto ignorante in materia e genera questo tipo di confusione.
"As with many bridge designs, there is one central point that holds most of the funds that are moving through the bridge," Adrian Hetman, tech lead of the triaging team at Immunefi, told CNBC.
"Ultimately, the Bridge was tricked into giving funds from that contract."
Edit:
E ancora
https://cointelegraph.com/news/vitalik-buterin-gives-thumbs-down-to-cross-chain-applications
Buterin lo dice da gennaio...
Un bridge, lo dice il nome, sta ad una vera blockchain come un ponte sta alla terraferma...possono pure basarlo su blockchain ma avrà sempre pochissimi nodi e centralizzatissimi, inoltre per comunicare con mondo esterno avrà falle da tutte le parti....
Anche le blockchain serie hanno grossi problemi con la comunicazione con il mondo esterno..cose come ottenere il prezzo attuale di una crypto, all interno di uno smartcontract, sono cose tutt altro che banali, anche generare un numero casuale è estremamente complicato, cosa che con qualsiasi linguaggio di programmazione si fa con mezza riga di codice...
In generale se funziona sulla base di informazioni esterne può essere rotto.
Mi spiace ma sei tu a non aver bene inteso.
Questa è la transazione incriminata (l'hack in pratica): CLICK! (https://bscscan.com/tx/0xebf83628ba893d35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b)
Se clicchi su "Click to see More" vedrai la funzione dello smart-contract invocata: handlePackage():
Se clicchi poi su "Decode input data" potrai vedere i parametri passati.
Quelli interessati dall'hack sono proof ed height.
Il primo è un parametro che consiste nell'hashing di diverse operazioni effettuate su IAVL tree. L'hacker in qualche modo è riuscito a crearne uno da zero (proof-forgery) cosa che non si riteneva possibile fino ad ora.
Così facendo è riuscito a "convincere" lo smart-contract di aver già inviato dei soldi al bridge ed essere quindi ora in attesa di riceverli sulla Binance Smart Chain (BSC).
Lo smart-contract ha quindi prelevato 1 milione di BNB coin dal BSC Token Hub (che contiene miliardi, visibile a questo indirizzo: CLICK!) (https://bscscan.com/address/0x0000000000000000000000000000000000001004) e li ha trasferiti all'address dell'hacker.
Questa operazione è stata effettuata due volte, per un totale di 2 milioni di BNB.
Notato ciò, Binance ha subito contattato tutti i validator ed ha chiesto loro di fermarsi, in modo da mettere in pausa la blockchain e quindi impedire all'hacker di spostare i soldi su altre chain (Ethereum, Fantom, Arbitrum, ecc.).
Il bridge in se per se è una cosa esterna, ma l'oggetto dell'hacking in questione è stato lo smart-contract che ne funge da endpoint sulla BSC.
Sp3cialFx
08-10-2022, 20:27
Sì anch'io spero che le Proof of Work vengano superate quanto prima, una buona PoS per ogni transazione consuma più o meno quanto si consuma per fare una ricerca su Google.
Indubbiamente attualmente c'è molta speculazione ma penso che in futuro si andrà verso un utilizzo più intelligente, i casi d'uso in cui le blockchain possono essere la soluzione migliore ci sono
nulla contro la blockchain, anzi
blockchain + PoW per come l'abbiamo vista usata finora invece se fanno un pulsante che le fa saltare per aria tutte all'istante io lo premo subito :D
nulla contro la blockchain, anzi
blockchain + PoW per come l'abbiamo vista usata finora invece se fanno un pulsante che le fa saltare per aria tutte all'istante io lo premo subito :D
Facciamo che servono due pulsanti da premere contemporaneamente, mica vorrai tenerti la soddisfazione tutta per te :fagiano:
I bridge purtroppo sono sempre stati il punto debole delle crypto...
Lampadina_17
08-10-2022, 22:18
funds are safu
TorettoMilano
08-10-2022, 22:21
...
Notato ciò, Binance ha subito contattato tutti i validator ed ha chiesto loro di fermarsi...
il controllo centralizzato ha dato lezione al controllo decentralizzato
https://thumbs.gfycat.com/SleepyDimCoyote-max-1mb.gif
MikTaeTrioR
08-10-2022, 22:47
Mi spiace ma sei tu a non aver bene inteso.
Questa è la transazione incriminata (l'hack in pratica): CLICK! (https://bscscan.com/tx/0xebf83628ba893d35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b)
Se clicchi su "Click to see More" vedrai la funzione dello smart-contract invocata: handlePackage():
Se clicchi poi su "Decode input data" potrai vedere i parametri passati.
Quelli interessati dall'hack sono proof ed height.
Il primo è un parametro che consiste nell'hashing di diverse operazioni effettuate su IAVL tree. L'hacker in qualche modo è riuscito a crearne uno da zero (proof-forgery) cosa che non si riteneva possibile fino ad ora.
Così facendo è riuscito a "convincere" lo smart-contract di aver già inviato dei soldi al bridge ed essere quindi ora in attesa di riceverli sulla Binance Smart Chain (BSC).
Lo smart-contract ha quindi prelevato 1 milione di BNB coin dal BSC Token Hub (che contiene miliardi, visibile a questo indirizzo: CLICK!) (https://bscscan.com/address/0x0000000000000000000000000000000000001004) e li ha trasferiti all'address dell'hacker.
Questa operazione è stata effettuata due volte, per un totale di 2 milioni di BNB.
Notato ciò, Binance ha subito contattato tutti i validator ed ha chiesto loro di fermarsi, in modo da mettere in pausa la blockchain e quindi impedire all'hacker di spostare i soldi su altre chain (Ethereum, Fantom, Arbitrum, ecc.).
Il bridge in se per se è una cosa esterna, ma l'oggetto dell'hacking in questione è stato lo smart-contract che ne funge da endpoint sulla BSC.
Si ma hanno spinto il Bridge a chiamare quella funzione....
McRooster23
08-10-2022, 23:13
Si ma hanno spinto il Bridge a chiamare quella funzione....
Non hanno spinto nessuno a fare niente.
La funzione è stata chiamata dall'hacker in persona (l'address che termina con ...f79bec) passandovi i già citati parametri maligni.
Ti basta guardare il campo "from" della transazione che ti ho linkato prima.
Lo stesso address che subito dopo si è visto arrivare centinaia di milioni di dollari (la maggior parte dei quali sono ancora lì se controlli su bscScan).
MikTaeTrioR
09-10-2022, 00:44
Non hanno spinto nessuno a fare niente.
La funzione è stata chiamata dall'hacker in persona (l'address che termina con ...f79bec) passandovi i già citati parametri maligni.
Ti basta guardare il campo "from" della transazione che ti ho linkato prima.
Lo stesso address che subito dopo si è visto arrivare centinaia di milioni di dollari (la maggior parte dei quali sono ancora lì se controlli su bscScan).
Ha sfruttato il bridge per quella scrittura, lo puoi ovunque...bridge che ha qualche permesso particolare evidentemente...
Se fosse una debolezza generica di solidity l hacker avrebbe gia rotto qualunque roba non solo su BSC....
BSC dimostra ancora una volta che senza una vera decentralizzazione è meglio non gridare troppo forte la parola blockchain
Alla fine bnb ha tenuto botta abbastanza bene, mi sarei aspettato un bel crollo.
McRooster23
09-10-2022, 10:08
Ha sfruttato il bridge per quella scrittura, lo puoi ovunque...bridge che ha qualche permesso particolare evidentemente...
Se fosse una debolezza generica di solidity l hacker avrebbe gia rotto qualunque roba non solo su BSC....
BSC dimostra ancora una volta che senza una vera decentralizzazione è meglio non gridare troppo forte la parola blockchain
Ma che c'entra solidity ora che è un linguaggio di programmazione?
Lo smart-contract è stato progettato così perchè quel parametro "proof" si riteneva impossibile da manipolare fino ad'ora (e tuttora ancora non si è riusciti a riprodurre l'hack).
Si tratta di una debolezza di quello specifico smart-contract sulla BSC, fine.
Altre chain/"permessi"/discorsi non c'entrano assolutamente nulla.
Mi sa che continui a non aver ben chiara la questione.
Alla fine bnb ha tenuto botta abbastanza bene, mi sarei aspettato un bel crollo.
Infatti è clamorosa questa cosa, un hack da centinaia di milioni ed il prezzo si è mosso si e no dell'1%.
Mai vista una cosa del genere in precedenti hack.
MikTaeTrioR
09-10-2022, 10:46
Ma che c'entra solidity ora che è un linguaggio di programmazione?
Lo smart-contract è stato progettato così perchè quel parametro "proof" si riteneva impossibile da manipolare fino ad'ora (e tuttora ancora non si è riusciti a riprodurre l'hack).
Si tratta di una debolezza di quello specifico smart-contract sulla BSC, fine.
Altre chain/"permessi"/discorsi non c'entrano assolutamente nulla.
Mi sa che continui a non aver ben chiara la questione.
Infatti è clamorosa questa cosa, un hack da centinaia di milioni ed il prezzo si è mosso si e no dell'1%.
Mai vista una cosa del genere in precedenti hack.
la stai mettendo giù come fosse un problema generale degli smartcontracts basati su solidity quando è "solo" un difetto di progettazione specifico al sistema BSC sfruttando in particolar modo i meccanismi del bridge da loro sviluppato.
Senza usare il bridge non sarebbe riuscito a fare quello che ha fatto.
Su un normale smart contract senza strane interfacce con l'esterno l'unico modo per fare furbae è trovare la funzione scritta male, se esiste.
Quest'anno sono stati attaccati con successo già quasi una decina di bridge
Buterin è da un anno che dice che in pratica non sono una soluzione sicura.
"Naturally, developers are reluctant towards big changes, lest deviating from the decentralizing philosophy. Blockchain bridges are a sign they’re growing past that notion. We may be inching toward an innovative and normalized crypto economy, but any progress is better than limiting ourselves to what already exists. "
https://blog.liquid.com/blockchain-cross-chain-bridge#:~:text=A%20blockchain%20bridge%2C%20otherwise%20known,do%20that%20through%20the%20bridge.
ripeto, senza il bridge quella scrittura non sarebbe stata possibile.
il bridge possono pure chiamarlo blockchain decentralizzata ma quando neanche BSC è cosi decentralizzata, la definizione fa un po' ridere...
una blockchain non realmente decentralizzata è praticamente come un normale DB decentralizzato.
McRooster23
09-10-2022, 11:52
la stai mettendo giù come fosse un problema generale degli smartcontracts basati su solidity quando è "solo" un difetto di progettazione specifico al sistema BSC sfruttando in particolar modo i meccanismi del bridge da loro sviluppato.
Veramente quello che ha citato Solidity sei tu, io sto cercando di farti capire (come scritto nell'ultimo messaggio) che non c'entra proprio niente.
Senza usare il bridge non sarebbe riuscito a fare quello che ha fatto.
Su un normale smart contract senza strane interfacce con l'esterno l'unico modo per fare furbae è trovare la funzione scritta male, se esiste.
Ed è proprio quello che è successo infatti, sto cercando di fartelo capire da ieri.
L'hacking è avvenuto perchè la funzione handlePackage() dello smart-contract presenta un parametro di verifica che a quanto pare è possibile manipolare in qualche modo.
Manipolandolo, si riesce infatti a farsi inviare (da tale smart-contract) tutti i soldi che si vuole!
L'hacker ha invocato questo metodo in maniera diretta, tramite web3, senza utilizzare interfacce web ne altro.
Il fatto che si tratti di un bridge inoltre non c'entra niente.
Se lo stesso smart-contract fosse stato usato da una DeFi per distribuire dei rewards (o anche delle caramelle), l'hacking avrebbe funzionato allo stesso identico modo.
Quest'anno sono stati attaccati con successo già quasi una decina di bridge
Buterin è da un anno che dice che in pratica non sono una soluzione sicura.
"Naturally, developers are reluctant towards big changes, lest deviating from the decentralizing philosophy. Blockchain bridges are a sign they’re growing past that notion. We may be inching toward an innovative and normalized crypto economy, but any progress is better than limiting ourselves to what already exists. "
https://blog.liquid.com/blockchain-cross-chain-bridge#:~:text=A%20blockchain%20bridge%2C%20otherwise%20known,do%20that%20through%20the%20bridge.
ripeto, senza il bridge quella scrittura non sarebbe stata possibile.
il bridge possono pure chiamarlo blockchain decentralizzata ma quando neanche BSC è cosi decentralizzata, la definizione fa un po' ridere...
una blockchain non realmente decentralizzata è praticamente come un normale DB decentralizzato.
Questo è condivisibile, ma è un discorso generale che c'entra poco con la tecnica di hacking usata in questo caso specifico.
TorettoMilano
09-10-2022, 12:26
la cosa figa delle blockchain è che grazie a un controllo decentralizzato di n-mila validatori era praticamente impossibile fare azioni strane. invece qui si sono stati spostati parecchi milioni col nullaosta dei validatori. fortunatamente il controllo centralizzato ha risolto tutto ma sicuramente fa molto riflettere l'episodio in se, il ruolo del "validatore" andrebbe leggermente rivisto
MikTaeTrioR
09-10-2022, 12:36
Veramente quello che ha citato Solidity sei tu, io sto cercando di farti capire (come scritto nell'ultimo messaggio) che non c'entra proprio niente.
Ed è proprio quello che è successo infatti, sto cercando di fartelo capire da ieri.
L'hacking è avvenuto perchè la funzione handlePackage() dello smart-contract presenta un parametro di verifica che a quanto pare è possibile manipolare in qualche modo.
Manipolandolo, si riesce infatti a farsi inviare (da tale smart-contract) tutti i soldi che si vuole!
L'hacker ha invocato questo metodo in maniera diretta, tramite web3, senza utilizzare interfacce web ne altro.
Il fatto che si tratti di un bridge inoltre non c'entra niente.
Se lo stesso smart-contract fosse stato usato da una DeFi per distribuire dei rewards (o anche delle caramelle), l'hacking avrebbe funzionato allo stesso identico modo.
Questo è condivisibile, ma è un discorso generale che c'entra poco con la tecnica di hacking usata in questo caso specifico.
non sono d'accordo, quel che dici non è plausibile e BSC per varie ragioni non sta di certo dicendo tutto...
dici:
L'hacking è avvenuto perchè la funzione handlePackage() dello smart-contract presenta un parametro di verifica che a quanto pare è possibile manipolare in qualche modo.
se questo fosse un problema tecnologico oggi sarebbe venuta giù qualunque BC basata su ETH e solidity...
quel parametri di verifica di cui parli si basa quasi certamente su qualche dato che arriva dall'esterno, che fa fede...e quindi lo smartcontract esegue perchè considera quel dato corretto a prescinedere e perchè chi ha creato questo sistema di bridging ha pensato che la sicurezza fosse adeguata a non permettere a nessuno di riuscire a manipolare quel dato esterno...ma qualcuno in qualche modo ci è riuscito.
sto solo cercando di mettere le cose nella giusta prospettiva...
lo dici anche tu:
"Modificando appositamente alcuni (2) parametri della funzione che viene invocata"
alcune considerazioni un po' tanto tecniche ma ci sta:
1) l'address del contratto attaccato è "0x0000000000000000000000000000000000002000"...e già questo dovrebbe far capire bene che parliamo di qualche roba molto particolare implementata da BSC nella sua stessa Blockchain.
2) la funzioni di cui parli è questa:
----
function handlePackage(bytes calldata payload, bytes calldata proof, uint64 height, uint64 packageSequence, uint8 channelId) onlyInit onlyRelayer
sequenceInOrder(packageSequence, channelId) blockSynced(height) channelSupported(channelId) external {
-----
quel modificatore "onlyRelayer" specifica che solo un "relayer" può eseguire la funzione.
il modificatore "onlyRelayer" è cosi definito:
-----
modifier onlyRelayer() {
require(IRelayerHub(RELAYERHUB_CONTRACT_ADDR).isRelayer(msg.sender), "the msg sender is not a relayer");
_;
}
------
RELAYERHUB_CONTRACT_ADDR è "0x0000000000000000000000000000000000001006"
altro address molto particolare...
cosa signifca tutto ciò:
solo quell'address molto particolare poteva eseguire quella funzione il che significa che in qualche modo l'hacker è riuscito a spingere il computer/server che è connesso alla blockchain tramite quell'address a eseguire quella funzione in un modo imprevisto e ritenuto non possibile.
per quello dico che il problema non è della blockchain ma di un sistema molto particolare e molto centralizzato che hanno implementato sulla blockchain di cui sono proprietari.
MikTaeTrioR
09-10-2022, 12:41
la cosa figa delle blockchain è che grazie a un controllo decentralizzato di n-mila validatori era praticamente impossibile fare azioni strane. invece qui si sono stati spostati parecchi milioni col nullaosta dei validatori. fortunatamente il controllo centralizzato ha risolto tutto ma sicuramente fa molto riflettere l'episodio in se, il ruolo del "validatore" andrebbe leggermente rivisto
è successo proprio perchè il sistema BSC è veramente poco decentralizzato per potersi definire blockchain
Informative
09-10-2022, 15:13
A quanto ho capito han proprio trovato un modo di forgiare le "proof" che il bridge accettava per considerare un blocco precedente a tot tempo valido, e quindi han "convinto" lo smart contract falsificando blocchi vecchi che quei 2m di BNB fossero stati depositati in precedenza e li han spesi.
Quindi proprio un exploit ad uno smart contract (e non alla blockchain layer 1 di per sè )
Non ho approfondito moltissimo, potrei aver detto semicastronerie. Attendiamo il post mortem dettagliato.
McRooster23
09-10-2022, 18:18
non sono d'accordo, quel che dici non è plausibile e BSC per varie ragioni non sta di certo dicendo tutto...
dici:
L'hacking è avvenuto perchè la funzione handlePackage() dello smart-contract presenta un parametro di verifica che a quanto pare è possibile manipolare in qualche modo.
se questo fosse un problema tecnologico oggi sarebbe venuta giù qualunque BC basata su ETH e solidity...
E perchè mai? Un normalissimo smart-contract è vulnerabile e vengono meno intere chains?
Secondo quale logica?
Sapessi quanti ne sono stati hackerati in questi anni.
lo dici anche tu:
"Modificando appositamente alcuni (2) parametri della funzione che viene invocata"
alcune considerazioni un po' tanto tecniche ma ci sta:
1) l'address del contratto attaccato è "0x0000000000000000000000000000000000002000"...e già questo dovrebbe far capire bene che parliamo di qualche roba molto particolare implementata da BSC nella sua stessa Blockchain.
2) la funzioni di cui parli è questa:
----
function handlePackage(bytes calldata payload, bytes calldata proof, uint64 height, uint64 packageSequence, uint8 channelId) onlyInit onlyRelayer
sequenceInOrder(packageSequence, channelId) blockSynced(height) channelSupported(channelId) external {
-----
quel modificatore "onlyRelayer" specifica che solo un "relayer" può eseguire la funzione.
il modificatore "onlyRelayer" è cosi definito:
-----
modifier onlyRelayer() {
require(IRelayerHub(RELAYERHUB_CONTRACT_ADDR).isRelayer(msg.sender), "the msg sender is not a relayer");
_;
}
------
RELAYERHUB_CONTRACT_ADDR è "0x0000000000000000000000000000000000001006"
altro address molto particolare...
cosa signifca tutto ciò:
L'address dello smart-contract ha indirizzo molto basso in quanto è stato generato tra i primi (è anche indicato su bscScan se vai sulla sua pagina).
Mi sembra anche ovvio visto il suo ruolo.
Per quanto riguarda l'altra questione, l'hacker si è registrato come Relayer poco prima dell'attacco come puoi vedere dalla seguente transazione: CLICK! (https://bscscan.com/tx/0xe1fe5fef26e93e6389910545099303e4fee774427d9e628d2aab80f1b53396d6)
Nulla di strano.
solo quell'address molto particolare poteva eseguire quella funzione il che significa che in qualche modo l'hacker è riuscito a spingere il computer/server che è connesso alla blockchain tramite quell'address a eseguire quella funzione in un modo imprevisto e ritenuto non possibile.
per quello dico che il problema non è della blockchain ma di un sistema molto particolare e molto centralizzato che hanno implementato sulla blockchain di cui sono proprietari.
Niente di tutto ciò, come già detto l'hacker ha potuto invocare quella funzione in quanto registratosi preventivamente come relayer.
A quanto ho capito han proprio trovato un modo di forgiare le "proof" che il bridge accettava per considerare un blocco precedente a tot tempo valido, e quindi han "convinto" lo smart contract falsificando blocchi vecchi che quei 2m di BNB fossero stati depositati in precedenza e li han spesi.
Quindi proprio un exploit ad uno smart contract (e non alla blockchain layer 1 di per sè )
Non ho approfondito moltissimo, potrei aver detto semicastronerie. Attendiamo il post mortem dettagliato.
Esattamente quello che sto dicendo da ieri.
Server, siti web, interfacce ecc. non c'entrano nulla.
Si tratta della vulnerabilità di uno smart-contract, tutto è avvenuto completamente on-chain.
MikTaeTrioR
09-10-2022, 21:00
E perchè mai? Un normalissimo smart-contract è vulnerabile e vengono meno intere chains?
Secondo quale logica?
Sapessi quanti ne sono stati hackerati in questi anni.
L'address dello smart-contract ha indirizzo molto basso in quanto è stato generato tra i primi (è anche indicato su bscScan se vai sulla sua pagina).
Mi sembra anche ovvio visto il suo ruolo.
Per quanto riguarda l'altra questione, l'hacker si è registrato come Relayer poco prima dell'attacco come puoi vedere dalla seguente transazione: CLICK! (https://bscscan.com/tx/0xe1fe5fef26e93e6389910545099303e4fee774427d9e628d2aab80f1b53396d6)
Nulla di strano.
Niente di tutto ciò, come già detto l'hacker ha potuto invocare quella funzione in quanto registratosi preventivamente come relayer.
Esattamente quello che sto dicendo da ieri.
Server, siti web, interfacce ecc. non c'entrano nulla.
Si tratta della vulnerabilità di uno smart-contract, tutto è avvenuto completamente on-chain.
credo di essermi spiegato male...
provo a farti questa domanda, senza bridge l'hacker ci sarebbe riuscito?
siamo almeno d'accordo che è il meccanismo di bridging ad avere la falla?...
possiamo convenire che i meccanismi di bridging in generale sono un punto debole perchè si interfacciano con l'esterno e quindi sono potenzialmente vulnerabili...?
MikTaeTrioR
10-10-2022, 08:06
Me la sono letta bene...
In pratica è riuscito a sfruttare un bug nella funzione che verifica la correttezza di un hash prova che serve a verificare che la chiamata sia valida.
Ecco il punto debole, per quanto sia molto difficile trovare e sfruttare quel bug è pur sempre una funzione che concede permessi in base ad una "password" che arriva dall'esterno...
Se ipoteticamente tutte le chain girassero all interno della stessa blockchain questo sistema di validazione non sarebbe mecessario e l'attacco non possibile.
TorettoMilano
10-10-2022, 13:37
che senso hanno i validatori se poi deve intervenire papà per sistemare le cose (rimettendoci per giunta di tasca propria)?
MikTaeTrioR
10-10-2022, 13:49
che senso hanno i validatori se poi deve intervenire papà per sistemare le cose (rimettendoci per giunta di tasca propria)?
può farlo BSC che ha 4 nodi in croce su cui ha pieni poteri...
poi non ci ha rimesso niente nessuno, i BSC token rubati dall'hacker sono letteralmente generati dal nulla....altra cosa non possibile per esempio su BTC, possibile forse su ETH ma solo con i wrapped ETH, non con quelli "veri"....
se non altro sistemata questa falla non so quante ne rimarranno anche su questi sistemi particolari di bridging..
Secondo voi, in un caso come questo, la chain centralizzata è stata un vantaggio o uno svantaggio?
Perché da un certo punto di vista, grazie alla centralizzazione, sono stati in grado di intervenire tempestivamente.
TorettoMilano
10-10-2022, 14:06
può farlo BSC che ha 4 nodi in croce su cui ha pieni poteri...
poi non ci ha rimesso niente nessuno, i BSC token rubati dall'hacker sono letteralmente generati dal nulla....altra cosa non possibile per esempio su BTC, possibile forse su ETH ma solo con i wrapped ETH, non con quelli "veri"....
se non altro sistemata questa falla non so quante ne rimarranno anche su questi sistemi particolari di bridging..
https://www.reddit.com/r/bnbchainofficial/comments/xxjkpy/temporary_pause_of_bsc/
dicono di aver congelato solo 7 milioni
MikTaeTrioR
10-10-2022, 14:29
https://www.reddit.com/r/bnbchainofficial/comments/xxjkpy/temporary_pause_of_bsc/
dicono di aver congelato solo 7 milioni
si ma possono anche non aver congelato neanche un coin ma quelli rubati non sono stati sottratti a nessuno, sono proprio stati generati da 0...."blockchain"
MikTaeTrioR
10-10-2022, 14:32
Secondo voi, in un caso come questo, la chain centralizzata è stata un vantaggio o uno svantaggio?
Perché da un certo punto di vista, grazie alla centralizzazione, sono stati in grado di intervenire tempestivamente.
per me è uno svantaggio e basta....
su eth avrebbero potuto generare dei wrapped coin, e in qualche modo su quelli riuscivano a bloccare lo stesso qualcosa...
su btc totalmente impossibile...
BSC ha si potuto contenere il danno ma l'hacker è stato in grado di generare BSC veri dal nulla........che blockchain sarebbe questa!?!?
poi magari mi sbaglio ma mi sembra proprio che non siano stati generati dei wrapped BSC ma dei BSC veri e propri..
per me è uno svantaggio e basta....
su eth avrebbero potuto generare dei wrapped coin, e in qualche modo su quelli riuscivano a bloccare lo stesso qualcosa...
su btc totalmente impossibile...
BSC ha si potuto contenere il danno ma l'hacker è stato in grado di generare BSC veri dal nulla........che blockchain sarebbe questa!?!?
poi magari mi sbaglio ma mi sembra proprio che non siano stati generati dei wrapped BSC ma dei BSC veri e propri..
In effetti, messa giù così non fa una piega...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.