Розробники Bitcoin Core розкрили критично серйозну ваду, яка може дозволити майнерам віддалено «завалювати» деякі ноди Bitcoin.
Підсумок
Проблема, яку відстежують як 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 заявив, що це може дозволити атакувальнику з достатнім обсягом proof-of-work «завалити» ноди жертв. Також він зазначив, що «можливо», що збій здатен підтримати віддалене виконання коду, хоча обмеження на обсяг даних у блоці робили такий результат «малоймовірним».
Атаку не можна було просто здійснити. Майнер мав би згенерувати спеціально сформований блок із достатнім proof-of-work, щоб дістатися кінчика ланцюга.
Це робило атаку дорогою, тому що такий блок був би некоректним. Він не міг би отримати звичайну винагороду за блок, тож атакувальник витрачав би хешпотужність без збору стандартної майнінгової виплати.
Bitcoin Core не повідомляв, що ваду застосовували в реальних атаках. Оголошення було зосереджене на самій ваді, виправленні та часовій шкалі розкриття.
Вада не змінювала консенсусні правила Bitcoin. Вона була пов’язана з обробкою пам’яті в програмному забезпеченні Bitcoin Core, а не з правилами, які визначають коректні транзакції чи блоки Bitcoin.
Cory Fields з MIT Digital Currency Initiative приватно повідомив про ваду 2 листопада 2024 року. Bitcoin Core заявив, що повідомлення містило proof of concept і запропонований спосіб зменшити ризик.
Pieter Wuille протягом чотирьох днів проштовхнув приховане виправлення через PR 31112. Pull request було об’єднано 3 грудня 2024 року, до того як Bitcoin Core 29.0 вийшов у квітні 2025 року з цим виправленням.
Оголошення послідувало політиці Bitcoin Core щодо розкриття вад із підвищеною серйозністю. Її політика говорить, що проблеми підвищеної серйозності розкриваються після того, як останній уражений реліз переходить у стан end of life.
Крім того, оператори нод, які використовують версії Bitcoin Core до 29.0, досі стикаються зі старою вадою. Bitcoin Core не виконує автоматичне оновлення, тож користувачам потрібно вручну встановлювати новіші версії.
Попередній звіт про ризики децентралізації вказував на дослідження, яке показало, що у червні 2021 року 21% нод Bitcoin використовували застаріле програмне забезпечення Bitcoin Core. Цей контекст демонструє, чому старі клієнтські версії можуть залишатися проблемою безпеки ще задовго після виходу виправлень.
Пов'язані статті
Gomining запускає GoBTC на Consensus Miami, орієнтуючись на довгоочікуваний платіжний рівень Bitcoin
Ціна біткоїна й далі торгується вище $80 000 — чи правильний час для покупки?
Кит із «pension-usdt.eth» стикається з плаваючим збитком у 19,6 млн доларів на довгих коротких позиціях 3x по BTC та ETH
Біткоїн закріпився вище за поріг у 80 000 доларів, а індекс крипторизику “страх і жадібність” уперше з січня повернувся до «нейтрального» рівня
Біткоїн наближається до $82 000 6 травня на тлі прогресу в мирній угоді між Іраном