Ethereum недавно прошел через обновление сети с форком Pectra, который добавил новые функции, улучшения и, конечно, уязвимости. Но вот беда — не прошло и часа после изменений, как пользователи начали бить тревогу по поводу одной новой угрозы: апрува транзакций. Один из пользователей в Telegram сразу написал: «Будьте осторожны, что подписываете… Одного подписанного сообщения достаточно, чтобы […]
Ethereum недавно прошел через обновление сети с форком Pectra, который добавил новые функции, улучшения и, конечно, уязвимости. Но вот беда — не прошло и часа после изменений, как пользователи начали бить тревогу по поводу одной новой угрозы: апрува транзакций.
Один из пользователей в Telegram сразу написал:
«Будьте осторожны, что подписываете… Одного подписанного сообщения достаточно, чтобы забрать все токены».
Еще один подтвердил, сказав:
«Подписал сообщение — и все, вы потеряли все!».
Сначала это звучало как простая паника, но вскоре стало ясно, что дело не в преувеличениях.
Обновление Pectra привнесло в систему Ethereum EIP-3074, в котором появились новые операционные коды — AUTH и AUTHCALL. Эти коды позволяют владельцам частных ключей делегировать свои полномочия смарт-контрактам. Звучит вроде бы как шаг к улучшению абстракции аккаунтов, но не все так радужно. Критики указывают, что это открывает новые уязвимости — хакеры могут забрать все активы из кошелька, если пользователь случайно делегирует управление своим ключом.
Авторы EIP-3074 попытались успокоить пользователей, заявив в посте на Binance, что «не знают о кошельках, которые позволяют подписывать сообщения с неправильными префиксами без предупреждения для пользователя«. Но вот в чем фишка: подписанные транзакции используют префикс 0x04. Разработчики надеются, что все крупные кошельки, такие как MetaMask, начнут явно предупреждать о сообщениях с таким префиксом, ведь такие подписи могут авторизовать не только обычные транзакции, но и множество выводов, включая возможное воровство.
Кроме того, обновление Pectra добавило еще один камень преткновения — EIP-7702, который повышает ставки еще больше. С помощью этой функции достаточно одного злонамеренного сообщения, чтобы временно делегировать полный доступ к аккаунту стороннему смарт-контракту. Если контракт окажется мошенническим, все активы — эфир, токены, NFTs — могут быть утеряны навсегда.
Сначала такие проблемы не возникали, так как внешние аккаунты не подвергались подобным уязвимостям. Но с появлением EIP-7702, теперь пользователи оказались уязвимы к атакам через сторонние смарт-контракты, которые могут нанести серьезный урон.
Тем не менее, несмотря на волны предупреждений в соцсетях, пока что не было зафиксировано ни одного успешного случая кражи средств с использованием этой уязвимости. Большинство крупных кошельков, включая MetaMask, были готовы к новому обновлению и добавили явные предупреждения о подписании транзакций с EIP-3074.