Ledger оспаривает утверждение OneKey о «взломе» из-за воспроизведенной ошибки в приложении ethereum

iconChainGPT
Поделиться
AI summary iconСводка
Ledger опроверг утверждение OneKey о «взломе» его аппаратного кошелька после того, как компания воспроизвела ошибку в старом приложении ethereum. Уязвимость, обнаруженная в версии 1.22.1 приложения ethereum, позволяла перезаписывать данные транзакции без ведома пользователя. Ledger устранила проблему в версии 1.22.2 и последующих обновлениях. Компания заявила, что для эксплуатации уязвимости требовались скомпрометированный хост и действия пользователя, и никакие атаки не подтверждены. Инцидент подчеркивает продолжающиеся новости об экосистеме ethereum, связанные с безопасностью кошельков.

Ledger опровергает утверждения о «взломе» после того, как OneKey воспроизвёл уязвимость подмены транзакций в старом приложении Ethereum Ledger опроверг утверждения команды безопасности Anzen от OneKey, заявившей, что ей удалось «взломать Ledger», воспроизведя уязвимость подмены транзакций в устаревшем приложении Ethereum. Ledger подтвердил, что уязвимость была реальной, но уже устранена до публичного демонстрационного теста от OneKey. Что произошло: - 27 августа основатель OneKey Иши Ван в твите сообщил, что его команда успешно воспроизвела атаку подмены транзакций на приложении Ethereum Ledger версии 1.22.1 в лабораторных условиях. Он описал проблему как гонку между отображением транзакции и внутренним буфером транзакций. - Ledger признал наличие уязвимости, но подчеркнул, что проблема была устранена до публикации демонстрации от OneKey. Технический директор Ledger Чарльз Гильеме заявил: «Воспроизведение уже исправленной ошибки — это не «взлом Ledger»», назвав работу OneKey лабораторным экспериментом со старым приложением. Как работала уязвимость (простыми словами): - Приложения Ledger получают инструкции в виде APDU (команды Application Protocol Data Unit) от программного обеспечения кошелька, веб-страниц или других интерфейсов. - В затронутых версиях приложения второй APDU мог быть принят, пока пользователь ещё просматривал транзакцию на экране устройства. Этот второй запрос мог перезаписать параметры подписи в разделяемой памяти, не изменяя того, что отображалось на экране. - Результат: пользователь мог просмотреть и одобрить транзакцию A на устройстве, в то время как защищённый ключ фактически подписывал транзакцию B — при этом устройство не предупреждало пользователя о том, что данные для подписи были изменены. - Ledger классифицировал эту проблему как гонку между проверкой и использованием (TOCTOU), которая обходила защиту доверенного отображения, на которую полагаются аппаратные кошельки для проверки сумм, адресов и действий контрактов. Что было под угрозой, а что — нет: - Уязвимость не приводила к утечке seed-фраз или извлечению закрытых ключей из безопасного элемента. Вместо этого она могла заставить защищённый ключ подписать данные, отличные от тех, что были показаны пользователю. - Для атаки злоумышленнику требовался контроль над каналом связи между приложением Ledger и хостом — например, вредоносное ПО на хосте, скомпрометированный кошелёк или враждебная веб-страница с доступом WebHID/WebUSB. Атака не могла быть осуществлена удалённо против отключённого устройства. - Успешная эксплуатация также требовала, чтобы пользователь одобрил транзакцию в момент, когда вредоносное ПО манипулировало ожидающим контекстом подписи. Где находилась уязвимость и как она была исправлена: - Ledger утверждает, что дефект находился в обработке ввода/вывода в его Secure SDK, а не в операционной системе или прошивке устройства. Приложения, построенные на затронутых версиях SDK, полагались на собственные проверки состояния для отклонения перекрывающихся команд. - Из-за этого уязвимость была специфична для приложения: приложение оставалось безопасным, если все точки входа асинхронных команд корректно проверяли состояние, даже при использовании затронутого SDK. - Хронология исправлений: - 13 августа: приложение Ethereum 1.22.2 добавило проверки состояния на уровне приложения, блокирующие описанную траекторию подмены транзакций. - 21 августа: Ledger выпустил Secure SDK 26.6.1, блокирующий перекрывающиеся команды до того, как они достигнут кода приложения. Приложения были затем пересобраны с исправленным SDK. - Ledger теперь рекомендует использовать Ethereum app 1.22.3 или новее, так как он включает более широкую защиту SDK и исправляет дополнительную проблему отображения транзакций. OneKey был прав: 1.22.3 защищён, но первая защита на уровне приложения появилась в 1.22.2. Практические рекомендации для пользователей и разработчиков: - Ledger не обнаружил доказательств того, что атакующие использовали эту уязвимость (обозначена как LSB-023), и никакие потери криптовалюты не были публично связаны с этой конкретной уязвимостью. - Пользователям следует открыть Ledger Live, установить последние версии приложений устройства и проверить версию приложения Ethereum на своём аппаратном кошельке. Установка обновления прошивки сама по себе не заменяет приложения, собранные с затронутым SDK — приложения также необходимо обновить. - Разработчикам сторонних приложений следует пересмотреть обработку состояния и пересобрать приложения с использованием Secure SDK 26.6.1 или новее. Ledger сообщает, что уязвимость была введена в августе 2025 года и затрагивала версии SDK до 26.6.0 включительно. Более широкий контекст: - Это раскрытие следует за серией исправлений для аппаратных кошельков; например, BitBox недавно исправила две уязвимости, связанные с установкой прошивки и обработкой bitcoin-адресов, также без доказательств фактической эксплуатации. Итог: Техническая проблема, продемонстрированная OneKey, была реальной, но ограничена по масштабу: она требовала скомпрометированного хоста и одобрения пользователем, а Ledger утверждает, что исправил проблему до публикации демонстрации. Пользователям следует обновлять приложения через Ledger Live, а разработчикам — пересобирать их с исправленным SDK, чтобы закрыть окно уязвимости.

Отказ от ответственности: Информация на этой странице может быть получена от третьих лиц и не обязательно отражает взгляды или мнения KuCoin. Данный контент предоставляется исключительно в общих информационных целях, без каких-либо заверений или гарантий, а также не может быть истолкован как финансовый или инвестиционный совет. KuCoin не несет ответственности за ошибки или упущения, а также за любые результаты, полученные в результате использования этой информации. Инвестиции в цифровые активы могут быть рискованными. Пожалуйста, тщательно оценивайте риски, связанные с продуктом, и свою устойчивость к риску, исходя из собственных финансовых обстоятельств. Для получения более подробной информации, пожалуйста, ознакомьтесь с нашими Условиями использования и Уведомлением о риске.