Ny Sikkerhetsoppdatering for Electrum
En ondsinnet Bitcoin-lommebokserver kunne stille og rolig bytte en legitim betaling med en svindeltransaksjon, og deretter vente på at eieren skulle godkjenne tyveriet. Electrum har lansert sin nyeste sikkerhetsoppdatering for å lukke dette sikkerhetshullet, etter at angripere utnyttet feilen og stjal midler.
Versjon 4.8.3
Versjon 4.8.3 ble lansert på lørdag, og utviklerne advarte brukere om å oppgradere umiddelbart etter å ha oppdaget at ondsinnede servere utnyttet en sårbarhet med høy alvorlighetsgrad som påvirket alle tidligere versjoner. Feilen, dokumentert i GitHub-advisory GHSA-6jp4-8v48-cc5v, utnyttet hvordan den lette Bitcoin-lommeboken håndterer ikke-bekreftede transaksjoner.
Sårbarheten
Electrum er avhengig av eksterne servere for transaksjonshistorikk, gebyrestimater og kringkasting av betalinger. Mens den uavhengig sjekker bekreftede transaksjoner, aksepterte eldre versjoner visse ikke-bekreftede transaksjoner uten å verifisere signaturene deres. Angripere utnyttet denne distinksjonen til å lage en felle.
«En kompromittert server kunne avskjære en legitim betaling, forhindre dens kringkasting og erstatte den med en svindeltransaksjon som dirigerte midler til en Bitcoin-adresse kontrollert av angriperen.»
Erstatningen hadde ugyldige signaturer, men Electrum viste den som en vanlig ventende betaling. Trikset ble farlig når brukere forsøkte å øke transaksjonsgebyrene gjennom Replace-By-Fee (RBF). I stedet for å øke gebyret på sin opprinnelige betaling, kunne ofrene utilsiktet signere den substituerte transaksjonen og autorisere overføringen av sin egen Bitcoin til angriperen.
Angrepsmetoder
Bedraget gikk enda lenger. Angripere genererte mottaksadresser hvis de siste fire tegnene matchet den tiltenkte destinasjonen, noe som gjorde en rask adressekomparasjon mindre sannsynlig å avsløre byttet. En svindeltransaksjon hadde til og med null gebyr, tilsynelatende for å oppmuntre sitt offer til å initiere den nødvendige gebyrjusteringen for å fullføre tyveriet.
Rapporter og Oppdatering
Utviklerne mottok to private rapporter. Den 11. oktober rapporterte brukeren dannydeezy om transaksjonsbytte, selv om gebyrøkingsmekanismen ikke var fullt forstått. Den 18. oktober rapporterte Raju-K12 om tap av midler etter å ha godkjent en gebyrøkning. Den andre rapporten bekreftet at angrepet ikke bare var teoretisk.
Oppdateringen, introdusert gjennom commit 90fe308, krever at Electrum verifiserer signaturer for ikke-bekreftede transaksjoner som bruker mynter som tilhører lommeboken. Svindeltransaksjoner med ugyldige signaturer blir avvist før de går inn i lommebokens lokale historie.
Brukeradvarsler
Brukere som kjører versjoner tidligere enn 4.8.3 bør laste ned oppdateringen eksklusivt fra electrum.org og verifisere dens kryptografiske signaturer. Inntil oppgradering, bør brukere nøye inspisere hver destinasjonsadresse og betalingsbeløp før de signerer, inkludert under gebyrjusteringer.
De som kun kobler seg til betrodde, selvhostede Electrum-servere er ikke utsatt for dette spesifikke serverbaserte angrepet. Hendelsen avdekker en merkelig motsetning: En lommebok designet for å beskytte private nøkler kan fortsatt manipuleres til å be om en helt gyldig signatur for en betaling eieren aldri hadde til hensikt å foreta.