Розробники Bitcoin Core розкрили критичну уразливість, яка може дозволити майнерам віддалено спричинити збій (crash) деяких вузлів Bitcoin.
Summary
Проблема, що відстежується як CVE-2024-52911, вплинула на версії Bitcoin Core після 0.14.0 і до 29.0. Вразливість було виправлено в Bitcoin Core 29.0, який вийшов у квітні 2025 року.
Bitcoin Core зробив проблему публічною 5 травня 2026 року після того, як фінальна вразлива гілка 28.x досягла кінця життєвого циклу 19 квітня.
Проблема стосувалася інтерпретатора скриптів Bitcoin Core під час валідації блоків. Bitcoin Core заявив, що спеціально створений блок може змусити вузол звернутися до пам’яті після того, як ці дані вже було звільнено.
Під час валідації Bitcoin Core попередньо обчислює вхідні дані транзакції та відправляє перевірки скриптів у фонові потоки. У деяких випадках некоректний блок міг знищити кешовані дані, тоді як інший потік ще намагався їх прочитати.
Bitcoin Core заявив, що це може дозволити атакувальнику з достатнім доказом роботи спричинити збій вузлів жертв. Також він зазначив, що «можливо», збій може підтримувати віддалене виконання коду, хоча обмеження обсягу даних у блоках робили такий результат «малоймовірним».
Атака не була простою для реалізації. Майнеру потрібно було згенерувати спеціально створений блок із достатнім доказом роботи, щоб дістатися кінчика ланцюга (chain tip).
Це робило атаку дорогою, бо такий блок був би недійсним. Він не міг би заробити звичайну винагороду за блок, тож атакувальнику доводилося витрачати хешпотужність без отримання звичної винагороди майнінгу.
Bitcoin Core не повідомляв, що баг використовували в реальних атаках. У бюлетені фокус був на самій вразливості, виправленні та таймлайні розкриття.
Баг не змінював консенсусні правила Bitcoin. Він був пов’язаний із керуванням пам’яттю в програмному забезпеченні Bitcoin Core, а не з правилами, які визначають дійсні транзакції чи блоки Bitcoin.
Cory Fields з MIT Digital Currency Initiative приватно повідомив про баг 2 листопада 2024 року. Bitcoin Core заявив, що звіт містив proof of concept і запропонований спосіб зменшити ризик.
Pieter Wuille просунув приховане виправлення чотири дні потому через PR 31112. Запит на вилучення було об’єднано 3 грудня 2024 року, до того як Bitcoin Core 29.0 вийшов у квітні 2025 року вже з цим виправленням.
Бюлетень дотримувався політики розкриття Bitcoin Core для вразливостей із високою критичністю. У політиці зазначено, що проблеми високої критичності розкривають після завершення життєвого циклу останнього ураженого релізу.
Крім того, оператори вузлів, які використовують версії Bitcoin Core до 29.0, досі стикаються зі старою вразливістю. Bitcoin Core не виконує автоматичне оновлення, тож користувачам потрібно вручну встановити новіші версії.
Раніший звіт про ризики децентралізації в блокчейні посилався на дослідження, згідно з яким 21% вузлів Bitcoin у червні 2021 року працювали на застарілих версіях Bitcoin Core. Цей контекст показує, чому старі клієнтські версії можуть залишатися проблемою безпеки ще довго після виходу виправлень.
Пов'язані статті
Core Scientific купує майнінг-ферму біткоїн-майнер Polaris за 421 млн доларів, розширює операції AI дата-центру
Топ-3 криптовалют за приростом ринкової капіталізації сьогодні до 36%; ZEC лідирує, TON зростає на 25,24%
CTO CleanSpark: AI/HPC-інфраструктурі потрібно більше мережевих ресурсів, ніж майнінгу Bitcoin
21Shares розмістила Strategy Yield ETN на Лондонській фондовій біржі, пропонуючи дохідність 11,50%
CleanSpark продає 748 BTC у квітні, обсяг на балансі знижується до 13 453
Bitcoin досягає 67-денного негативного сальдо фандингу поспіль, тоді як K33 сигналізує про ризик короткого squeeze