В коде хардфорка Ethereum Constantinople обнаружена очередная уязвимость

В коде хардфорка Ethereum Constantinople обнаружена очередная уязвимость

Проблема связана с новой функцией Create2, которая может заменить самоуничтожившийся смарт-контракт, попутно изменив указанные в нем правила.

Разработчики Ethereum Foundation сообщили о новой уязвимости в готовящемся к выпуску обновлении сети Constantinople. По данным издания Trustnodes, проблема затрагивает некоторые смарт-контракты с возможностью самоуничтожения.

Как пояснил один из разработчиков Джейсон Карвер (Jason Carver), проблема связана с новой функцией под названием Create2, которая может заменить самоуничтожившийся смарт-контракт, таким образом изменив указанные в нем правила, что потенциально может привести к утрате средств.

«Можно создать довольно безобидный контракт до Constantinople, такой, чтобы у него было два возможных исхода транзакции: {‘контракт существует’: ‘обменять токены’, ‘контракт самоуничтожается’: ‘израсходовать определенный объем газа’}. После Constantinople сценарии могут быть следующими: {‘контракт существует’: ‘обменять токены’, ‘контракт самоуничтожается’: ‘израсходовать определенный объем газа’, ‘заменить контракт’: ‘все предварительно одобренные для контракта ERC20-токены украдены’}», - отметил разработчик.

По его словам, в текущей версии протокола функция не представляет дополнительные риски, однако после обновления код может быть использован для хищения всех выделенных токенов смарт-контракта.

Разработчики порекомендовали пользователям внимательно изучать код смарт-контракта на предмет наличия функции самоуничтожения (без надлежащего периода неактивности) и если она есть, не взаимодействовать с ним.

Напомним, в январе нынешнего года разработчики Ethereum перенесли дату масштабного обновления Ethereum Constantinople из-за уязвимости, предоставлявшей возможность хищения средств пользователей.


Ваша приватность умирает красиво, но мы можем спасти её.

Присоединяйтесь к нам!