Механизм, позволяющий обычному адресу Ethereum временно вести себя как смарт-контракт, в первые месяцы работы использовали в основном атакующие. По данным исследования, представленного на симпозиуме USENIX Security, 63% проанализированных транзакций делегирования по EIP-7702 связаны со злонамеренной активностью.
Коротко
- Речь о механизме делегирования EIP-7702, появившемся в сети вместе с обновлением Pectra.
- Исследователи нашли 924 вредоносных контрактных аккаунта в семи сетях.
- Подавляющее большинство делегирований использует один и тот же код автоматического вывода средств.
- Атака работает против адресов, приватный ключ которых уже скомпрометирован, а не взламывает сам механизм.
- Единой оценки ущерба нет: разные работы считают по разным выборкам и активам.
Что делает этот механизм?
До появления EIP-7702 обычный адрес и смарт-контракт были разными сущностями: первый умеет только подписывать транзакции, второй — исполнять логику. Новый механизм позволяет адресу временно делегировать своё поведение коду, то есть на время получить возможности смарт-кошелька: оплату комиссии другим токеном, пакетные операции, ограничения по расходам.
Идея полезная, и именно её ждали разработчики кошельков. Но делегирование — это доверенность, и всё зависит от того, кому она выдана.
Как устроена атака?
Схема неожиданно приземлённая. Атакующий берёт адрес, приватный ключ которого уже утёк, — таких в сети тысячи после старых фишинговых кампаний. Раньше с такого адреса просто выводили остаток. Теперь злоумышленник оформляет делегирование на свой контракт, и тот автоматически забирает всё, что на адрес приходит.
Получается автоматическая ловушка: владелец может не знать, что ключ скомпрометирован, и продолжать пользоваться адресом, а каждое поступление мгновенно уходит атакующему. Исследователи отмечают, что подавляющая часть таких делегирований использует идентичный код — то есть работает поставленный на поток инструмент, а не единичные умельцы.
Что именно посчитали
| Показатель | Значение |
|---|---|
| Доля вредоносных делегирований | 63% проанализированных транзакций |
| Вредоносных контрактных аккаунтов | 924 в семи сетях |
| Механика | автоматический вывод входящих средств с уже скомпрометированных адресов |
| Где представлено | симпозиум USENIX Security |
| Оценка ущерба | единой цифры нет, оценки зависят от выборки |
| Ограничение метода | часть работ считает только нативные монеты, без токенов и NFT |
Почему цифры ущерба расходятся?
Потому что считают разное. Одна работа оценивает потери по конкретным сценариям делегирования, другая — по широкой выборке рискованных адресов за десять лет и приходит к сумме порядка 574,8 млн долларов, но там учитываются не только случаи с новым механизмом. Отдельно известен эпизод, когда один пользователь потерял около 1,54 млн долларов в стейкнутых токенах и NFT.
Расхождение стоит держать в голове при чтении заголовков: если в одном материале ущерб исчисляется миллионами, а в другом сотнями миллионов, скорее всего, речь о разных выборках, а не о противоречии.
Что это значит для владельца кошелька
Практический вывод короткий: подпись делегирования нужно проверять так же строго, как разрешение на списание токенов, а при малейшем подозрении на утечку ключа адрес следует считать потерянным — переводы на него будут уходить атакующему автоматически.
И вот наблюдение, ради которого этот сюжет стоит отделить от обычных новостей про фишинг. Мы привыкли, что новая функция протокола сначала осваивается разработчиками, а злоупотребления приходят позже. Здесь порядок обратный: инструмент автоматизации первым делом освоила индустрия краж, потому что для неё выгода мгновенная и измеримая, а для обычного пользователя польза отложенная и требует поддержки кошельков. Это не аргумент против самого механизма — но хороший повод оценивать любые новые возможности сети по тому, кому они дают выигрыш быстрее. Схемы вроде поддельных AML-проверок и сетей из взломанных сайтов живут по той же логике.
Частые вопросы
Это уязвимость Ethereum?
Нет. Механизм работает как задумано; атака использует адреса, приватные ключи которых уже украдены другими способами.
Что такое делегирование по EIP-7702?
Возможность для обычного адреса временно исполнять код смарт-контракта — например, ради пакетных операций или оплаты комиссии токеном.
Как понять, что на моём адресе стоит делегирование?
Его видно в обозревателе блоков и в интерфейсах кошельков, поддерживающих новый стандарт. Незнакомое делегирование нужно отзывать.
Помогает ли аппаратный кошелёк?
Да, если ключ не покидал устройство. Но подпись делегирования пользователь всё равно подтверждает сам, поэтому читать запрос обязательно.
Сколько всего украдено?
Единой оценки нет. Разные исследования используют разные выборки и учитывают разные активы, поэтому суммы в публикациях расходятся.
Обсуждение
Добавить комментарий