Исследование: более половины узлов биткоина уязвимы

Avatar Roman 2 months ago

Биткоин-разработчик Люк Дашир изучил программное обеспечение полных узлов сети биткоина и пришел к выводу, что более половины из них подвержены багу, который может искусственным образом увеличить эмиссию биткоина сверх установленного предела.

Согласно статистике, представленной разработчиком Люком Даширом, 50426 полных нод в сети биткоина или 56,08% от общего числа полных узлов подвержены уязвимости под кодом CVE-2018-17144. Этот баг позволяет искусственным образом превысить эмиссию биткоина сверх предела, который установлен на уровне 21 000 000.

Всего в сети биткоина его алгоритм насчитал около 90 тысяч полных узлов. Из них подвержены другим багам, помимо CVE-2018-17144, еще 3396 (3,75%). 9236 или 10,27% полных узлов работают на устаревшем программном обеспечении, и только 26417 (29,38%) полных узлов обновлены и не подвержены уязвимостям.

Любопытно, что общее число полных нод по версии Люка Дашира в 9 раз превышает показатели, которые приводятся на других мониторинговых сервисах. Так, согласно BitNodes, в сети биткоина существует 9601 полных узлов, а по версии Coin.dance, у биткоина порядка 9390 узлов. Сам разработчик это объясняет тем, что эти мониторинги учитывают только доступные для публичного обозрения ноды, тогда как его алгоритм подсчитывает все полные узлы, которые занимаются обработкой транзакций. Информацию с этих сервисов он назвал бессмысленной, которая не дает точное представление о состоянии сети.

Уязвимость CVE-2018-17144 была обнаружена и исправлена в сентябре 2018 года. Тогда разработчики биткоина призывали держателей полных узлов в срочном порядке обновиться до новых версий Bitcoin Core 0.16.3 и 0.17.0rc4.

CVE-2018-17144 состоит из двух компонентов – ошибки сбоя и ошибки инфляции. Майнеры могли потратить выходные данные дважды в одной и той же транзакции, которая потом включалась в добываемые майнером блоки, что позволяло создать новый выход, который имеет удвоенную стоимость. Тем самым майнеры могли создавать дополнительные монеты, но за два года уязвимостью никто не воспользовался.

Скорее всего, баг появился в коде в октябре 2016 года из-за недостаточно тщательной проверки обновлений. Сам баг был раскрыт в частном порядке анонимным разработчиком.

Play BTC Games, ETH Games, USDT Games, BCH Games, LTC Games
Show comments