Zeer ernstige bug in Bitcoin-software onthuld 2 jaar na de oplossing

"Hoge" ernstbug in Bitcoin-software onthuld 2 jaar na reparatie - Bitcoin Core-bugEen grote bug in de Bitcoin Core-software, niet te verwarren Bitcoin-systeem, had aanvallers in staat kunnen stellen geld te stelen, deals te vertragen of het grotere blockchain-netwerk in conflicterende versies te splitsen als het twee jaar geleden niet in het geheim was opgelost.

De bug in de code

Een artikel dat woensdag is gepubliceerd door Braydon Fuller, een protocolingenieur bij de crypto-winkelsite Purse, en Javed Khan, een senior ontwikkelaar van het Handshake-protocol, zeggen dat ze de kwetsbaarheid in juni 2018 hebben ontdekt.

De bug heeft een ernstniveau van 7,8 gekregen op een schaal van 1 tot 10, wat als "hoog" wordt beschouwd (9 en hoger wordt als "kritiek" beschouwd). Het probleem werd veroorzaakt doordat "externe knooppunten" ongeldige transacties niet uit hun geheugen konden wissen, zei Khan.

Als dergelijke transacties niet worden geannuleerd, kan dit leiden tot een aanval die het slachtofferknooppunt laadt met verouderde gegevens in wat wordt aangeduid als "ongecontroleerd resourceverbruik", waardoor het knooppunt uiteindelijk wordt afgesloten, aldus het document.

Laag 2 (L2) -oplossingen zoals Lightning Network, het experimentele betalingssysteem gebouwd op de Bitcoin-blockchain, liepen risico door deze bug. De volledige knooppunten van Bitcoin liepen daarentegen niet het risico om geld te verliezen.

Er zijn geen pogingen onthuld om het probleem te exploiteren, schreven Khan en Fuller. De kwetsbaarheid is al meer dan twee jaar niet openbaar gemaakt, omdat knooppuntoperatoren langer nodig hadden om te updaten dan verwacht, zei Fuller.

Hoewel de bug is verholpen, benadrukt de onthulling de moeilijkheden bij het bouwen van een wereldwijde monetaire standaard voor door mensen gemaakte programmeertalen, om nog maar te zwijgen van de hoge technische belemmeringen bij het ontwikkelen van de grootste cryptocurrency ter wereld.

Het probleem in de code werd in november 2017 in Bitcoin Core ingevoegd. Volgens het document was ongeveer 50% van de Bitcoin-knooppunten op dat moment mogelijk blootgesteld aan een aanval. Eerdere versies van Bitcoin Core hebben dit soort problemen niet ondervonden.

Niet alleen Bitcoin Core

Khan zei dat de kwetsbaarheid een aanvaller in staat had kunnen stellen geld te stelen van knooppunten met open kanalen op Lightning. Bitcoin Core-versies 0.16.0 en 0.16.1 werden geanalyseerd en gecorrigeerd door ontwikkelaar Matt Corallo na de bekendmaking van Fuller aan het Core-team in juli 2018.

Bitcoin Core is de referentie-implementatie, of standaardversie, van netwerksoftware waarvan vele andere zijn afgeleid. Volgens het document had de bug ook betrekking kunnen hebben op verschillende andere implementaties van Bitcoin en zijn derivaten:

  • Bitcoin Knopen v0.16.0
  • Alle bètaversies van Bcoin tot v1.0.0-pre
  • Alle versies van Btcd tot v0.20.1-beta
  • Litecoin Core v0.16.0
  • Namecoin Core v0.16.1
  • Alle versies van Dcrd tot v1.5.1.

Al deze implementaties zijn gepatcht.