Критическая уязвимость Coldcard: анализ хищения 594 BTC и сбоя генерации ключей

Экосистема аппаратных криптовалютных кошельков столкнулась с одним из самых серьезных инцидентов безопасности последних лет. В результате эксплуатации критической уязвимости в прошивке устройства Coldcard злоумышленнику удалось похитить приблизительно 594 BTC, что эквивалентно 38 миллионам долларов США. Атака затронула около 500 отдельных одноподписных кошельков, а весь процесс вывода средств занял менее тридцати минут. Этот инцидент напрямую затрагивает репутацию Coldcard, который долгое время считался золотым стандартом безопасности для биткоин-максималистов.

⚙️ Техническая суть уязвимости: крах энтропии в прошивке Coldcard

Корень проблемы кроется не во взломе устройства физически и не в фишинге мнемонической фразы пользователя. Уязвимость носит системный характер и заложена на уровне программного обеспечения, управляющего генерацией криптографических ключей в устройствах Coldcard. Аппаратные кошельки полагаются на аппаратные генераторы случайных чисел (TRNG), которые используют физические процессы для создания истинно непредсказуемых значений энтропии.

Критический сбой логики Coldcard: Начиная с версии прошивки 4.0.0, выпущенной в марте 2021 года, в конфигурации сборки присутствовала ошибка. Она заставляла устройство игнорировать собственный защищенный аппаратный генератор случайных чисел. Вместо этого система откатывалась к базовому программному методу генерации ключей, использующему в качестве зерна (seed) несекретные метаданные чипа: заводской серийный номер и значения регистров тактового генератора.

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

⏱️ Хронология эксплойта: 25 минут, изменивших всё

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

  • Начало активности: Массовый вывод средств начался в 01:31 по UTC в пятницу. Злоумышленник инициировал серию транзакций с кошельков Coldcard, которые могли оставаться неактивными в течение нескольких лет.
  • Масштаб операции: В течение 25 минут, до 01:56 по UTC, было обработано 1324 потраченных выхода (spent outputs) в рамках 500 отдельных транзакций, распределенных всего по трем блокам сети Bitcoin.
  • Консолидация средств: Похищенные 594 BTC не были немедленно распределены по миксерам. Вместо этого 562 BTC из общей суммы были быстро консолидированы на единый адрес, что упростило отслеживание движения средств блокчейн-аналитиками, но не остановило сам факт хищения.

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

📊 Матрица риска: какие модели Coldcard находятся под угрозой

Разработчики Coinkite (производитель Coldcard) оперативно выпустили предупреждение, детализирующее, какие именно модели и версии программного обеспечения подвержены риску. Понимание этой матрицы критически важно для владельцев устройств.

Зона подтвержденной уязвимости: Устройства Coldcard Mk2 и Coldcard Mk3, на которых генерация сид-фразы производилась под управлением прошивки версий с 4.0.0 по 5.0.3 (последняя версия, поддерживающая архитектуру Mk3). Любые кошельки, созданные в этом диапазоне, считаются потенциально скомпрометированными.

Безопасные конфигурации: Устройства первого поколения (Coldcard Mk1) никогда не содержали проблемного кода. Кроме того, устройства Mk2 и Mk3, которые были обновлены до версии прошивки 3.2.2 или ранее и не пересоздавали сид-фразу на новых версиях, использовали корректный аппаратный генератор случайных чисел и не подвержены данной атаке.

Сложная ситуация с новыми моделями: Устройства Coldcard Mk4, Coldcard Q и Coldcard Mk5 используют иную архитектуру с выделенным защищенным элементом (Secure Element). Однако предварительный анализ показал, что эти модели также сохраняют лишь четыре байта энтропии от защищенного элемента, ограничивая пространство возможных путей генерации сид-фразы до 72 бит вместо стандартных 128 бит. Хотя это не является прямой причиной текущей атаки на Mk2/Mk3, это снижает теоретический запас прочности криптографической стойкости новых устройств.

Полностью защищенные продукты: Аппаратные решения Tapsigner, Opendime и Satscard от того же производителя используют совершенно другие кодовые базы и не затронуты данной уязвимостью генерации ключей.

🛡️ Реакция разработчиков и экстренные меры защиты

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

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

  • Немедленная миграция: Пользователям Coldcard Mk2 и Mk3 с уязвимыми версиями прошивки категорически запрещено проводить какие-либо новые транзакции со старых адресов.
  • Создание нового окружения: Средства должны быть переведены на совершенно новые кошельки, сгенерированные на обновленном устройстве (или на устройстве другой проверенной марки) с использованием свежей, непредсказуемой энтропии.
  • Проверка истории: Если сид-фраза была создана на уязвимой прошивке Coldcard, но устройство позже было обновлено до безопасной версии, ключи все равно считаются скомпрометированными, так как уязвимость затрагивает именно момент первичной генерации мастер-ключа.

💡 Глобальные уроки для экосистемы аппаратной безопасности

Данный инцидент разрушает распространенный миф о том, что наличие физического устройства Coldcard автоматически гарантирует абсолютную безопасность. Аппаратный кошелек — это, прежде всего, компьютер, и его безопасность напрямую зависит от качества программного кода, управляющего криптографическими примитивами.

Индустрия должна извлечь из этого следующие уроки:

  • Необходимость независимого аудита энтропии: Аудит бизнес-логики недостаточен. Критически важен глубокий анализ источников энтропии и механизмов отката (fallback) в криптографических библиотеках.
  • Опасность тихих сбоев: Система не должна молча переключаться на менее безопасный метод генерации ключей при сбое основного. Любая деградация криптографической стойкости должна сопровождаться критической ошибкой и блокировкой устройства.
  • Прозрачность прошивок: Сообщество должно требовать воспроизводимых сборок (reproducible builds), позволяющих независимо верифицировать, что скомпилированный код точно соответствует открытым исходникам без скрытых изменений конфигурации.

Этот инцидент служит суровым напоминанием о том, что в криптографии дьявол кроется в деталях реализации. Даже микроскопическая ошибка в проверке логического флага в прошивке Coldcard может обесценить годы разработки защищенного железа и привести к необратимым потерям средств.

«Безопасность аппаратного кошелька определяется не его прочным корпусом или наличием кнопок, а исключительно качеством энтропии, используемой для генерации ключей. Если случайность предсказуема, самая надежная крепость не имеет стен».

— Андреас Антонопулос, известный эксперт по безопасности блокчейна и автор бестселлеров о криптовалютах

01.08.2026, 01:27