Пятилетний флаг сборки связан с выводом $116 млн с аппаратного кошелька
Ключевые выводы
- •Неверно настроенный флаг сборки в прошивке COLDCARD примерно пять лет отключал аппаратный генератор случайных чисел, из-за чего создание seed-фраз переходило на предсказуемый псевдослучайный генератор.
- •Злоумышленники похитили примерно 1,816 BTC на сумму $116 млн с более чем 5,200 адресов в ходе четырех отдельных волн эксплуатации.
- •На затронутых устройствах Mk4, Q и Mk5 seed-фразы содержали около 72 бит энтропии вместо ожидаемых 128 бит, что делало перебор private keys осуществимым для хорошо обеспеченного атакующего.
- •Coinkite предупредила, что средства остаются под риском, если seed-фразы не были созданы как минимум с 50 независимыми бросками костей или не защищены надежной фразой BIP-39; исправление осложняется пятью отдельными ветками релизов.
- •Аналитики предположили, что инцидент может ускорить интерес к регулируемым кастодианам и spot bitcoin ETFs, поскольку индекс Fear & Greed упал до 25, что соответствует Extreme Fear.

Флаг сборки, оставшийся неиспользуемым в прошивке аппаратного кошелька COLDCARD в течение пяти лет, связан с хищением примерно $116 млн в биткоинах после того, как неверно настроенный параметр на этапе компиляции незаметно ослабил случайность, используемую для создания пользовательских seed-фраз. То, что начиналось как упущенный параметр конфигурации, привело к одному из крупнейших инцидентов при самостоятельном хранении, зафиксированных в 2026 году.
По данным Block Engineering, в затронутой прошивке COLDCARD макрос MICROPY_HW_ENABLE_RNG был определен как ноль, а библиотека libngu проверяла только наличие макроса, а не его значение. Из-за этого система переходила на детерминированный псевдослучайный генератор Yasmarang из MicroPython, который выдает предсказуемый результат и фактически подрывает энтропию, которую аппаратный кошелек должен обеспечивать.
Как флаг сборки стал центральным элементом атаки
Флаг сборки — это переключатель на этапе компиляции, который определяет, какие функции будут включены при сборке программного обеспечения в распространяемый бинарный файл. В данном случае флаг должен был активировать настоящий аппаратный генератор случайных чисел. Вместо этого он был установлен в ноль, и последующая проверка не выявила несоответствие.
Поскольку флаг определял, как формировались private keys, последствия были серьезными. Seed-фразы служат главным секретом, лежащим в основе каждого адреса, которым управляет кошелек. Предсказуемая случайность на этапе генерации seed означает, что злоумышленник, понимающий уязвимость, может восстановить соответствующие private keys.
TRM Labs сообщила, что злоумышленники вывели 1,816 BTC — примерно на $116 млн — с более чем 5,200 адресов в ходе четырех отдельных волн. Масштаб кампании указывает на то, что уязвимость затронула широкую группу устройств, а не несколько отдельных пользователей.
Block Engineering заявила, что активная эксплуатация уже велась на момент публикации анализа 30 июля 2026 года, и направила читателей к производителю кошелька, Coinkite, за итоговым отчетом.
Что пошло не так между разработкой, проверкой релиза и средствами защиты кошелька
То, что неверно настроенный флаг сохранялся в нескольких циклах релизов, указывает на пробелы в цепочке проверки. Безопасность аппаратных кошельков опирается на строгую подпись кода, воспроизводимые сборки и тщательные проверки целостности — именно на тех этапах, где макрос RNG со значением ноль должен был быть замечен.
Coinkite прямо оценила дефицит энтропии. По ее данным, seed-фразы, созданные на устройствах Mk4, Q и Mk5 под прошивкой до исправления, содержали около 72 бит энтропии вместо ожидаемых 128 бит — сокращение, которое делает перебор и восстановление private keys осуществимыми. В криптографическом смысле 72 бита означают пространство ключей примерно в 2^56 раз меньше, чем предполагаемый стандарт в 128 бит, что переводит задачу из практически невыполнимой в выполнимую для хорошо обеспеченного атакующего.
Coinkite предупредила, что средства, созданные на затронутой прошивке, остаются под риском, если seed не был сформирован как минимум с 50 независимыми, приватными бросками костей или если кошелек не защищен надежной уникальной фразой BIP-39. Исправление также осложнено фрагментацией: оно разбито на пять отдельных веток релизов, а не сведено к одному универсальному патчу.
Разница между проверкой наличия макроса и проверкой его значения — это именно та тонкая логическая ошибка, которую должны выявлять автоматические проверки целостности и code review. Большинство известных атак на аппаратные кошельки опирались на физическое вмешательство, side-channel-методы или компрометацию цепочки поставок; ошибка конфигурации на этапе компиляции, незаметно ослабляющая энтропию в течение многих лет производства, представляет собой иной сценарий отказа, который существующие модели угроз могли недооценить. Пользователи аппаратных кошельков ожидают более высокого уровня защиты, чем от обычных приложений, именно потому, что скомпрометированный seed нельзя так же легко сменить, как пароль.
Почему этот инцидент важен для пользователей аппаратных кошельков и всего сектора
Потеря на девятизначную сумму напрямую бьет по ключевому обещанию холодного хранения. Важен и контекст по времени: после краха FTX в ноябре 2022 года доверие к централизованным биржам снизилось, а потому уязвимости аппаратных кошельков такого масштаба особенно вредят репутации экосистемы. CoinDesk сообщила 31 июля 2026 года, что эксплойт уже привел к хищению почти 600 BTC, что на тот момент составляло примерно $38 млн. Аналитики предположили, что инцидент может подстегнуть интерес к регулируемым кастодианам и spot bitcoin ETFs.
Рыночные настроения отражали шок. Индекс Fear & Greed находился на уровне 25, что соответствует Extreme Fear, в то время как bitcoin торговался около $64,766.
Для затронутых пользователей важны практические вопросы: какая ветка прошивки относится к их устройству, соответствовала ли их seed-фраза исключению по броскам костей или passphrase, и как быстро можно перевести средства в более безопасную среду. По состоянию на 6 августа 2026 года Coinkite не публиковала собственный совокупный размер потерь или список адресов злоумышленников, поэтому рабочей оценкой остаются данные TRM Labs.
Более широкий вывод состоит в том, что устаревшие настройки сборки не являются безобидными. Одно значение на этапе компиляции, оставшееся без проверки на протяжении нескольких циклов релизов, превратилось в системный риск для продуктовой линейки, продаваемой на основе ее безопасности, — напоминание о том, что операционная дисциплина на этапе сборки неотделима от доверия к хранению средств, так же как требования комплаенса сегодня формируют правила регулируемой криптоторговли для розничных инвесторов в России.
Disclaimer: Эта статья носит исключительно информационный характер и не является финансовой или инвестиционной рекомендацией. Рынки криптовалют и цифровых активов связаны со значительными рисками. Всегда проводите собственное исследование перед принятием решений.