Серьезная консенсусная ошибка затронула более половины узлов сети Ethereum, в результате чего те узлы, на которых запущены более старые версии клиента Geth, отделились от основного блокчейна.
По словам разработчика Ethereum Мариуса ван дер Вейдена, неизвестное лицо или группа лиц воспользовались уязвимостью, затрагивающей более ранние версии Geth, то есть v1.10.7 или раннее.
It seems that someone found the bug we fixed in @go_ethereum v1.10.8 and exploited it causing all geth nodes with earlier versions to split from the network. If you are running v1.10.7 or earlier please update!!!
— MariusVanDerWijden (@vdWijden) August 27, 2021
Ван дер Вейден подчеркнул, что валидаторы должны произвести обновление своего ПО как можно скорее.
«Держитесь подальше от транзакций, если вы не уверены, что используете последнюю версию Geth», — также посоветовал основатель Yearn Finance Андре Кронье.
Разработчики Geth уже предупреждали пользователей о необходимости обновления, но отреагировали не все валидаторы. Согласно данным Ethernodes.org, 74,6% всех узлов Ethereum используют клиент Geth, но только 28,4% перешли на версию 1.10.8. Это означает, что примерно 53% всех узлов сети Ethereum работают с серьезной инфраструктурой ошибкой. Такая ситуация открывает возможности для атак с двойным расходованием средств. Исследователи идентифицировали адрес злоумышленников, которые успели воспользоваться ошибкой.
Сейчас узлы, на которых запущены старые версии Geth, не могут получить доступ к основной сети, но хэшрейт поддерживает самую длинную цепочку и сеть кажется стабильной
Хотя программные ошибки и ранее угрожали узлам Ethereum, этот инцидент, похоже, является одним из самых серьезных. В августе 2020 года примерно 12% узлов сети оказались неработоспособными после того, как ошибка скомпрометировала половину узлов клиента Parity и все узлы OpenEthereum.