Bitcoin Core -kehittäjien paljastama vakava virhe
Bitcoin Core -kehittäjät ovat paljastaneet vakavan virheen, joka voi mahdollistaa kaivosten etäisesti kaataa joitakin Bitcoin-solmuja. Ongelma, jota seurattiin nimellä CVE-2024-52911, vaikutti Bitcoin Core -versioihin, jotka olivat julkaistu 0.14.0:n jälkeen ja ennen 29.0:aa.
Virhe korjattiin Bitcoin Core 29.0:ssä, joka julkaistiin huhtikuussa 2025. Bitcoin Core teki ongelman julkiseksi 5. toukokuuta 2026, kun viimeinen haavoittuva 28.x -julkaisulinja saavutti elinkaarensa päättymisen 19. huhtikuuta.
Ongelman taustat
Ongelma liittyi Bitcoin Core:n skriptitulkkiin lohkojen vahvistamisen aikana. Bitcoin Core ilmoitti, että erityisesti muotoiltu lohko voisi aiheuttaa solmun pääsyn muistiin sen jälkeen, kun tiedot oli jo vapautettu. Vahvistamisen aikana Bitcoin Core laskee etukäteen transaktioiden syöttötiedot ja lähettää skriptitarkistuksia taustasäikeille.
Joissakin tapauksissa virheellinen lohko voisi tuhota välimuistissa olevat tiedot, kun toinen säie yritti edelleen lukea niitä. Bitcoin Core totesi, että tämä voisi mahdollistaa hyökkääjän, jolla on riittävästi proof-of-workia, kaatamaan uhri-solmuja.
”On mahdollista, että kaatuminen voisi tukea etäistä koodin suorittamista, vaikka lohkoaineiston rajoitukset tekivät tämän lopputuloksen epätodennäköiseksi.”
Hyökkäyksen toteuttaminen
Hyökkäys ei ollut helppo toteuttaa; kaivoksen olisi pitänyt tuottaa erityisesti muotoiltu lohko, jossa on riittävästi proof-of-workia päästäkseen ketjun huipulle. Tämä teki hyökkäyksestä kalliin, koska tällainen lohko olisi virheellinen eikä voisi ansaita normaalia lohkopalkkiota, jolloin hyökkääjän olisi käytettävä hash-tehoa ilman, että hän keräisi tavallista kaivospalkkiota.
Bitcoin Core ei ilmoittanut, että virhettä olisi käytetty todellisissa hyökkäyksissä. Ilmoitus keskittyi virheeseen, korjaukseen ja julkistusaikatauluun. Virhe ei muuttanut Bitcoinin konsensussääntöjä, vaan liittyi muistin käsittelyyn Bitcoin Core -ohjelmistossa, ei sääntöihin, jotka määrittelevät voimassa olevat Bitcoin-transaktiot tai -lohkoja.
Virheen raportointi ja korjaus
Cory Fields MIT:n digitaalisen valuutan aloitteesta raportoi virheestä yksityisesti 2. marraskuuta 2024. Bitcoin Core kertoi, että raportti sisälsi todisteen konseptista ja ehdotetun tavan vähentää riskiä. Pieter Wuille painoi salaisen korjauksen neljä päivää myöhemmin PR 31112:n kautta. Pull-pyyntö yhdistettiin 3. joulukuuta 2024, ennen kuin Bitcoin Core 29.0 julkaistiin korjauksen kanssa huhtikuussa 2025.
Ilmoitus seurasi Bitcoin Core:n julkistuskäytäntöä korkean vakavuuden virheille. Käytännön mukaan korkean vakavuuden ongelmat julkistetaan sen jälkeen, kun viimeinen vaikuttanut julkaisu saavuttaa elinkaarensa päättymisen.
Vanhojen versioiden haasteet
Lisäksi solmun operaattorit, jotka käyttävät Bitcoin Core -versioita ennen 29.0:aa, kohtaavat edelleen vanhan virheen. Bitcoin Core ei päivity automaattisesti, joten käyttäjien on asennettava uudemmat versiot manuaalisesti. Aiemmassa raportissa lohkoketjun hajauttamisen riskeistä viitattiin tutkimukseen, jonka mukaan 21 % Bitcoin-solmuista käytti vanhentunutta Bitcoin Core -ohjelmistoa kesäkuussa 2021. Tämä konteksti osoittaa, miksi vanhemmat asiakasversiot voivat pysyä turvallisuushuolena pitkään sen jälkeen, kun korjaukset on julkaistu.