Заголовок: Ledger опровергает заявления о «взломе» после того, как OneKey воспроизвела баг с подменой транзакций в старом приложении для Ethereum Компания Ledger отреагировала на заявление команды Anzen безопасности OneKey о том, что она «взломала Ledger», воспроизведя уязвимость подмены транзакций в устаревшем приложении Ethereum. Ledger утверждает, что уязвимость была реальной, но ее уже исправили до публичной демонстрации OneKey. Что произошло — 27 августа основатель OneKey Ииши Ван (Yishi Wang) написал в Twitter, что его команда успешно воспроизвела атаку с подменой транзакций против приложения Ledger для Ethereum версии 1.22.1 в лабораторной среде. Он описал проблему как состояние гонки между отображением транзакции и лежащим в основе буфером транзакций. — Ledger признала базовую уязвимость, но подчеркнула, что компания устранила проблему до того, как OneKey опубликовала демонстрацию. Технический директор Ledger Чарльз Гийомэ (Charles Guillemet) заявил: «Воспроизведение уже исправленного бага — это не “взлом Ledger”», охарактеризовав работу OneKey как лабораторное упражнение против более старого приложения. Как работал баг (простыми словами) — Приложения Ledger получают инструкции, называемые APDU (команды Application Protocol Data Unit), от кошельков, веб-страниц или других хост-интерфейсов. — В затронутых сборках приложений вторую APDU могли принять, пока пользователь еще просматривал транзакцию на экране устройства. Эта вторая команда могла перезаписать параметры подписи в общей памяти, не меняя того, что устройство показывает пользователю. — В результате: пользователь мог просмотреть и одобрить транзакцию A на устройстве, но на самом деле безопасный ключ подписывал транзакцию B — при этом устройство не предупреждало, что подписанные данные изменились. — Ledger классифицировала это как состояние гонки типа time-of-check to time-of-use (TOCTOU), которое обходит защиту «доверенного отображения», на которую опираются аппаратные кошельки, чтобы пользователи могли проверять суммы, адреса и действия по контрактам. Что было под риском и чего не было — Уязвимость не утекала seed-фразы и не извлекала закрытые ключи из защищенного элемента. Вместо этого она могла привести к тому, что защищенный ключ подпишет входные данные, отличающиеся от тех, которые видел пользователь. — Для атаки требовалось контролировать канал связи между приложением Ledger и его хостом — например, вредоносное ПО на хосте, скомпрометированное приложение кошелька или враждебная веб-страница с доступом WebHID/WebUSB. Выполнить атаку удаленно на не подключенном устройстве было нельзя. — Успешная эксплуатация также требовала, чтобы пользователь одобрил транзакцию в тот момент, когда вредоносное ПО манипулировало контекстом ожидаемой подписи. Где находился баг и как его исправили — Ledger утверждает, что дефект был в обработке ввода/вывода в ее Secure SDK, а не в операционной системе устройства или прошивке. Приложения, собранные с релизами затронутого SDK, полагались на собственные проверки состояния, чтобы отклонять перемешанные команды. — Поэтому масштаб воздействия был зависящим от приложения: приложение оставалось в безопасности, если каждый асинхронный вход/точка для команды корректно проверял состояние даже при сборке с затронутым SDK. — Хронология исправлений: — 13 августа: Ethereum app 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, чтобы закрыть окно риска. Подробнее об AI-новостях по адресу: undefined/news
