I ricercatori espongono i difetti dei portafogli in Bitcoin che potrebbero essere sfruttati per il Double-Spending

  • Post author:
  • Post category:Bitcoin

Un modo standard per effettuare transazioni con Bitcoin potrebbe essere vulnerabile al doppio dispendio, ha trovato una nuova ricerca. I blocchain sleuths di ZenGo, una start-up di portafogli, hanno trovato una vulnerabilità che ha colpito almeno tre importanti portafogli crittografici – Ledger Live, Edge e Breadwallet (BRD) – e potenzialmente di più.

Il bug, che l’azienda di Tel Aviv chiama BigSpender, permette a un hacker di spendere il doppio dei fondi di un utente e, possibilmente, di impedirgli di usare di nuovo il suo portafoglio. Funziona sfruttando una falla nella funzione replace-by-fee di Bitcoin Future, un failsafe che permette agli utenti di scambiare una transazione non confermata con una che ha una tariffa più alta.

„[BigSpender] può portare a sostanziali perdite finanziarie

„[BigSpender] può portare a sostanziali perdite finanziarie e in alcuni casi rendere il portafoglio della vittima totalmente inutilizzabile senza che la vittima abbia modo di proteggersi“, ha detto il CEO di ZenGo Ouriel Ohayon in una e-mail. „Quindi questo può essere visto come un attacco di grande gravità“.

Come altre vulnerabilità che si trovano nel codice di base di Bitcoin, come le transazioni a tempo, la funzione RBF è diventata un modo standard per gli utenti di inviare valore avanti e indietro. È stata proposta e accettata dalla comunità degli sviluppatori come un modo per i Bitcoiners di aggirare i lenti tempi di conferma pagando più tasse.

Fin dall’inizio, si temeva che la funzione RBF non fosse ben supportata dai portafogli Bitcoin, nonostante fosse integrata nel livello di protocollo Bitcoin, ha detto lo pseudonimo Bitcoin researcher 0xB10C. „ZenGo dimostra che un utente può essere ingannato a pensare di ricevere Bitcoin quando non lo è. Credo che sia una novità. Almeno non ne ho mai sentito parlare prima“, ha detto.

L’azienda ha testato nove diversi portafogli tra cui Ledger Live, Portafoglio fiduciario, Exodus, Edge, Bread, Bread, Coinbase, Blockstream Green, Blockchain e Atomic Wallet. Di quelli testati, tre sono risultati vulnerabili all’exploit teorico.

„Non abbiamo testato tutti i portafogli, ma potrebbe essere che se tre dei più grandi sono implicati, ce ne sono anche di più là fuori“, ha detto Ohayon. ZenGo ha avvertito le aziende dei suoi risultati e ha dato loro 90 giorni di tempo per riparare la vulnerabilità.

Ledger e BRD hanno rilasciato delle modifiche al codice per evitare che l’attacco avvenga, e hanno pagato ingenti somme non rivelate a ZenGo, mentre Edge sta attualmente subendo un „rifattore significativo“ che affronterà la questione, ha detto in un’email il CEO di Edge Paul Puey.

L’hacker sfrutta una nota vulnerabilità nel modo in cui certi portafogli trattano le transazioni di RBF di Bitcoin, ha detto Peter Todd, sviluppatore di Bitcoin e architetto di RBF.

Come funziona: Gli aggressori inviano fondi alle vittime designate e fissano tariffe abbastanza basse da garantire quasi che la transazione non riceva una conferma. Mentre la transazione è in sospeso, l’aggressore la cancella. Per i portafogli vulnerabili, questa transazione in sospeso si rifletterà come un aumento del saldo del conto di un utente, e quindi, probabilmente, porterà alcune vittime a credere erroneamente che la transazione sia stata effettuata, nonostante sia stata annullata.

Questa discrepanza tra il saldo dichiarato e quello effettivo di una vittima potrebbe essere sfruttata da attori malintenzionati che ingannano le persone a fornire beni o servizi senza pagarli – ad eccezione dell’importo minimo delle spese. In questo senso, il difetto sta nel design del portafoglio UX e UI.

Doppio problema?

Se un hacker può ingannare una persona facendo credere di aver ricevuto il pagamento, mantenendo contemporaneamente il controllo del bitcoin, si tratta di una doppia spesa, secondo i ricercatori di ZenGo.

„Bisogna decidere quale sia la definizione di doppia spesa. La maggior parte delle persone che non sono troll direbbero che una doppia spesa è quando si ha una transazione confermata che è in qualche modo invalidata e spesa con una transazione confermata diversa“, ha detto Jameson Lopp, CTO della startup di custodia Casa, negando le affermazioni dei ricercatori.

Questo attacco, per sua natura, sfrutta il modo in cui i portafogli mostrano le transazioni non confermate. In questo senso, l’attacco – anche se fraudolento – non è una violazione del modo in cui il codice Bitcoin funziona.

„Lo scopo della catena di blocco è quello di prevenire il problema della doppia spesa“, ha detto Lopp. „Torna al libro bianco originale di Satoshi, che dice che la soluzione al problema della doppia spesa è avere un libro mastro distribuito che molte persone stanno controllando“.