Экосистема аппаратных криптовалютных кошельков столкнулась с одним из самых серьезных инцидентов безопасности последних лет. В результате эксплуатации критической уязвимости в прошивке устройства Coldcard злоумышленнику удалось похитить приблизительно 594 BTC, что эквивалентно 38 миллионам долларов США. Атака затронула около 500 отдельных одноподписных кошельков, а весь процесс вывода средств занял менее тридцати минут. Этот инцидент напрямую затрагивает репутацию Coldcard, который долгое время считался золотым стандартом безопасности для биткоин-максималистов.
Корень проблемы кроется не во взломе устройства физически и не в фишинге мнемонической фразы пользователя. Уязвимость носит системный характер и заложена на уровне программного обеспечения, управляющего генерацией криптографических ключей в устройствах Coldcard. Аппаратные кошельки полагаются на аппаратные генераторы случайных чисел (TRNG), которые используют физические процессы для создания истинно непредсказуемых значений энтропии.
Критический сбой логики Coldcard: Начиная с версии прошивки 4.0.0, выпущенной в марте 2021 года, в конфигурации сборки присутствовала ошибка. Она заставляла устройство игнорировать собственный защищенный аппаратный генератор случайных чисел. Вместо этого система откатывалась к базовому программному методу генерации ключей, использующему в качестве зерна (seed) несекретные метаданные чипа: заводской серийный номер и значения регистров тактового генератора.
Библиотечная функция, отвечающая за эту проверку, анализировала лишь наличие настройки в коде, но не проверяла, включена она или выключена. В результате процесс создания сид-фразы на 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 автоматически гарантирует абсолютную безопасность. Аппаратный кошелек — это, прежде всего, компьютер, и его безопасность напрямую зависит от качества программного кода, управляющего криптографическими примитивами.
Индустрия должна извлечь из этого следующие уроки:
Этот инцидент служит суровым напоминанием о том, что в криптографии дьявол кроется в деталях реализации. Даже микроскопическая ошибка в проверке логического флага в прошивке Coldcard может обесценить годы разработки защищенного железа и привести к необратимым потерям средств.
«Безопасность аппаратного кошелька определяется не его прочным корпусом или наличием кнопок, а исключительно качеством энтропии, используемой для генерации ключей. Если случайность предсказуема, самая надежная крепость не имеет стен».
— Андреас Антонопулос, известный эксперт по безопасности блокчейна и автор бестселлеров о криптовалютах
