Ошибка прошивки отключила генерацию безопасных случайных чисел на нескольких поколениях аппаратных кошельков Coldcard, что способствует продолжающемуся краже, уже выведшей 594,48 bitcoin (BTC), что составляет около 38,3 млн долларов США.
Команда Coinkite, создателя Coldcard, и инженерная команда Block по биткоину выявили ошибку в проверке генератора случайных чисел (RNG). В результате злоумышленники могут восстановить закрытые ключи кошелька, используя предсказуемые данные устройства вместо истинной случайности.
Кража bitcoin с Coldcard: как это произошло
Прошивка Coldcard отключает встроенный генератор случайности чипа. Вместо этого резервная система создает ключи кошелька из серийного номера устройства и его внутренних часов. Оба параметра следуют шаблонам, которые злоумышленник может угадать, превращая якобы случайное семя в решаемую головоломку.
Устройства, работающие на определённой прошивке, выпущенной с 2021 года, получают практически никакой настоящей случайности. Более новые модели добавили частичное исправление. Однако это всё ещё сужает возможные исходы примерно до четырёх миллиардов комбинаций — количество, которое современные компьютеры могут перебрать. Исторически Block выявил эту ошибку в обновлении 2021 года, а последующее исправление год спустя всё ещё оказалось недостаточным.
Следовательно, та же уязвимость затрагивает бумажные кошельки, резервные копии seed-фраз и другие функции, использующие один и тот же источник случайности. Отчет Block подтвердил более широкий охват. Настройка напоминает эксплуатацию Ill Bloom, которая ранее в этом году опустошала кошельки через слабые seed-фразы.
Что должны сделать пользователи сейчас
Злоумышленникам не нужен физический доступ, чтобы украсть средства. Видимый адрес или экспортированный открытый ключ дают им цель для проверки предположений. Как только предположение совпадает, злоумышленник получает частный ключ и может немедленно перевести монеты.
Coinkite рекомендует каждому затронутому пользователю сгенерировать совершенно новый seed на обновленном оборудовании и немедленно перевести средства. Обновления прошивки не могут отменить ущерб, поскольку слабый seed все еще существует на устройстве.
В то же время пользователи, которые добавили дополнительную фразу-пароль к своему seed, сталкиваются с существенно меньшим риском из-за этого недостатка. Этот подход недавно одобрил и ЗакXBT для мобильных кошельков.
Слабая генерация ключей ранее приводила к потере криптовалюты держателями. Аналогично, раскрытие мастер-ключа ударило по налоговой службе Южной Кореи в начале этого года. Утечка частного ключа обрушила токен Humanity Protocol на 88% в июне.
Продавцы продолжают расширять оффлайн-аппаратные кошельки в розничные магазины. Однако этот инцидент показывает, что ошибки прошивки могут подорвать эту гарантию изнутри устройства.
Coinkite и Block сообщают, что продолжают оценивать масштабы уязвимости в более ранних прошивках. Пока обзор не завершен, владельцы Coldcard должны предполагать, что любой seed, сгенерированный до исправления сегодня, может уже быть скомпрометирован.

