Уязвимость генерации seed в Coldcard вызвала тревогу после вывода 594 BTC за 25 минут
Ключевые выводы
- •Уязвимость затрагивает кошельки Coldcard Mk2 и Mk3, если seed были созданы с использованием прошивки версий 4.0.0–5.0.3, поскольку ошибка конфигурации заставляла генерацию seed опираться на публично известные значения вместо аппаратного генератора случайных чисел.
- •Более новые модели Coldcard — Mk4, Q и Mk5 — также создают seed только с 72 битами энтропии вместо предполагаемых 128 бит, хотя и по другому механизму, связанному с конструкцией secure element.
- •Примерно 594 BTC на сумму около $38 million были выведены примерно из 500 кошельков за 25 минут, а дополнительные связанные транзакции могут увеличить общий объём до примерно 1,082 BTC.
- •Пользователи, применявшие отдельную BIP-39 passphrase вместе с PIN, имеют очень низкий риск потери средств, если passphrase никогда не вводилась на смартфоне, компьютере или веб-сайте.
- •Возврат украденных Bitcoin считается маловероятным из-за необратимости транзакций Bitcoin и типичного использования злоумышленниками сервисов смешивания для сокрытия потоков средств.

Coinkite выпустила предупреждение для владельцев аппаратного кошелька Coldcard Mk3: любой Bitcoin-seed, созданный с марта 2021 года, может быть уязвим из-за обнаруженного дефекта, который может сделать эти seed предсказуемыми. Устройства Coldcard продвигаются как решение для хранения только Bitcoin с воздушным зазором и усиленной безопасностью, поэтому уязвимость, связанная с предсказуемостью seed, особенно значима для пользователей, выбравших продукт именно за его модель защиты. Объявление совпало с крупным инцидентом, в ходе которого примерно 594 BTC — на сумму около $38 million — были выведены примерно из 500 кошельков.
Какие модели затронуты, а какие нет
Уязвимость связана с прошивкой, а не с аппаратной частью. По данным команды The Block по инженерии и безопасности Bitcoin, Mk1 никогда не работал на ошибочном коде. Устройства Mk2 и Mk3, работающие на версии прошивки 3.2.2 или новее, изначально корректно генерировали seed с помощью аппаратного генератора случайных чисел.
Уязвимость впервые проявляется в версии прошивки 4.0.0. Любой seed Mk2 или Mk3, созданный с использованием версий 4.0.0–4.1.9, относится к «подтверждённому уязвимому пути», поскольку устройство не выполняло безопасное повторное инициализирование источника случайности. Coinkite распространяет это предупреждение до версии прошивки 5.0.3, последнего релиза, поддерживающего Mk3.
Изначально Coinkite заявляла, что затронут только Mk3, тогда как более новые модели — Mk4, Q и Mk5 — были описаны как «не затронутые, согласно нашему предварительному анализу». Однако в последующем уведомлении компания признала, что эти новые модели также создают seed только с 72 битами энтропии вместо предполагаемых 128 бит, хотя и по другому механизму из-за иной конструкции. По данным The Block, Mk4, Q и Mk5 получают энтропию из secure element, но сохраняют лишь четыре байта, что ограничивает число возможных путей генерации seed.
Coinkite подтвердила, что её продукты Tapsigner, Opendime и Satscard используют совершенно другие кодовые базы и не затронуты.
Вывод на $38 million за 25 минут
Эксплойт развивался быстро. В пятницу примерно 500 кошельков — каждый с балансом более 0.15 BTC — были опустошены между 01:31 и 01:56 UTC. Многие из этих кошельков не использовались годами, а движение монет относилось к периоду с 2021 по 2026 год.
Генеральный директор AnchorWatch Роб Гамильтон сообщил в X, что отслеживал 1,324 spent outputs в 500 транзакциях, проходивших в трёх блоках, а затем 562 BTC были консолидированы в один адрес.
Итоговая сумма может быть выше. Инженер Block Клей Гаррет обнаружил ещё 695 транзакций с той же сигнатурой, что и подтверждённые кражи, которые в совокупности переместили примерно 488.1 BTC. Если учитывать все связанные транзакции, общий объём может достигать примерно 1,082 BTC. Coinkite пока не подтвердила, была ли утечка средств вызвана ошибкой прошивки.
Как предсказуемая случайность сломала seed
The Block установила источник проблемы в конфигурации прошивки, которая отключала аппаратный генератор случайных чисел Mk3. Библиотека, используемая вместе с прошивкой, проверяла только наличие параметра конфигурации, но не то, включён он или выключен. В результате генерация ключей переходила на программный метод, который в данном случае опирался на публично известные значения, такие как серийный номер устройства и регистры часов.
Компания проследила проблему до commit кода от 1 March 2021, который впервые был включён в версии прошивки 4.0.0. Компания заявила, что раскрыла уязвимость до завершения полного тестирования, поскольку «active exploitation is underway».
Что советует Coinkite владельцам
Рекомендации Coinkite зависят от того, как был настроен кошелёк.
Согласно предварительной оценке Coinkite, пользователи, которые дополнительно к PIN использовали отдельную BIP-39 passphrase, имеют очень низкий риск потери средств — при условии, что эта passphrase никогда не вводилась на смартфоне, компьютере или веб-сайте.
Всем остальным рекомендуется перевести средства. Coinkite советует создать новый seed на незаражённом устройстве, проверить корректность резервных данных и адресов получения, отправить небольшую тестовую транзакцию и только затем переводить оставшуюся часть баланса.
Кроме того, организация описывает продвинутый метод с бросками костей, который полностью исключает генератор случайных чисел устройства, и одновременно предупреждает пользователей не торопиться с переводом, поскольку ошибки при восстановлении могут причинить больше вреда, чем сама обсуждаемая уязвимость.
Есть ли надежда вернуть украденные Bitcoins?
На этот вопрос есть только один печальный ответ: No. Оглядываясь назад, можно сказать так: знайте свой кошелёк так, будто вы сами его создали. Обзоры на тему «лучший кошелёк» должны основываться на независимых исследованиях безопасности, академических работах, аудите и технической документации самих производителей.
Figure 1. Vendors Documentation
Наиболее надёжные сравнения получаются при сопоставлении технической документации каждого производителя side by side. Вместо того чтобы ранжировать кошельки как «best», следует сравнивать объективные характеристики. Это смещает акцент с субъективных рейтингов на проверяемые факторы, такие как независимые аудиты, воспроизводимая прошивка, сертификация, практика раскрытия информации и реакция на уязвимости — критерии, которые особенно актуальны после инцидента с Coldcard Mk3.
Если вы читаете это, вы уже впереди. Оставайтесь на этом уровне вместе с нашей рассылкой .