Запланированный апгрейд сети Ethereum под названием Constantinople был отложен на неопределенное время после обнаруженной критической уязвимости в одном из улучшений, сообщает CoinDesk.
Речь идет об уязвимости в EIP-1283, которая, как выявила компания по аудиту смарт-контрактов ChainSecurity, давала хакерам возможность похитить пользовательские средства.
В ходе состоявшейся во вторник видеоконференции с участием разработчиков Ethereum и других клиентов и проектов, работающих в сети, было принято решение временно отложить активацию хардфорка.
В частности, во встрече приняли участие Виталик Бутерин, разработчики Хадсон Джеймсон, Ник Джонсон и Эван ван Несс, а также релиз-менеджер Parity Афри Шоедон.
Обсуждая выявленную уязвимость, они согласились с тем, что устранить ее до назначенного времени хардфорка (около 04:00 UTC 17 января), будет невозможно.
Уязвимость, названная атакой повторного входа, позволяет атакующему множественное число раз войти в одну и ту же функцию и бесконечно выводить средства.
«Представьте, что мой контракт имеет функцию вызова другого контракта. Если я хакер и могу запустить эту функцию в то время как предыдущая по-прежнему выполняется, я получаю возможность вывода средств» — объяснил CTO аналитической фирмы CoinDesk Джоанес Эспаньол.
По его словам, это во многом напоминает уязвимости, которые летом 2016 года были обнаружена в The DAO.
Представители ChainSecurity также отметили, что до хардфорка Constantinople операции хранения данных в сети стоили 5000 единиц газа, что превышает 2300 единиц, обычно необходимые для вызова функций «передачи» и «отправки».
После апгрейда «грязные» операции хранения будут стоить 200 единиц газа, и атакующий контракт может использовать 2300 единиц газа, чтобы успешно манипулировать переменными уязвимых контрактов.
Новая дата хардфорка пока не определена.
Напомним, ранее глава по связям с общественностью Ethereum Foundation Хадсон Джеймсон заявил, что в преддверии Constantinople среди разработчиков преобладает «сдержанный оптимизм».
Источник: forklog.com