Как уязвимость COLDCARD привела к краже $88 млн в биткоинах: разбор и меры защиты
Аппаратные кошельки традиционно считаются золотым стандартом безопасности для хранения криптовалюты, но даже они могут таить в себе скрытые дефекты. Недавнее расследование компании Unciphered показало, что уязвимость в генераторе случайных чисел (ГПСЧ) прошивки COLDCARD, популярного аппаратного коше

Аппаратные кошельки традиционно считаются золотым стандартом безопасности для хранения криптовалюты, но даже они могут таить в себе скрытые дефекты. Недавнее расследование компании Unciphered показало, что уязвимость в генераторе случайных чисел (ГПСЧ) прошивки COLDCARD, популярного аппаратного кошелька для биткоина, вероятно, стала причиной кражи около $88,6 млн. Злоумышленники смогли восстановить закрытые ключи тысяч кошельков, чьи сид-фразы были сгенерированы с использованием этой уязвимости. Эта новость вызвала широкий резонанс в криптосообществе и заставила многих владельцев задуматься о надежности даже самых защищенных устройств.
Уязвимость в генераторе случайных чисел COLDCARD
COLDCARD позиционируется как максимально безопасное решение для хранения биткоинов, однако в его прошивке была обнаружена ошибка в реализации генератора случайных чисел, которая делала некоторые сид-фразы предсказуемыми. Исследователи из Unciphered, специализирующейся на взломе аппаратных кошельков, выяснили, что проблема связана с недостаточной энтропией при генерации сид-фраз в определённых версиях прошивки. Вместо того чтобы использовать по-настоящему случайные источники, устройство полагалось на ограниченный набор данных, что резко снижало количество возможных комбинаций.
По данным Unciphered, уязвимость затрагивала кошельки, созданные с помощью COLDCARD в период с 2018 по 2023 год. Злоумышленники, зная особенности генератора, могли вычислить закрытые ключи для части кошельков, что и привело к серии краж. Общая сумма украденных средств оценивается в $88,6 млн, что делает эту атаку одной из крупнейших в истории криптовалют. Примечательно, что атака не требовала физического доступа к устройствам — всё выполнялось удалённо через анализ публичных транзакций.
Предыстория и контекст
Проблемы с генераторами случайных чисел в криптовалютных кошельках возникают не впервые. В 2012 году похожий дефект в Android-приложениях для биткоина привёл к потере средств у пользователей. Однако в случае с COLDCARD ситуация осложняется тем, что аппаратные кошельки обычно считаются более защищёнными, чем программные решения. COLDCARD, разработанный компанией Coinkite, использует микроконтроллер и специальное ПО для генерации ключей. Уязвимость, обнаруженная Unciphered, связана с тем, что в некоторых версиях прошивки использовался недостаточно случайный источник энтропии. Это позволяло злоумышленникам, имеющим доступ к публичным данным транзакций, восстановить закрытые ключи.
Интересно, что COLDCARD всегда рекламировался как устройство с открытым исходным кодом, что должно было повышать доверие пользователей. Однако именно открытость кода позволила исследователям обнаружить проблему, но также дала злоумышленникам возможность изучить алгоритмы и найти слабые места. Этот случай подчёркивает двойственную природу открытого ПО: оно способствует прозрачности, но также может быть использовано во вред.
Как это работает?
Для генерации сид-фразы аппаратный кошелёк использует генератор случайных чисел. В уязвимых версиях COLDCARD источник энтропии был ограничен, что снижало количество возможных комбинаций. Злоумышленники могли перебрать все возможные варианты, используя вычислительные мощности, и найти те, которые соответствуют реальным кошелькам с балансом. По сути, вместо миллионов случайных комбинаций злоумышленникам нужно было проверить лишь ограниченное число вариантов, что делало атаку вычислительно осуществимой.
Unciphered опубликовала технические детали уязвимости, но не раскрывает полностью метод, чтобы не облегчать задачу злоумышленникам. Однако известно, что проблема была устранена в более новых версиях прошивки, начиная с определённого обновления. Компания Coinkite выпустила патч, который увеличивает энтропию генератора, используя более надёжные источники случайности, такие как аппаратный шум.
Какие кошельки COLDCARD находятся в зоне риска?
Эксперты отмечают, что уязвимость затрагивает не все кошельки COLDCARD, а только те, где сид-фраза была создана в период с 2018 по 2023 год. Пользователи, которые создали кошельки после исправления, защищены. Тем не менее, тысячи кошельков, созданных ранее, остаются уязвимыми. Если вы создавали кошелёк в этот период, важно немедленно проверить его безопасность. Unciphered рекомендует всем владельцам COLDCARD, создавшим кошельки до 2023 года, немедленно перенести средства на новые кошельки с обновлённой прошивкой. Также стоит проверить историю транзакций на предмет подозрительной активности.
Кого затронет и как
Уязвимость затрагивает в первую очередь держателей биткоинов, использующих COLDCARD. По оценкам, в зоне риска находятся тысячи кошельков. Пользователи из России и СНГ также могут быть затронуты, так как COLDCARD популярен среди криптоэнтузиастов по всему миру. Хотя точное количество пострадавших не раскрывается, масштаб кражи в $88,6 млн говорит о том, что атака затронула значительное число пользователей.
Для разработчиков аппаратных кошельков этот случай — важный урок о необходимости тщательного тестирования генераторов случайных чисел. Для пользователей — напоминание о том, что даже самые надёжные устройства могут иметь скрытые уязвимости. Важно не только доверять производителю, но и самостоятельно следить за обновлениями и рекомендациями по безопасности.
Что будет дальше
Компания Coinkite уже выпустила обновление прошивки, исправляющее уязвимость. Однако пользователям, которые не обновили свои устройства, необходимо сделать это как можно скорее. Также рекомендуется перенести средства на новые кошельки, созданные после исправления. Unciphered продолжает исследования и, возможно, выявит другие уязвимости в аппаратных кошельках. В будущем стоит ожидать ужесточения стандартов безопасности для таких устройств, а также более строгих требований к генерации случайных чисел.
Итог
Уязвимость в COLDCARD — серьёзный звонок для всей индустрии аппаратных кошельков. Даже самые защищённые устройства могут иметь дефекты, которые приводят к потере средств. Пользователям необходимо следить за обновлениями прошивки и своевременно реагировать на предупреждения о безопасности. Этот случай показывает, что безопасность криптовалют зависит не только от технологий, но и от внимательности самих владельцев. Если вы используете COLDCARD, проверьте, когда была создана ваша сид-фраза, и при необходимости примите меры для защиты своих средств.