Ошибка в генерации ключей аппаратного кошелька Coldcard превратила «невозможные для угадывания» сид-фразы в предсказуемые. Злоумышленник уже похитил около $38 млн.

Неизвестный злоумышленник вывел примерно 594 биткоина (около 38 млн долларов) с 500 отдельных кошельков. Атака стала возможной из-за уязвимости в механизме генерации ключей аппаратными кошельками COLDCARD. Кража прошла в виде 500 транзакций в течение трех блоков, после чего 562 биткоина объединили на одном адресе, с которого средства пока не перемещались.

Все опустошенные кошельки были одноключевыми (single-signature), и на каждом хранилось более 0,15 BTC. Многие из них не использовались годами — монеты поступали на них в период с 2021 по 2026 год, что практически совпадает с возрастом самой уязвимости.

COLDCARD — аппаратный кошелек канадской компании Coinkite. Модели Mk2, Mk3, Mk4, Q и Mk5 — последовательные поколения устройства, выходившие на протяжении нескольких лет. При этом уязвимость устройства зависит не от даты его покупки, а от того, какая прошивка была установлена при первом создании кошелька.

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

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

В Coinkite предупредили пользователей, создавших сид-фразу на устройствах Mk3 с прошивкой версии 4.0.1 или новее. По предварительным данным, модели Mk4, Q и Mk5 проблема не затронула.

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

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    1 Комментарий
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии