НовостиКриптовалютыCoinkite предупреждает пользователей Coldcard Mk3 после вывода 594 BTC с 500 адресов

Coinkite предупреждает пользователей Coldcard Mk3 после вывода 594 BTC с 500 адресов

Автор: Coindoo·

Ключевые выводы

  • Coinkite предупредила, что seed, созданные напрямую на Coldcard Mk3 с прошивкой 4.0.1 (март 2021 года) и до версии 5.0.3, могут быть уязвимы из-за возможного сбоя генератора случайных чисел с низкой энтропией.
  • Примерно 594.48 BTC были выведены с около 500 адресов с одной подписью в окне из трёх блоков 30 июля 2026 года, однако Coinkite не подтвердила связь между этим выводом и раскрытой уязвимостью.
  • Одного обновления прошивки недостаточно, поскольку проблема затрагивает уже созданные seed; постоянное исправление требует создания полностью нового seed на неуязвимом устройстве.
  • Модели Coldcard Mk4, Q и Mk5 по текущему анализу не затронуты, а пользователи только с Mk3 могут применять временные меры, такие как BIP-39 passphrase или генерация seed с помощью костей, до полной миграции.
  • Seed, созданные вне Mk3 и затем импортированные в устройство, не затронуты, поскольку при их создании генератор случайных чисел Mk3 не использовался.
Coinkite предупреждает пользователей Coldcard Mk3 после вывода 594 BTC с 500 адресов

Coinkite, производитель линейки аппаратных кошельков Coldcard, 30 июля 2026 года выпустила предупреждение по безопасности, указав, что seed-фразы, созданные на Coldcard Mk3 с прошивкой 4.0.1 (выпущенной в марте 2021 года) или любой более поздней версией, могут быть уязвимы. Проблема сохраняется вплоть до версии 5.0.3 — последнего релиза прошивки, поддерживавшего модель Mk3. Coldcard давно занимает заметное место среди производителей аппаратных кошельков только для Bitcoin, и это предупреждение затрагивает пользователей, которые выбрали устройство именно за его air-gapped-дизайн и акцент на самостоятельном хранении.

Предупреждение последовало за подозрительным ончейн-событием, в ходе которого примерно 594.48 BTC были выведены примерно с 500 адресов с одной подписью в узком окне из трёх блоков. Coinkite не подтвердила связь между этим выводом и раскрытой уязвимостью.

Утренний вывод средств в пятницу

Примерно между 01:31 и 01:56 UTC 594.48 BTC были перемещены примерно с 500 адресов с одной подписью. Роб Гамильтон, генеральный директор AnchorWatch, провёл предварительный ончейн-анализ после первоначального сообщения Atlas 21. Гамильтон выявил 1,324 неистраченных выходов транзакций (UTXO), выведенных в 500 транзакциях в пределах блоков 960188–960191. Позднее примерно 562 BTC были консолидированы на один адрес.

При цене Bitcoin около $64,300 общая стоимость перемещённых средств составила примерно $38.3 млн.

Первоначальная оценка Гамильтона указывала на то, что при генерации кошелька на каком-то этапе произошёл сбой энтропии. Кевин Лоаэк из Wizardsardine, одним из первых публично поднявший тревогу, предположил наличие генератора случайных чисел с низкой энтропией, возможно, внутри программной библиотеки. Энтропия — непредсказуемость, определяющая, насколько трудно угадать seed, — является основой безопасности любого криптовалютного кошелька. При недостаточной энтропии пространство возможных seed, которое должен перебрать злоумышленник, сокращается с астрономически большого до потенциально поддающегося поиску.

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

Coinkite не подтвердила какую-либо связь между выводом средств и своим предупреждением. Никаких окончательных публичных доказательств такой связи не представлено.

Объём уязвимости

