Обновление Pectra сети Ethereum, состоявшееся 7 мая, представило новые возможности для повышения масштабируемости и функциональности смарт-аккаунтов, однако также выявило серьезную уязвимость, позволяющую злоумышленникам выводить средства из кошельков пользователей.
Новые функции обновления Pectra
Обновление Pectra включило в себя новую функцию, EIP-7702, которая вводит новый тип транзакции SetCode. Эта функция позволяет пользователям делегировать управление своим кошельком другому контракту, подписывая лишь сообщение, без необходимости подписывать транзакцию в блокчейне.
Уязвимость с использованием offchain подписей
Согласно словам Арды Усмана, аудитора смарт-контрактов, злоумышленник может отнять средства из кошелька, используя только offchain подписанное сообщение. Если злоумышленник получит такую подпись, он сможет изменить код кошелька и отправить средства себе, не требуя прямой подписи пользователя. "Это означает, что атака может быть выполнена через фишинговые сайты или другую обманную активность," - пояснил Усман.
Рекомендации по безопасности для пользователей
Эксперты рекомендуют пользователям не подписывать сообщения, которые они не понимают, и обращать внимание на предупреждения, касающиеся новых форматов подписей. EIP-7702 позволяет подписывать сообщения с chain_id = 0, что увеличивает риск повторного использования подписей на совместимых цепочках. Для защиты своих средств пользователи должны внимательно проверять делегированные запросы и учитывать, что даже аппаратные кошельки теперь подвержены этим угрозам.
Обновление Pectra вносит значительные улучшения в функциональность Ethereum, но также открывает новые потенциальные угрозы для безопасности. Пользователи должны быть особенно внимательны и соблюдать осторожность при обработке новых типов транзакций.