Разработчики Bitcoin Core сообщили о уязвимости конфиденциальности, которая может раскрыть IP-адрес пользователя — именно ту информацию, которую она была призвана скрыть. Исправление появится в версии 31.1.
Уязвимость находится в частной трансляции — необязательной функции, добавленной в версии 31.0 в апреле этого года. Разработчики опубликовали предупреждение 6 июня.
Как уязвимость конфиденциальности оборачивается против себя
Частная трансляция отправляет транзакции через Tor — анонимную сеть, известную доступом к темному вебу, поэтому получатели никогда не узнают, откуда они были отправлены.
Однако официальное упоминание признает, что это обещание может быть нарушено.
Проблема начинается, когда программа пытается установить зашифрованное соединение с другим компьютером в сети. Если эта попытка не удаётся, она тихо повторяет попытку через обычное соединение, полностью пропуская Tor. Получатель тогда видит реальный IP-адрес отправителя и его приблизительное местоположение.
Хуже того, атакующим не нужна удача. Враждебная нода может намеренно отклонить зашифрованное рукопожатие и принудительно вызвать повторную попытку раскрытия.
Риск критичен, потому что реестр bitcoin является общедоступным. Связывание транзакции с IP-адресом может соотнести платежи с реальным человеком.
Кто затронут и что делать
Баг затрагивает только пользователей, использующих версию 31.0 и включивших эту функцию. Ежедневные операции с кошельком остаются неизменными. Разработчики благодарят исследователя Евгения Зигеля за обнаружение.
В то же время рынки едва реагировали. Bitcoin (BTC) торгуется около $63 700, практически без изменений за последние сутки. Разработчикам теперь предстоит более спокойная задача — восстановить доверие к усилиям Bitcoin по обеспечению конфиденциальности.
До выхода версии 31.1 затронутым пользователям следует отключить функцию или направить весь свой трафик через Tor. Эпизод следует за недавним спором о передаче транзакций и возобновляет вопросы о том, кто поддерживает Bitcoin Core.

