Главное:

Electrum экстренно обновляет криптовалютный кошелёк: хакеры нашли способ красть BTC без приватных ключей через подмену серверов

Разработчики кошелька Electrum выпустили экстренное обновление 4.8.3, которое закрывает критическую уязвимость с подменой неподтверждённых платежей в сети Биткоина. Вредоносные серверы уже используют этот баг, чтобы красть монеты у пользователей при ручном повышении комиссии через функцию Replace-by-Fee (RBF).

Рука нажимает кнопку Increase fee в кошельке Electrum

Проблема затронула все версии программы старее 4.8.3. Разработчики раскрыли детали уязвимости 24 октября после двух жалоб от пострадавших, которые поступили 11 и 18 октября. Первый пользователь просто заметил чужую транзакцию в истории кошелька после отправки перевода, но вектор атаки через повышение комиссии тогда не распознали. Второй пользователь с ником Raju-K12 попытался ускорить зависший платёж и лишился своих монет. Точная сумма ущерба и общее число пострадавших кошельков остаются неизвестными.

Как вредоносные серверы крадут Биткоин при повышении комиссии

Кошелёк Electrum работает как лёгкий клиент: он не хранит весь блокчейн Биткоина, а полагается на внешние серверы для отображения истории операций и отправки переводов в сеть. По архитектуре приложения главный сервер, к которому подключён клиент, считается доверенным источником данных о неподтверждённых транзакциях в мемпуле. Именно эту особенность злоумышленники превратили в инструмент для кражи.

Атака не требует кражи сид-фразы, поэтому даже самый надёжный способ хранения ключей не защитит от подмены данных на экране. Схема обмана работает в несколько этапов:

  • Пользователь создаёт обычный перевод и отправляет его через подключённый сервер.
  • Вредоносный узел перехватывает транзакцию, не пускает её в общую P2P-сеть Биткоина и присылает в историю кошелька фальшивую конфликтующую запись.
  • В поддельной операции адрес получателя заменён на кошелёк хакера, а комиссия, судя по отчёту второго пострадавшего, выставлена на ноль, чтобы спровоцировать жертву ускорить перевод.
  • Фальшивка содержит недействительные подписи и не может пройти в блокчейн сама по себе, но старые версии Electrum не проверяли их и показывали перевод как обычный неподтверждённый платёж.
  • Когда владелец кошелька вручную повышает комиссию через RBF, программа формирует и подписывает уже изменённую транзакцию, отправляя реальные монеты напрямую хакеру.

Чтобы жертва не заметила подмену при беглом осмотре, преступники специально подбирали адреса. В обоих зафиксированных случаях кошельки атакующих совпадали по последним четырём символам с настоящими реквизитами получателей. Многие ходлеры знают, как повторное использование адресов Биткоина бьёт по анонимности, но привычка сверять только хвост строки при подтверждении перевода оказалась прямой угрозой для баланса.

Защита в версии 4.8.3 и ограничения лёгких клиентов

В обновлении 4.8.3, куда вошёл патч под номером коммита 90fe308, разработчики изменили логику работы с мемпулом. Теперь клиент принудительно проверяет криптографические подписи для всех входов, которые тратят собственные монеты кошелька (параметр wallet.is_mine), прежде чем добавить неподтверждённую операцию в локальную историю.

Два мужчины за деревянным столом смотрят на ноутбук

Два мужчины за деревянным столом смотрят на ноутбук

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

Заходите в наш Telegram-чат 2Bitcoins, если хотите обсудить новость с другими читателями.

Пользователи, которые подключаются к собственным или заведомо надёжным узлам, изначально не были подвержены этому вектору атаки. Тем, кто пока не может установить версию 4.8.3, разработчики рекомендуют временную меру: перед подписанием любой операции — будь то обычный перевод или повышение комиссии — полностью сверять адрес получателя и сумму списания.

Реакция других разработчиков кошельков Биткоина

Уязвимость в архитектуре Electrum заставила проверить безопасность и другие проекты, использующие серверную инфраструктуру. Генеральный директор компании Bull Bitcoin Франсис Пулио сообщил, что их кошелёк BULL по умолчанию соединяется только с тремя проверенными узлами: двумя собственными серверами компании и одним от Blockstream.

Мужчина с планшетом в серверном зале среди стоек

Мужчина с планшетом в серверном зале среди стоек

По словам Пулио, пользователи BULL не попадали под удар, если только сами вручную не прописывали в настройках адрес скомпрометированного стороннего сервера. Тем не менее команда Bull Bitcoin решила перестраховаться и объявила о немедленном внедрении аналогичной проверки подписей на стороне клиента.

Следите за новостями в нашем Telegram-канале 2Bitcoins.

История с подменой транзакций через RBF показывает уязвимое место лёгких кошельков, которые жертвуют полной проверкой данных ради быстрой работы без скачивания всего блокчейна. В ближайшее время владельцам Биткоина стоит следить за обновлениями других популярных клиентов на базе протокола Electrum и проверить настройки подключения к серверам в своих приложениях.

Читайте также: Банк Израиля отверг идею Нетаньяху обходить санкции через криптовалюту

ПОДПИСЫВАЙТЕСЬ НА НАШ КАНАЛ В ТЕЛЕГРАМЕ, ЧТОБЫ БЫТЬ В КУРСЕ.