Jump Crypto, инвестор и разработчик Web3, обнаружил уязвимость в State Guardian Network (SGN) компании Celer, которая позволяет злоумышленникам-валидаторам скомпрометировать сеть и ее приложения, включая cBridge компании Celer.
Согласно отчету Jump Crypto, из-за ошибки в коде SGN EndBlocker валидаторы могли голосовать несколько раз за одно и то же обновление.
Позволяя валидаторам голосовать многократно, злоумышленники могут повысить свои возможности одобрять вредоносные обновления. В отчете пояснялось:
«В коде [EndBlocker] отсутствует проверка, которая не позволяет валидатору дважды голосовать за одно и то же обновление. Злонамеренный валидатор может воспользоваться этим, проголосовав несколько раз за одно и то же обновление, эффективно умножая свое количество голосов и потенциально склоняя голосование в пользу недействительного или вредоносного обновления».
Согласно отчету, Celer — это блокчейн на базе Cosmos, который поддерживает межцепочную связь.
После того, как Celer опубликовал части кода SGNv2 вне цепочки на GitHub, Jump рассмотрел сценарий.
Затем команда протокола была в частном порядке уведомлена об уязвимости, которая с тех пор была исправлена без злонамеренного использования.
Согласно отчету, уязвимость предоставит злонамеренному валидатору «широкий спектр возможностей», включая возможность подделки произвольных событий в цепочке, таких как передача моста, передача сообщений или размещение и делегирование основного контракта SGN Celer.
Снимок экрана отчета о вскрытии, показывающий способность валидаторов применять вредоносные обновления в сети Celer из-за ошибки. Источник: Jump Crypto
Однако у Celer есть меры защиты от полной кражи промежуточного фонда.
В докладе выделяются три механизма: задержка, вызванная промежуточным договором о переводах, превышающих определенную сумму; инструмент контроля объема, ограничивающий стоимость токенов, которые можно быстро извлечь; и экстренная остановка контрактов, инициируемая, когда злонамеренные переводы приводят к событию недостаточного обеспечения.
Даже с учетом мер безопасности протокол не будет полностью защищен. Согласно отчету Jump, ограничения на транзакции применяются только к одной цепочке и токену, и «из-за большого количества поддерживаемых токенов и цепочек кажется вероятным, что злоумышленник сможет украсть токены на сумму 30 миллионов долларов до того, как контракты будут остановлены», — говорится в отчете.
По данным DefiLlama, эта сумма составляет примерно 23% от текущей заблокированной стоимости Celer в $129,28 млн на момент написания статьи.
«Важно отметить, что эти встроенные механизмы могут защитить только мостовые контракты Celer. Далее в отчете говорится: «Приложения dApp, созданные на базе системы обмена сообщениями между цепочками Celer, по умолчанию будут полностью подвержены этим уязвимостям».
Celer предлагает вознаграждение в размере 2 миллионов долларов за обнаружение уязвимостей своего моста. Однако программы вознаграждений не покрывают уязвимости вне цепочки, такие как уязвимость сети SGNv2.
Компания Jump заявила, что обсуждала добавление сети SGNv2 в свою программу вознаграждения за обнаружение ошибок с помощью протокола. Команда Celer в настоящее время оценивает потенциальную компенсацию за отчет Jump.