Ukryta luka w Bitcoin Core ujawniona po roku
Bitcoin Core ujawnił detalę błędu naprawionego już w 2025 roku. Luka mogła powodować awarię wybranych węzłów, ale nie naruszała konsensusu.
Luka w Bitcoin Core ujawniona po dłuższym czasie
Bitcoin Core opublikował szczegóły luki bezpieczeństwa oznaczonej jako CVE-2024-52911, choć sam błąd został załatany już wcześniej. Informacje o podatności ujrzały światło dzienne dopiero po czasie, gdy użytkownicy mieli szansę zaktualizować swoje oprogramowanie.
Problem dotyczył wydań powyżej 0.14.0 i poniżej 29.0. W praktyce oznaczało to, że część starszych instalacji mogła być narażona na awarię w bardzo konkretnym scenariuszu.
Na czym polegał problem?
Luka znajdowała się w mechanizmie walidacji skryptów używanym podczas sprawdzania transakcji w bloku. W pewnych warunkach specjalnie przygotowany nieprawidłowy blok mógł doprowadzić do błędu typu use-after-free, czyli odwołania do pamięci, która została już zwolniona.
W praktyce atak mógł spowodować crash wybranych węzłów Bitcoin, a nie zmianę zasad działania sieci. To ważne rozróżnienie: podatność nie podważała reguł konsensusu Bitcoina, lecz mogła chwilowo osłabić odporność sieci, jeśli ktoś wykorzystałby ją w odpowiednich warunkach.
Co musiał zrobić atakujący?
Żeby przeprowadzić taki atak, potrzebny byłby realny hashrate do wydobycia wadliwego bloku. Oznacza to, że atakujący musiałby ponieść rzeczywisty koszt energetyczny i obliczeniowy, a przy tym nie otrzymałby nagrody za blok, skoro byłby on niepoprawny.
Z tego powodu taki scenariusz miałby znikomą opłacalność ekonomiczną. Mimo to jego skutki mogłyby być niekorzystne dla sieci i dla zaufania do Bitcoina.
Kiedy luka została znaleziona i naprawiona?
Z informacji wynika, że błąd został wykryty przez Cory’ego Fieldsa z MIT Digital Currency Initiative i zgłoszony prywatnie 2 listopada 2024 r..
Następnie:
- 4 dni później pojawiła się dyskretna poprawka,
- poprawkę włączono do kodu w grudniu 2024 r.,
- a później trafiła ona do Bitcoin Core 29.0, wydanego 12 kwietnia 2025 r.
Dopiero później ujawniono techniczne szczegóły podatności.
Kogo dotyczy ta informacja?
Nie każdy użytkownik Bitcoina musi się tym przejmować w równym stopniu.
Najbardziej narażeni są operatorzy własnych węzłów
Jeśli ktoś uruchamia własny node Bitcoin Core, powinien sprawdzić wersję oprogramowania. Osoby korzystające z wersji starszej niż 29.0 powinny przejść na nowszą.
Użytkownicy zwykłych portfeli
Osoby, które nie prowadzą własnego węzła, nie są bezpośrednio związane z tą aktualizacją, ale ich portfele i tak polegają na infrastrukturze węzłów, z którymi się łączą.
Dlaczego ujawnienie po czasie nie jest czymś wyjątkowym?
W cyberbezpieczeństwie takie działanie jest standardem: najpierw publikuje się poprawkę, potem daje czas na aktualizację, a dopiero później ujawnia techniczne szczegóły błędu. Dzięki temu maleje ryzyko, że luka zostanie natychmiast wykorzystana przez osoby trzecie.
W tym przypadku ujawnienie nastąpiło również w momencie, gdy seria 28.x przestała być wspierana, a aktywnie utrzymywane pozostają tylko nowsze gałęzie oprogramowania.
Co warto zapamiętać?
- luka dotyczyła Bitcoin Core, nie samego protokołu Bitcoina,
- mogła powodować awarię węzłów w specyficznych warunkach,
- nie zmieniała reguł konsensusu,
- poprawka była dostępna wcześniej, a szczegóły opublikowano dopiero później,
- operatorzy własnych węzłów powinni upewnić się, że korzystają z aktualnej wersji.
Choć sam incydent nie wskazuje na problem z fundamentami Bitcoina, przypomina o tym, jak duże znaczenie dla bezpieczeństwa sieci ma oprogramowanie używane do walidacji transakcji i bloków.