В предупреждении речь идёт именно о seed, созданных на затронутом устройстве Mk3, а не о каждом кошельке, с которым устройство когда-либо работало. Чтобы seed считался подверженным риску, должны выполняться три условия:

  1. Слова seed были созданы непосредственно на Coldcard Mk3.
  2. В момент создания seed на устройстве работала прошивка 4.0.1 (март 2021 года) или более поздняя.
  3. Этот seed по-прежнему контролирует Bitcoin или кошельки, от него производные.

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

Пользователи, которые создали seed до марта 2021 года и никогда не регенерировали его после этого, не попадают в затронутый диапазон. Любой, кто настроил кошелёк после этой даты или не может восстановить историю прошивок своего устройства, должен считать себя в зоне риска до тех пор, пока официальный обзор Coinkite не сузит параметры.

Seed, созданный вне устройства и затем импортированный в Mk3, не использовал генератор случайных чисел этого устройства и, следовательно, не подвержен данной конкретной проблеме. Coinkite подтвердила, что модели Mk4, Q и Mk5 не затронуты по текущему анализу, и рекомендовала использовать одно из этих более новых устройств для создания replacement seed.

Coinkite описала уведомление как предварительный анализ, за которым последует формальный технический обзор. Компания не публиковала объяснения механизма сбоя энтропии, количество затронутых устройств или оценку потенциально потерянных средств. Сбои генерации случайных чисел встречались и в других криптовалютных проектах, включая случаи, когда слабый RNG позволял восстановить приватные ключи, поэтому аудит энтропии seed остаётся активной областью исследований в сфере безопасности.

Почему простого обновления прошивки недостаточно

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

Такую динамику иллюстрирует случай, описанный на Reddit. Пользователь сообщил о выводе средств из кошелька, чей seed был первоначально создан на Mk3, купленном в мае 2021 года, а затем восстановлен на Mk4 в январе 2026 года. Новое, неуязвимое устройство унаследовало исходные слова seed — а вместе с ними и исходную уязвимость. Этот рассказ является самоотчётом и не доказывает ничего о более широком выводе средств, хотя описанный в нём механизм совпадает с тем, о чём предупреждает Coinkite.

Окончательное решение — это seed, который никогда не создавался на затронутом устройстве.

Перенос с помощью второго устройства

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

Для пользователей, у которых есть второе, неуязвимое устройство, Coinkite рекомендует следующие шаги:

  1. Создать новый seed на неуязвимом Coldcard (Mk4, Q или Mk5).
  2. Записать и проверить резервную копию до внесения любых средств.
  3. Проверить адрес для получения на экране самого устройства.
  4. Отправить небольшую тестовую транзакцию и убедиться, что новый кошелёк работает корректно.
  5. Переводить оставшиеся средства только после успешного прохождения всех проверок.
  6. Сохранять старую резервную копию до завершения и подтверждения миграции.

Временные меры для пользователей только с Mk3

Для пользователей, у которых единственное устройство — затронутый Mk3, Coinkite предложила два временных пути, ни один из которых не рассматривается как полное исправление.

Вариант 1: BIP-39 passphrase

Первый подход предполагает использование BIP-39 passphrase — отдельного секрета, добавляемого к словам восстановления и отличного от PIN-кода Coldcard. PIN защищает доступ к устройству, но не меняет базовые ключи и не даёт защиты в этой ситуации. BIP-39 passphrase, иногда называемый «25-м словом», представляет собой необязательный слой, стандартизованный в большинстве аппаратных и программных кошельков, поддерживающих формат восстановления BIP-39.

Сначала следует прочитать официальные инструкции по passphrase, затем выбрать на Mk3 пункт Passphrase и ввести длинную, случайную и уникальную фразу. Это не должна быть цитата, имя, знакомая фраза или повторно используемый пароль, и её никогда не следует вводить в компьютер, телефон или веб-сайт. Passphrase нужно точно сохранить в резервной копии и хранить отдельно от слов seed, поскольку его утрата означает потерю доступа к средствам.

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

Каждый passphrase создаёт действительный кошелёк, в том числе содержащий опечатку. Проверка fingerprint перед каждой отправкой позволяет выявлять такие ошибки.

Вариант 2: генерация seed только с помощью костей

Второй путь полностью обходит генератор случайных чисел устройства. На пустом Mk3 с прошивкой 4.1.9 выбор Import Existing > Dice Rolls и ввод как минимум 99 независимых бросков честного шестигранного кубика создают seed путём прямого хеширования последовательности бросков. Coinkite уточняет, что обычный поток New Wallet этого не делает, поэтому нужен именно путь через кости.

Это продвинутая процедура, и Coinkite прямо относит её к таким. Документация по броскам костей полностью описывает этот метод.

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

Сама последовательность бросков является ключевым материалом. Её никогда не следует фотографировать, сохранять в цифровом виде или вводить на устройство, подключённое к сети.

Passphrase даёт время, а не постоянную безопасность

По предварительному анализу Coinkite, средства, защищённые сильным BIP-39 passphrase, подвергаются минимальному риску из-за этой проблемы, поскольку passphrase создаёт отдельный кошелёк и от исходного seed, и от добавленного секрета. Автоматический поиск кошельков, построенных напрямую из ослабленного базового seed, не достигнет кошельков, защищённых passphrase.

Это согласуется с тем, что показал пятничный вывод: каждый опустошённый адрес был адресом с одной подписью, и каждый содержал более 0.15 BTC.

Тем не менее, базовый недостаток энтропии сохраняется независимо от использования passphrase. Эти слова восстановления по-прежнему слабее, чем предполагалось, и всё зависит от силы и секретности одной добавленной фразы. Постоянное исправление — это новый seed, созданный на неуязвимом устройстве.

Что это означает для пользователей аппаратных кошельков

Расследование Coinkite продолжается, и охват может измениться после публикации формального технического обзора. Компания призвала владельцев следить за официальными обновлениями, а не за скриншотами, пересланными сообщениями или любыми сторонними сервисами, обещающими проверить, уязвима ли seed-фраза.

Последний момент особенно важен. Предупреждение такого масштаба неизбежно привлекает фишинговые кампании, нацеленные именно на тех пользователей, которые, скорее всего, будут действовать быстро. Ни один легитимный инструмент не запрашивает слова seed, и ни одна форма поддержки, веб-сайт или сервис восстановления не должны их получать. Более широкая экосистема аппаратных кошельков, включая Ledger, Trezor, BitBox и других, последовательно подтверждает тот же принцип: seed-фразы нельзя вводить ни на одно устройство, подключённое к интернету, независимо от производителя кошелька.

Урок здесь уже, чем общий вывод о том, что аппаратные кошельки «не сработали». Офлайн-устройство действительно удерживает приватные ключи вне досягаемости вредоносного ПО, как и произошло в этом случае. Но оно не может защитить seed, который уже был предсказуем в момент создания, а именно с генерации ключей начинается вся модель безопасности. Для пользователей, оценивающих риск своей конфигурации, практический вопрос заключается не в том, какое устройство сейчас хранит seed, а в том, где и когда этот seed был создан впервые.

Отказ от ответственности: эта статья носит исключительно информационный характер и предназначена для повышения осведомлённости о безопасности. Следуйте официальным инструкциям Coinkite и никогда не раскрывайте никому слова seed, приватные ключи, резервные копии кошелька или BIP-39 passphrase.

Методология: версии прошивки, затронутые модели, шаги миграции, процедура passphrase и альтернатива только с бросками костей взяты из предупреждения Coinkite по безопасности от 30 июля 2026 года и связанной документации. Данные по выводу средств основаны на предварительном ончейн-анализе генерального директора AnchorWatch Роба Гамильтона после сообщения Atlas 21. Coinkite не подтвердила связь между выводом средств и проблемой генерации seed.