Обновление Pectra в блокчейне и EIP-7702: как одна подпись может списать весь баланс
7 мая 2025 года сеть Ethereum успешно выполнила крупное обновление Pectra, включившее 11 важных улучшений (EIP). Среди них особое внимание привлекает EIP-7702, обещающий революцию в пользовательском опыте — но потенциально открывающий новые опасные уязвимости, способные привести к полной потере средств пользователей.
Что такое Pectra и EIP-7702?
Обновление Pectra объединяет хардфорк Prague на уровне исполнения и обновление Electra на уровне консенсуса. Это первое крупное обновление Ethereum с марта 2024 года (Dencun) и, возможно, самое функционально насыщенное за всю историю сети.
EIP-7702 — ключевое нововведение, которое многие эксперты назвали "величайшим UX-улучшением Ethereum". Это предложение позволяет обычным аккаунтам пользователей (EOA) временно функционировать как смарт-контракты, не требуя полной миграции на новый адрес. По сути, традиционные кошельки получают "суперспособности" смарт-контрактов.
Революционные возможности, которые открывает EIP-7702:
- Транзакции без газа: пользователи могут совершать операции с токенами USDC и другими активами, не имея ETH для оплаты комиссий
- Пакетные транзакции: выполнение нескольких операций одной подписью, снижая затраты на газ до 30%
- Поддержка passkey: возможность подписывать транзакции через биометрию или альтернативные методы
- Упрощённый мультисиг: создание кошельков с множественной подписью на базе существующего адреса
Тёмная сторона EIP-7702: уязвимости безопасности
Несмотря на все преимущества, EIP-7702 вводит серьезные риски безопасности, о которых должен знать каждый пользователь Ethereum.
Подпись, способная уничтожить всё
Главная опасность EIP-7702 заключается в том, что пользователь может делегировать полный контроль над своим кошельком смарт-контракту через специальную "подпись авторизации". Если эта подпись попадёт в руки злоумышленников или пользователь неосознанно подпишет делегирование вредоносному контракту, последствия могут быть катастрофическими.
Недавний взлом биржи ByBit наглядно продемонстрировал опасность: хакеры получили делегирование контроля над кошельком, обошли механизмы безопасности мультисига и вывели все средства одной транзакцией.
Почему риски так высоки:
- Полный контроль через делегирование: Смарт-контракт, которому делегированы полномочия, имеет неограниченный доступ к средствам EOA. Как отмечают эксперты из Fireblocks: "Без надлежащей безопасности в операциях с 7702-кошельками, организации рискуют тем, что злоумышленники используют нечёткие подписи или непонимание технологии".
- Проблемы инициализации: Большинство существующих смарт-контрактов кошельков не адаптированы к EIP-7702, что делает их уязвимыми для атак типа "race condition". Исследователи из ChainCatcher предупреждают: "Боты могут отслеживать авторизационные транзакции в мемпуле и отправлять свои транзакции авторизации заранее, вызывая функцию initialize для захвата прав на контракт кошелька".
- Уязвимости кода: Если делегированный контракт не имеет надлежащего контроля доступа, атакующие могут выполнить произвольную логику от имени EOA. Как показывает пример from Nethermind: "Если контракт делегирования не имеет должных проверок доступа, злоумышленники могут выполнять произвольную логику от имени EOA, например, выводить токены из кошелька".
- Риск приватного ключа: В отличие от полноценных смарт-контрактов, EOA с EIP-7702 сохраняет зависимость от приватного ключа. Safe отмечает критичную проблему: "Приватный ключ EOA сохраняет полный контроль над аккаунтом, действуя как бэкдор, который может обойти функциональность Смарт-аккаунта".
Как защитить свои активы
Чтобы безопасно использовать функции EIP-7702, следуйте этим рекомендациям:
- Делегируйте только проверенным контрактам: Используйте только смарт-контракты, специально разработанные для EIP-7702, прошедшие полноценный аудит безопасности.
- Понимайте риски: Подписание авторизации по EIP-7702 должно рассматриваться как операция высокого риска, аналогичная передаче приватного ключа.
- Ограничьте риски: Не храните все средства на кошельках с активированным EIP-7702. Используйте архитектуру hot/warm/cold кошельков.
- Внимательно проверяйте подписи: Обращайте особое внимание на новые типы транзакций в интерфейсе кошелька.
- Используйте постепенное внедрение: Начните с ограниченного функционала EIP-7702, добавляя новые возможности по мере проверки их безопасности.
Заключение
EIP-7702 представляет собой важнейший шаг в эволюции пользовательского опыта Ethereum, но с большими возможностями приходят и большие риски. Крупнейшие кошельки, включая MetaMask, Trust Wallet и Ambire, уже внедрили поддержку EIP-7702, сделав эту технологию доступной миллионам пользователей.
Однако по мере распространения этой технологии можно ожидать и роста числа атак, нацеленных на уязвимости в реализации и недостаточное понимание рисков пользователями. Как сообщество, мы должны уделять столько же внимания безопасности, сколько и улучшению UX, чтобы революция в пользовательском опыте не обернулась катастрофой для многих пользователей.
Следите за новостями безопасности в мире криптовалют и о разбработке web3 в Telegram-канале @one_eyes