Уязвимость в аппаратных кошельках Coldcard привела к краже примерно 1 367 BTC, что составляет около 89 миллионов долларов США, более чем с 4 500 адресов с момента начала скоординированных атак 30 июля. Ошибка, тихо существовавшая в прошивке с марта 2021 года, настолько ослабила случайность, используемую для генерации семян кошельков, что злоумышленникам в конечном итоге удалось их взломать.
Генеральный директор Foundation Devices Зак Герберт указал на открытый характер кода кошелька bitcoin как причину, по которой сообщество смогло обнаружить проблему и оперативно на нее отреагировать. Его аргумент: проприетарная прошивка сделала бы обнаружение проблемы сложнее, а ее устранение — еще сложнее.
Что пошло не так в прошивке Coldcard
При настройке аппаратного кошелька устройство генерирует «семя», которое является основным ключом ко всем вашим bitcoin. Это семя должно быть случайным. Отраслевой стандарт — 128 бит энтропии, что на практике означает, что количество возможных семян настолько астрономически велико, что перебор всех вариантов для нахождения правильного займет больше времени, чем возраст вселенной.
Фирмвер Coldcard версии 4.0.1, выпущенный в марте 2021 года канадским производителем Coinkite, ввел ошибку во время масштабного переписывания кода. Вместо генерации семян с 128 битами энтропии затронутые устройства, в частности модели Mk2 и Mk3, создавали семена с примерно 72 битами.
Разница между 128 и 72 битами энтропии кажется незначительной, если вы не криптограф. Но это не так. Каждый отсутствующий бит уменьшает количество возможностей вдвое. Потеря 56 бит означает, что пространство поиска сократилось примерно в 72 квадриллиона раз. Именно такая математика превращает теоретическую уязвимость в практическую.
Атака и ответ
Скоординированные атаки, эксплуатирующие уязвимость, начались 30 июля 2026 года. В течение нескольких дней из кошельков, чьи семена были сгенерированы на затронутых версиях прошивки, было перечислено примерно 1 367 BTC. На тот момент эта сумма оценивалась примерно в 89 миллионов долларов.
Скорость вывода средств через более чем 4 500 отдельных адресов указывает на то, что злоумышленники готовились в течение длительного времени, вероятно, заранее вычисляя уязвимые семена перед быстрой серией краж.
Coinkite выпустила исправленную прошивку 31 июля, всего через один день после того, как атаки стали очевидны. Исправления были представлены в виде версии 5.6.0 для устройств Mk4 и Mk5, версии 1.5.0Q для модели Q и версии 4.2.0 для более старых Mk3. Однако обновление прошивки само по себе не решает проблему. Пользователи, которые сгенерировали семена на уязвимой прошивке, все еще должны перейти на совершенно новые семена, поскольку старые остаются скомпрометированными независимо от того, какое программное обеспечение сейчас установлено на устройстве.
Семена, сгенерированные с использованием как минимум 50 независимых честных бросков костей, не были затронуты. Также не были затронуты семена, созданные на версиях прошивки ранее 4.0.1. Уязвимость была специфична для кода генерации энтропии, введенного при переписывании в 2021 году.
Аргумент с открытым исходным кодом
Зак Герберт, руководитель Foundation Devices — производителя аппаратных кошельков, являющегося конкурентом — прокомментировал инцидент, подчеркнув, что открытый исходный код является ключевым для быстрой реакции сообщества. Его позиция проста: когда прошивка кошелька доступна для публичного аудита, уязвимости обнаруживаются быстрее, исправления тщательно проверяются до развертывания, а вся экосистема выигрывает от коллективного контроля.
Открытый исходный код помогает сообществу bitcoin быстро реагировать и может предотвратить будущие инциденты с безопасностью.
Foundation Devices производит кошелек Passport, прямого конкурента Coldcard. Эта уязвимость находилась в производственной прошивке более пяти лет, прежде чем была эксплуатирована. Быстрая реакция с исправлением — один день от атаки до устранения — подтверждает идею, что прозрачные кодовые базы ускоряют реагирование на инциденты.
Что это означает для пользователей аппаратных кошельков
Для пользователей, которые до сих пор используют устройства Coldcard с семенами, сгенерированными после марта 2021 года, действия ясны: немедленно обновите прошивку и, что важнее всего, сгенерируйте совершенно новые семена. Простое применение патча прошивки без перехода на новый семя оставляет уязвимость нетронутой. Пользователи, использовавшие как минимум 50 независимых честных бросков костей для генерации своего семени, никогда не зависели от внутреннего генератора случайных чисел устройства и не затронуты.

