В 2024 году исследователи безопасности продемонстрировали Dark Skippy — вредоносную атаку с использованием подписи, способную утечь семя Bitcoin-кошелька всего через два подписи транзакций. На момент раскрытия информации исследователи не знали о том, что Dark Skippy используется в реальной среде. Вместо этого исследование показало, насколько разрушительным может быть компрометированное прошивка для подписи. Этот ретроспективный анализ рассматривает, как работал Dark Skippy, почему это важно и какие важные уроки по безопасности пользователи и производители кошельков могут извлечь из раскрытия Dark Skippy.
Что такое Dark Skippy?
Dark Skippy — это вредоносная атака с использованием подписи, раскрытая в 2024 году. Это не уязвимость в конкретной модели аппаратного кошелька. Вместо этого предполагается, что устройство для подписи уже работает с вредоносной прошивкой — например, после вмешательства, компрометации цепочки поставок или установки мошеннического обновления прошивки.
Опасность заключается в том, что вредоносная прошивка может использовать процесс подписи для тайной утечки семенной фразы пользователя. Вместо генерации действительно случайных значений зараженное устройство внедряет фрагменты семенной фразы в подписи транзакций. После их распространения в блокчейне как действительных транзакций, эти подписи могут быть собраны и проанализированы для восстановления всей семенной фразы.
В демонстрации исследователей было достаточно двух подписей, чтобы восстановить энтропию, лежащую в основе 12-словной фразы восстановления, с помощью алгоритма кенгуру Полларда.
Как работает Dark Skippy
Dark Skippy — это метод, при котором вредоносное устройство для подписи Bitcoin может скрытно утечь семя кошелька пользователя. Обнародованный в 2024 году, он не является уязвимостью в каком-либо конкретном аппаратном кошельке или у производителя. Атака предполагает, что устройство уже работает с вредоносной прошивкой — будь то через вмешательство, компрометацию цепочки поставок или установку мошеннического обновления прошивки.
Вредоносная прошивка манипулирует секретными нонces, используемыми при подписании транзакций, кодируя фрагменты энтропии семени кошелька в иначе действительные подписи. Злоумышленник может определить эти подписи, когда они передаются по сети Bitcoin или записываются в блокчейн, а затем извлечь скрытую информацию.

В их демонстрации исследователи восстановили энтропию, лежащую в основе полной 12-словной фразы восстановления, всего из двух подписей с помощью алгоритма кенгуру Полларда. Поскольку транзакция может содержать несколько подписанных входов, обе подписи могут быть созданы в одной транзакции. Одно использование скомпрометированного устройства для подписи может быть достаточно для раскрытия всего кошелька.
Насколько опасен Dark Skippy?
Dark Skippy особенно опасен, потому что хранение аппаратного кошелька в оффлайне не предотвращает атаку после того, как устройство было скомпрометировано.
Оффлайн-кошелек не имеет прямого подключения к интернету. Однако его подписанные транзакции все равно должны передаваться — например, через QR-код, карту памяти или USB — на онлайн-устройство для вещания. Вредоносная прошивка может скрывать фрагменты семени кошелька внутри этих подписей, позволяя скрытой информации покинуть устройство без отдельного интернет-соединения.
Для пользователя подписи выглядят нормально и остаются криптографически действительными. Злоумышленник может определить пострадавшие подписи после их попадания в сеть Bitcoin и использовать их для восстановления скрытой информации. Это делает обнаружение атаки чрезвычайно сложным для обычного пользователя.
В своей демонстрации исследователи восстановили полную 12-словную фразу восстановления всего из двух подписей, которые потенциально могут быть включены в одну транзакцию. Эта эффективность сделала Dark Skippy важным развитием в области вредоносных атак с использованием подписи.
Снизьте риск получения поддельного устройства, приобретая аппаратные кошельки напрямую у производителя или у авторизованного реселлера
Однако Dark Skippy не может удаленно заразить иначе подлинный и безопасный аппаратный кошелек. Злоумышленник должен сначала скомпрометировать устройство — например, через физическое вмешательство, вредоносную прошивку или компрометированную цепочку поставок. Подлинное устройство с честной прошивкой не выполнит такую атаку.
xPub: информация, используемая для генерации адресов получения. Nonce: одноразовое значение, используемое при подписании транзакции
Решения от производителей для предотвращения Dark Skippy
Производители аппаратных кошельков могут снизить риск, усложнив возможность вмешательства в устройство — и ограничив то, что скомпрометированные устройства могут скрывать внутри транзакций.
- Блокировать неофициальную прошивку: Устройства должны запускать только правильно проверенное программное обеспечение и иметь заблокированные порты для доступа на заводе перед продажей.
- Делать прошивку проверяемой: Подписанная и открыто проверяемая прошивка помогает независимым экспертам подтвердить, что программное обеспечение кошелька не было тайно изменено.
- Защищать устройства перед доставкой: Безопасное распространение, проверки подлинности и упаковка с защитой от вмешательства усложняют продажу клиентам модифицированных устройств.
- Добавить защиту от exfil: Аппаратный кошелек и сопутствующее приложение могут работать вместе при подписании транзакций, предотвращая тайное манипулирование подписями для утечки фразы восстановления.

Некоторые аппаратные кошельки добавляют защиту от exfil. Например, Blockstream Jade и Jade Plus могут использовать совместимое программное обеспечение кошелька для предотвращения скрытия секретов внутри определенных подписей транзакций. Однако защита зависит от метода подключения, программного обеспечения кошелька и типа используемой транзакции Bitcoin..
Как снизить риск Dark Skippy?
- Покупайте у надежных источников: Покупайте напрямую у производителя или у авторизованного реселлера. Избегайте подержанных или предварительно настроенных устройств, а также не используйте их, если упаковка или устройство показывают признаки вмешательства.
- Настраивайте кошелек самостоятельно: Новое устройство должно попросить вас создать новую фразу восстановления. Никогда не используйте восстановительные слова, поставляемые в коробке или предоставляемые продавцом.
- Используйте доверенное программное обеспечение и официальную прошивку: Загружайте программное обеспечение кошелька только из его официального источника и обновляйте устройство, используя только прошивку, одобренную производителем. Избегайте неофициальной или экспериментальной прошивки на основном кошельке.
- Контролируйте ваше устройство: Не давайте в долг или не делитесь своим аппаратным кошельком. Если устройство было вне вашего контроля и вы подозреваете вмешательство, не подписывайте другую транзакцию, пока не разработаете безопасный план миграции с использованием доверенного заменяющего устройства.
- Для больших сумм, рассмотрите мультиподписной кошелек: Использование отдельных устройств от разных производителей означает, что один скомпрометированный подписант сам по себе не сможет украсть средства. Мультиподписные кошельки усложняют задачу, поэтому обратитесь за помощью, если не знакомы с этим.

Заключение
Dark Skippy показывает, что даже оффлайн-аппаратный кошелек может утечь секреты, если устройство или его прошивка уже были скомпрометированы. Однако оно не может удаленно заразить иначе подлинный и безопасный кошелек.
Для большинства пользователей практический ответ прост: покупайте у надежного источника, настраивайте кошелек самостоятельно, используйте официальное программное обеспечение и прошивку, а также контролируйте устройство. Для больших сумм правильно настроенный мультиподписной мультикошелек может предотвратить кражу средств одним скомпрометированным подписантом.