Инженерная команда Block выявила субъекта, стоящего за эксплуатацией аппаратного кошелька COLDCARD, и установила, что злоумышленник использовал провайдера блокчейн-услуг во время кражи.
Взлом, произошедший 30 июля, привел к хищению примерно 594 BTC, что составляет около 38 млн долларов США, из примерно 500 кошельков в течение 25 минут с 01:31 до 01:56 UTC.
Пятилетний баг в прошивке сделал всё это возможным
Исходная причина восходит к обновлению прошивки от марта 2021 года, а именно версии 4.0.0, которая отключила аппаратный генератор случайных чисел на затронутых устройствах COLDCARD. Аппаратный RNG был заменен предсказуемым программным запасным вариантом, использующим несекретные начальные значения, что означало, что злоумышленник, понимающий эту уязвимость, мог воспроизвести семена кошельков, полученные из метаданных устройства. Затронутыми устройствами в основном были модели Mk3 и некоторые устройства Mk2, где семена были сгенерированы под скомпрометированной прошивкой.
По всей видимости, злоумышленник владел этой информацией в течение нескольких лет, нацеливаясь на неактивные аккаунты. 25-минутный окно выполнения указывает на тщательную подготовку: злоумышленник заранее вычислил уязвимые семена и написал скрипт для извлечения средств.
Block и Coinkite координировали срочное раскрытие информации
Инженеры Block, работавшие совместно с Coinkite (компанией, производящей COLDCARD), отследили активность злоумышленника в блокчейне до провайдера блокчейн-услуг. Это сотрудничество позволило обеим сторонам оперативно раскрыть уязвимость до публикации полных технических деталей.
Coinkite выпустила немедленное уведомление для пользователей устройств Mk3 и более ранних моделей, которые сгенерировали семена под скомпрометированными версиями прошивки. Предварительная оценка компании показала, что более новые модели, включая Mk4, Q и Mk5, не затронуты уязвимостью генератора случайных чисел. Рекомендуемое действие — сгенерировать совершенно новые семена на незатронутом оборудовании и немедленно перевести все средства.
Что это означает для пользователей аппаратных кошельков и более широкого рынка
Во время инцидента биткоин торговался выше $64K, и влияние на рынок было минимальным. Обновление прошивки, которое вызвало уязвимость, было версии v4.0.0, применённой в марте 2021 года. Пользователи, применившие это обновление, думали, что улучшают свою безопасность, но на самом деле генерировали семена с использованием скомпрометированного ГСЧ.

