Прошивка Coldcard 5.6.1 заставляет вносить пользовательскую энтропию в каждый новый сид после эксплойта на $100 млн

Coinkite, компания за Coldcard, выпустила обновление прошивки, которое не генерирует новый сид кошелька, пока владелец не предоставит случайность вручную.
Это означает как минимум 50 бросков костей, 128 подбрасываний монеты или 65 нажатий клавиш по времени — через три недели после того, как дефект в её генераторе случайных чисел открыл средства клиентов атакующим.
Две линейки устройств Coldcard идут на отдельных ветках прошивки, поэтому релиз несёт два номера: 5.6.1 для Mk4 и Mk5 и 1.5.1Q для Q — более крупной модели с клавиатурой и сканированием QR.
Проверка при загрузке нацелена на дефект
Coinkite заявила, что ввод добавляется поверх случайности устройства от STM32 TRNG и обоих secure element.
Coldcard был построен, чтобы черпать энтропию сида только из своего аппаратного генератора, но Coinkite проследила сбой до ошибки сборки и линковки, из-за которой настройка, призванная отключить программный путь, оказалась без эффекта, отправляя вызов случайного числа к PRNG Yasmarang от MicroPython, который вошёл в путь сида в марте 2021 года.
Затронутые сиды несут около 72 бит энтропии вместо ожидаемых 128 бит — после того как 594,5 BTC были выведены с 500 адресов 30 июля.
Прошивка 5.6.1 теперь проверяет при загрузке, что вызов случайного числа достигает предполагаемого аппаратного пути, останавливая устройство при сбое. Coinkite заменила Yasmarang на SHA-256 Hash_DRBG, указанный в NIST SP 800-90A, и сидирует его при запуске полным 256-битным дайджестом от обоих secure element, который прежняя прошивка урезала до 32 бит.
«Мэшинг клавиш» следует дизайну кнопочного RNG Питера Тодда, хэшируя тайминг нажатий клавиатуры на разрешении тактов CPU. Первое нажатие задаёт опорную точку, а каждому из 64 последующих промежутков зачисляется по два бита энтропии.
Старые сиды всё ещё нужно мигрировать
«Установка этого обновления не делает существующий уязвимый сид безопасным», — написала Coinkite, направляя всех, чей сид мог быть сгенерирован на затронутой прошивке между 2021 и июлем 2026 года, создать замену и переместить свой Bitcoin (BTC). Mk2 и Mk3 выходят за рамки этого релиза, и их минимальная исправленная версия остаётся 4.2.0.
Скомпрометированный USB-хост мог переписать подготовленную транзакцию после того, как владелец её одобрил, так что подпись покрывала другие выходы. Устройство теперь перепроверяет эти байты перед подписанием и останавливается с предупреждением «Транзакция изменена».
Новая страница Security Status от Coinkite перечисляет четыре независимых обзора, среди них тест на реальном устройстве, наблюдавший восемь чтений аппаратного RNG для запроса 32-байтового сида, и пересборку, совпадающую с каждым байтом подписанной прошивки.
Компания отметила, что проверки «не являются полным аудитом каждого бинарника прошивки». Как сообщал CryptoPotato, подтверждённые потери превысили $100 млн: Galaxy Research насчитала 1596 BTC с примерно 7300 адресов, а предполагаемая четвёртая волна вывела почти 449 BTC 3 августа.
Источник: CryptoPotato
Новости в мире криптовалют
Случайная цитата о деньгах
"Считается, что любовь к деньгам – корень всех бед. То же можно сказать и про отсутствие денег."
















* для поиска по базе прокси просто вводите название страны, например: Россия, США, Таиланд