НовостиКриптовалютыЭксплойт кошельков Coldcard: как было похищено $70 миллионов в биткоинах без доступа к устройствам

Эксплойт кошельков Coldcard: как было похищено $70 миллионов в биткоинах без доступа к устройствам

Автор: Coindesk·

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

  • Более 1,000 биткоинов на сумму около $70 миллионов были выведены из 1,196 кошельков Coldcard за 41 минуту 30 июля, почти вдвое больше первоначально сообщённой суммы.
  • Эксплойт был вызван ошибкой прошивки, из-за которой аппаратный генератор случайных чисел Coldcard был обойдён, а энтропия seed-фразы свелась к значениям, производимым из серийного номера чипа и регистров часов, которые атакующий мог перечислить.
  • Надёжного теста для владельцев кошельков, позволяющего определить, была ли seed-фраза сгенерирована на уязвимой прошивке, не существует; поэтому любой, кто использовал затронутую прошивку, должен исходить из компрометации и заново создать ключи.
  • Coinkite признала затронутыми только устройства Mk3, но расследование Block относит к уязвимым также модели Mk2, Mk4, Q и Mk5.
  • Следователи установили личность атакующего по внутренним логам платного аккаунта у поставщика blockchain-данных, использованного для запросов исходных адресов во время выведения средств, и передали информацию властям.
Эксплойт кошельков Coldcard: как было похищено $70 миллионов в биткоинах без доступа к устройствам

Более 1,000 биткоинов стоимостью примерно $70 миллионов были выведены из 1,196 аппаратных кошельков Coldcard за 41-минутное окно 30 июля, согласно анализу Galaxy Research. Эта сумма почти вдвое превышает первоначально сообщённый объём потерь.

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

Coldcard, выпускаемый Coinkite из Торонто, — это аппаратный кошелёк только для Bitcoin, популярный среди сторонников самостоятельного хранения за счёт air-gapped-дизайна и прошивки с открытым исходным кодом. Его аудитория в значительной степени состоит из пользователей, для которых приоритетом является контроль над своими приватными ключами, поэтому сбой генерации seed-фразы особенно значим для сообщества, выбравшего этот продукт именно из-за его модели безопасности.

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

Galaxy Research восстановила полную картину инцидента

Galaxy Research в пятницу опубликовала полную реконструкцию события, установив, что 1,082.65 BTC были выведены между 01:10 и 01:51 UTC через шесть блоков. Три промежуточных блока не содержали связанных транзакций, что указывает на то, что переводы распространялись пакетами, а не непрерывно.

Выведенные средства сейчас находятся на четырёх адресах и не перемещались. Ранние сообщения учитывали только один из этих адресов, что и объясняет, почему первоначально названная сумма убытков впоследствии выросла.

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

Почему эксплойт Coldcard выделяется среди большинства атак

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

При создании кошелька устройство должно выбрать настолько большое и непредсказуемое число, что угадать его невозможно.

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

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

Следствием стало то, что диапазон ключей, которые устройство могло когда-либо создать, сузился от немыслимо огромного до поддающегося подсчёту. Сбои генератора случайных чисел — это повторяющийся класс уязвимостей в криптовалютах: ошибка Android Secure Random в 2013 году скомпрометировала ключи биткоин-кошельков на затронутых устройствах, и с тех пор аналогичные слабости периодически всплывают в экосистеме.

Команды безопасности установили, что генерация ключей могла быть полностью перечислена на более старых моделях Mk2 и Mk3. Для моделей Mk4, Q и Mk5 они оценили диапазон примерно в четыре миллиарда возможных вариантов. Для человека четыре миллиарда — большое число, но для компьютера оно тривиально мало.

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

Анализ Galaxy подтвердил именно такой процесс. Из выведенных кошельков 1,183 использовали современный формат native segwit, семь — более старый стандарт, и шесть — ещё более старый. Тот факт, что средства были затронуты сразу в трёх форматах адресов, исключает выбор отдельных жертв — это указывает на систематическое перечисление, при котором каждая кандидатная seed-фраза проверялась по всем возможным путям вывода.

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

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

Затронутые модели и реакция производителя

Coinkite, производитель Coldcard, предупредила владельцев Mk3 и заявила, что её более новые устройства не затронуты. Однако расследование Block относит к зоне риска также модели Mk2, Mk4, Q и Mk5. Это расхождение означает, что полный масштаб затронутых устройств по-прежнему не определён, а разница между оценками производителя и исследователей сама по себе является фактором риска для пользователей, решающих, как действовать.

Ошибка атакующего

Тем не менее атакующий оставил один след. Clay Garrett из Block написал в X, что оператор использовал платный аккаунт у известного поставщика blockchain-данных для запроса исходных адресов во время выведений. По словам Garrett, внутренние логи провайдера с необычайной точностью совпали с предполагаемым сценарием — вплоть до числа, времени и последовательности запросов.

1/ During our investigation of the Coldcard drain yesterday, we identified an unusual pattern in the sweeps. That pattern led us to a hypothesis that has since been confirmed: the operator used a paid account at a well-known blockchain-services provider to query the source… — Clay Garrett (@clay_garrett) July 31, 2026

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

Более широкие последствия для холодного хранения

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

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

Безопасно хранить ключ сейчас — более простая половина задачи. Гораздо сложнее убедиться, что он был правильно сгенерирован с самого начала.

Источник: CoinDesk