В этом материале
Команда Bitcoin Core обнаружила уязвимость в сети Tor

В Bitcoin Core обнаружили уязвимость, которая предоставляла входящим соединениям Tor доверенные права доступа к тысячам узлов, устраняя тем самым часть защиты от спама и утечек конфиденциальной информации.

В сообщении Bitcoin Core о безопасности, опубликованном 10 ноября, уязвимость в Tor обозначена как CVE-2025-62860. Разработчики обнародовали подробности вместе с информацией о двух других уязвимостях после того, как поддержка последней затронутой серии релизов, 29.x, прекратилась 27 октября.

Настройки белого списка Bitcoin Core позволяют трафику Tor обходить ограничения

Согласно сообщению, входящие соединения Tor отображались для Bitcoin Core под IP-адресом программного обеспечения Tor, которое обычно работало на том же компьютере или в той же локальной сети. Когда этот адрес совпадал с диапазоном, заданным с помощью необязательной настройки -whitelist, внешние соединения получали разрешения, предназначенные для доверенных соединений.

Использование белого списка снимает различные ограничения, препятствующие атакам типа «отказ в обслуживании», и обеспечивает защиту от утечки конфиденциальной информации. По словам разработчиков, популярные поставщики объединили Bitcoin Core с Tor и настроили соответствующие диапазоны белого списка, в результате чего тысячи доступных узлов основной сети принимают все входящие соединения Tor с соответствующими привилегиями.

Узлы, которые никогда не включали нестандартную настройку, не были затронуты этой уязвимостью. В уведомлении отмечается, что Мартин Зумсанде и Антуан Пуансо обнаружили её и сообщили о ней группе безопасности 12 сентября 2025 года.

В своем изменении кода Зумсанде объяснил, что входящие соединения Tor не раскрывают фактический сетевой адрес партнера, что делает сопоставление на основе адреса неэффективным. Предложенное им исправление исключило входящие соединения Onion из разрешений белого списка. Разработчики объединили его 17 сентября 2025 года.

Согласно хронологии событий, компания Poinsot уведомила затронутых поставщиков программного обеспечения через два дня. Bitcoin Core 30.0 был выпущен с исправлением 10 октября, за ним последовала версия 29.2 14 октября. В уведомлении также указано, что исправления внесены в версии 28.3 и последующие минорные релизы.

Отдельная ошибка в майнинге может привести к остановке создания шаблонов блокировки

Уязвимость в майнинге, зарегистрированная под номером CVE-2025-62861, получила высокий уровень серьезности. Она затронула версии 28.0–28.2 и 29.0–29.1.

В рекомендациях Bitcoin Core описывается проблема, возникающая во время реорганизации цепочки, когда транзакции из разъединенных блоков возвращаются в мемпул — совокупность ожидающих транзакций узла.

Правила для транзакций версии 3, известных как транзакции TRUC, обычно ограничивают связи между неподтвержденными транзакциями. Однако во время реорганизации транзакции, возвращающиеся из действительных блоков, должны обходить эти ограничения.

В результате ошибки правило замены транзакций оставалось активным в течение этого процесса. Оно могло удалить восстановленную транзакцию, оставив при этом транзакции, зависящие от нее, что приводило к несогласованности пула памяти.

В сообщении говорится, что при отсутствии этих входных данных предлагаемый майнинговым узлом шаблон блока не пройдет проверку на корректность. Создание шаблона блока не сможет возобновиться до тех пор, пока перезапуск не перезагружает пул памяти в согласованное состояние.

Никлас Гёгге сообщил об этой проблеме 26 сентября 2025 года. В документации по исправлению разработчик Грег Сандерс объяснил, что пропуск проверок TRUC во время реорганизаций был запланированным поведением, но соответствующий аргумент обхода не проверялся. Разработчики внесли исправление 2 октября.

Ещё один недостаток может привести к многократным задержкам обработки блоков

В третьем официальном уведомлении, CVE-2025-62859, описывается уязвимость средней степени серьезности, затрагивающая компактные блоки — метод ретрансляции блоков между узлами, позволяющий экономить пропускную способность сети.

Злоумышленник, первым объявивший о компактном блоке, мог заставить жертву запросить полный блок у того же участника сети и ждать 10-минутный таймаут. Задержка возникала из-за неудачной проверки на наличие измененных данных свидетеля транзакции.

Согласно полученной информации, злоумышленник, контролирующий все три высокоскоростных узла жертвы, мог бы повторять сбой бесконечно. Узлы, работающие с параметром -blocksonly, представляли собой еще одну конфигурацию, в которой была возможна многократная задержка. Юджин Сигел сообщил об этой уязвимости 28 апреля 2025 года.