Ошибка в клиенте Ethereum привела к экстренным патчам для Reth, Optimism, Base и Tempo
Недостаток в клиенте Reth от Paradigm, приводивший к неверному расчету корней состояния, вызвал координированные экстренные обновления на основных сетях Ethereum второго уровня 5 ноября.
Перевод с английского. Читать оригинал
Главное
- Устаревший алгоритм расчета корня состояния в клиенте Reth мог приводить к формированию неверного состояния блокчейна при определенных паттернах транзакций.
- Уязвимость была оперативно устранена в Reth (v2.10.0), Optimism (OP Reth v2.8.1), Base (v1.5.3) и Tempo; разработчики отнесли эти исправления к высокому приоритету.
- Средства пользователей не были скомпрометированы; Base и другие сети OP-Stack подтвердили, что вывод средств оставался безопасным, а мосты не пострадали.
5 ноября обнаруженный программный сбой в клиенте выполнения Reth от Paradigm вызвал экстренную реакцию на нескольких сетях Ethereum второго уровня. Баг, связанный с устаревшим алгоритмом расчета корня состояния в Reth, мог возвращать неверный криптографический отпечаток блокчейна при обработке специально сформированных транзакций, что потенциально приводило к расхождению мнений узлов о валидности блоков. Георгиос Константинопулос, CTO Paradigm, сообщил, что проблема была выявлена командой Tempo с помощью автоматизированного фаззинга и оперативно устранена в Reth, Optimism, Base и Tempo.
ETH / USD
Техническая природа уязвимости
Корни состояния обобщают все состояние Ethereum, включая балансы счетов и хранилище контрактов. Согласно данным CryptoSlate, ошибочный код в устаревшем модуле Reth мог неверно рассчитывать этот корень в граничных конфигурациях хранилища, особенно на оборудовании начального уровня и в сетях OP-Stack, использующих тот же клиент. Хотя ошибка не затрагивает механизмы вывода средств, использующие отдельные пути верификации, она могла нарушить производство блоков и синхронизацию сети, если бы не была устранена.
Координированное внедрение патчей
Разработчики Reth выпустили версию 2.10.0, Optimism опубликовал OP Reth v2.8.1, а Base развернул версию 1.5.3; каждое из этих обновлений было отмечено как имеющее высокий приоритет для операторов узлов. Base подтвердил, что его система доказательств использует независимую реализацию расчета корня состояния, что позволяет верифицировать правильный корень даже при ошибке в расчете Reth. Сеть также пересчитала свой корень состояния для обеспечения согласованности, заявив, что средства пользователей не пострадали, а валидаторы не остановятся после установки патча.
Реакция экосистемы в целом
Инцидент спровоцировал превентивные меры за пределами непосредственно затронутых клиентов. Frax Finance сообщила, что LayerZero временно приостановила работу некоторых межсетевых маршрутов для оценки рисков, хотя и подтвердила безопасность активов и контрактов. Ни один мост не оказался уязвим к багу Reth, что подчеркивает, как общая инфраструктура может вызывать каскадные эффекты в сервисах, зависящих от общего программного обеспечения выполнения.
Что наблюдать дальше
Сторонам следует отслеживать скорость внедрения исправленных версий клиентов независимыми операторами узлов, поскольку наличие не обновленных узлов может снова привести к несогласованности. Наблюдатели также будут следить за возможными новыми раскрытиями со стороны других проектов, использующих Reth или аналогичные клиенты выполнения, а также за постмортем-анализами, которые могут повлиять на будущие практики тестирования, такие как фаззинг для граничных входных данных транзакций.

Обсуждение 0